From f47aa4d81a940ef5f9e22e63e0c9aac93c5744f3 Mon Sep 17 00:00:00 2001 From: Andrej730 Date: Wed, 19 Aug 2026 19:16:22 +0500 Subject: [PATCH] Manually update other schemas --- src/ifcparse/schemas/Ifc4x3.cpp | 2366 +++++++------- src/ifcparse/schemas/Ifc4x3.h | 4380 +++++++++++++------------- src/ifcparse/schemas/Ifc4x3_add1.cpp | 2364 +++++++------- src/ifcparse/schemas/Ifc4x3_add1.h | 4372 ++++++++++++------------- src/ifcparse/schemas/Ifc4x3_tc1.cpp | 2356 +++++++------- src/ifcparse/schemas/Ifc4x3_tc1.h | 4364 ++++++++++++------------- 6 files changed, 10101 insertions(+), 10101 deletions(-) diff --git a/src/ifcparse/schemas/Ifc4x3.cpp b/src/ifcparse/schemas/Ifc4x3.cpp index 0daf872670..286a7f09a0 100644 --- a/src/ifcparse/schemas/Ifc4x3.cpp +++ b/src/ifcparse/schemas/Ifc4x3.cpp @@ -44,7 +44,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcActionRequestTypeEnum::Class() /* Ifc4x3::IfcActionRequestTypeEnum::IfcActionRequestTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcActionRequestTypeEnum::IfcActionRequestTypeEnum(Value v) { @@ -73,7 +73,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcActionSourceTypeEnum::Class() { /* Ifc4x3::IfcActionSourceTypeEnum::IfcActionSourceTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcActionSourceTypeEnum::IfcActionSourceTypeEnum(Value v) { @@ -102,7 +102,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcActionTypeEnum::Class() { retur /* Ifc4x3::IfcActionTypeEnum::IfcActionTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcActionTypeEnum::IfcActionTypeEnum(Value v) { @@ -131,7 +131,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcActuatorTypeEnum::Class() { ret /* Ifc4x3::IfcActuatorTypeEnum::IfcActuatorTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcActuatorTypeEnum::IfcActuatorTypeEnum(Value v) { @@ -160,7 +160,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcAddressTypeEnum::Class() { retu /* Ifc4x3::IfcAddressTypeEnum::IfcAddressTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcAddressTypeEnum::IfcAddressTypeEnum(Value v) { @@ -189,7 +189,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcAirTerminalBoxTypeEnum::Class() /* Ifc4x3::IfcAirTerminalBoxTypeEnum::IfcAirTerminalBoxTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcAirTerminalBoxTypeEnum::IfcAirTerminalBoxTypeEnum(Value v) { @@ -218,7 +218,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcAirTerminalTypeEnum::Class() { /* Ifc4x3::IfcAirTerminalTypeEnum::IfcAirTerminalTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcAirTerminalTypeEnum::IfcAirTerminalTypeEnum(Value v) { @@ -247,7 +247,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcAirToAirHeatRecoveryTypeEnum::C /* Ifc4x3::IfcAirToAirHeatRecoveryTypeEnum::IfcAirToAirHeatRecoveryTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcAirToAirHeatRecoveryTypeEnum::IfcAirToAirHeatRecoveryTypeEnum(Value v) { @@ -276,7 +276,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcAlarmTypeEnum::Class() { return /* Ifc4x3::IfcAlarmTypeEnum::IfcAlarmTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcAlarmTypeEnum::IfcAlarmTypeEnum(Value v) { @@ -305,7 +305,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcAlignmentCantSegmentTypeEnum::C /* Ifc4x3::IfcAlignmentCantSegmentTypeEnum::IfcAlignmentCantSegmentTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcAlignmentCantSegmentTypeEnum::IfcAlignmentCantSegmentTypeEnum(Value v) { @@ -334,7 +334,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcAlignmentHorizontalSegmentTypeE /* Ifc4x3::IfcAlignmentHorizontalSegmentTypeEnum::IfcAlignmentHorizontalSegmentTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcAlignmentHorizontalSegmentTypeEnum::IfcAlignmentHorizontalSegmentTypeEnum(Value v) { @@ -363,7 +363,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcAlignmentTypeEnum::Class() { re /* Ifc4x3::IfcAlignmentTypeEnum::IfcAlignmentTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcAlignmentTypeEnum::IfcAlignmentTypeEnum(Value v) { @@ -392,7 +392,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcAlignmentVerticalSegmentTypeEnu /* Ifc4x3::IfcAlignmentVerticalSegmentTypeEnum::IfcAlignmentVerticalSegmentTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcAlignmentVerticalSegmentTypeEnum::IfcAlignmentVerticalSegmentTypeEnum(Value v) { @@ -421,7 +421,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcAnalysisModelTypeEnum::Class() /* Ifc4x3::IfcAnalysisModelTypeEnum::IfcAnalysisModelTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcAnalysisModelTypeEnum::IfcAnalysisModelTypeEnum(Value v) { @@ -450,7 +450,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcAnalysisTheoryTypeEnum::Class() /* Ifc4x3::IfcAnalysisTheoryTypeEnum::IfcAnalysisTheoryTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcAnalysisTheoryTypeEnum::IfcAnalysisTheoryTypeEnum(Value v) { @@ -479,7 +479,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcAnnotationTypeEnum::Class() { r /* Ifc4x3::IfcAnnotationTypeEnum::IfcAnnotationTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcAnnotationTypeEnum::IfcAnnotationTypeEnum(Value v) { @@ -508,7 +508,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcArithmeticOperatorEnum::Class() /* Ifc4x3::IfcArithmeticOperatorEnum::IfcArithmeticOperatorEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcArithmeticOperatorEnum::IfcArithmeticOperatorEnum(Value v) { @@ -537,7 +537,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcAssemblyPlaceEnum::Class() { re /* Ifc4x3::IfcAssemblyPlaceEnum::IfcAssemblyPlaceEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcAssemblyPlaceEnum::IfcAssemblyPlaceEnum(Value v) { @@ -566,7 +566,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcAudioVisualApplianceTypeEnum::C /* Ifc4x3::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceTypeEnum(Value v) { @@ -595,7 +595,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcBSplineCurveForm::Class() { ret /* Ifc4x3::IfcBSplineCurveForm::IfcBSplineCurveForm(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcBSplineCurveForm::IfcBSplineCurveForm(Value v) { @@ -624,7 +624,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcBSplineSurfaceForm::Class() { r /* Ifc4x3::IfcBSplineSurfaceForm::IfcBSplineSurfaceForm(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcBSplineSurfaceForm::IfcBSplineSurfaceForm(Value v) { @@ -653,7 +653,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcBeamTypeEnum::Class() { return /* Ifc4x3::IfcBeamTypeEnum::IfcBeamTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcBeamTypeEnum::IfcBeamTypeEnum(Value v) { @@ -682,7 +682,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcBearingTypeDisplacementEnum::Cl /* Ifc4x3::IfcBearingTypeDisplacementEnum::IfcBearingTypeDisplacementEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcBearingTypeDisplacementEnum::IfcBearingTypeDisplacementEnum(Value v) { @@ -711,7 +711,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcBearingTypeEnum::Class() { retu /* Ifc4x3::IfcBearingTypeEnum::IfcBearingTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcBearingTypeEnum::IfcBearingTypeEnum(Value v) { @@ -740,7 +740,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcBenchmarkEnum::Class() { return /* Ifc4x3::IfcBenchmarkEnum::IfcBenchmarkEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcBenchmarkEnum::IfcBenchmarkEnum(Value v) { @@ -769,7 +769,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcBoilerTypeEnum::Class() { retur /* Ifc4x3::IfcBoilerTypeEnum::IfcBoilerTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcBoilerTypeEnum::IfcBoilerTypeEnum(Value v) { @@ -798,7 +798,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcBooleanOperator::Class() { retu /* Ifc4x3::IfcBooleanOperator::IfcBooleanOperator(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcBooleanOperator::IfcBooleanOperator(Value v) { @@ -827,7 +827,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcBridgePartTypeEnum::Class() { r /* Ifc4x3::IfcBridgePartTypeEnum::IfcBridgePartTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcBridgePartTypeEnum::IfcBridgePartTypeEnum(Value v) { @@ -856,7 +856,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcBridgeTypeEnum::Class() { retur /* Ifc4x3::IfcBridgeTypeEnum::IfcBridgeTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcBridgeTypeEnum::IfcBridgeTypeEnum(Value v) { @@ -885,7 +885,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcBuildingElementPartTypeEnum::Cl /* Ifc4x3::IfcBuildingElementPartTypeEnum::IfcBuildingElementPartTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcBuildingElementPartTypeEnum::IfcBuildingElementPartTypeEnum(Value v) { @@ -914,7 +914,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcBuildingElementProxyTypeEnum::C /* Ifc4x3::IfcBuildingElementProxyTypeEnum::IfcBuildingElementProxyTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcBuildingElementProxyTypeEnum::IfcBuildingElementProxyTypeEnum(Value v) { @@ -943,7 +943,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcBuildingSystemTypeEnum::Class() /* Ifc4x3::IfcBuildingSystemTypeEnum::IfcBuildingSystemTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcBuildingSystemTypeEnum::IfcBuildingSystemTypeEnum(Value v) { @@ -972,7 +972,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcBuiltSystemTypeEnum::Class() { /* Ifc4x3::IfcBuiltSystemTypeEnum::IfcBuiltSystemTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcBuiltSystemTypeEnum::IfcBuiltSystemTypeEnum(Value v) { @@ -1001,7 +1001,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcBurnerTypeEnum::Class() { retur /* Ifc4x3::IfcBurnerTypeEnum::IfcBurnerTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcBurnerTypeEnum::IfcBurnerTypeEnum(Value v) { @@ -1030,7 +1030,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcCableCarrierFittingTypeEnum::Cl /* Ifc4x3::IfcCableCarrierFittingTypeEnum::IfcCableCarrierFittingTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcCableCarrierFittingTypeEnum::IfcCableCarrierFittingTypeEnum(Value v) { @@ -1059,7 +1059,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcCableCarrierSegmentTypeEnum::Cl /* Ifc4x3::IfcCableCarrierSegmentTypeEnum::IfcCableCarrierSegmentTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcCableCarrierSegmentTypeEnum::IfcCableCarrierSegmentTypeEnum(Value v) { @@ -1088,7 +1088,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcCableFittingTypeEnum::Class() { /* Ifc4x3::IfcCableFittingTypeEnum::IfcCableFittingTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcCableFittingTypeEnum::IfcCableFittingTypeEnum(Value v) { @@ -1117,7 +1117,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcCableSegmentTypeEnum::Class() { /* Ifc4x3::IfcCableSegmentTypeEnum::IfcCableSegmentTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcCableSegmentTypeEnum::IfcCableSegmentTypeEnum(Value v) { @@ -1146,7 +1146,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcCaissonFoundationTypeEnum::Clas /* Ifc4x3::IfcCaissonFoundationTypeEnum::IfcCaissonFoundationTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcCaissonFoundationTypeEnum::IfcCaissonFoundationTypeEnum(Value v) { @@ -1175,7 +1175,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcChangeActionEnum::Class() { ret /* Ifc4x3::IfcChangeActionEnum::IfcChangeActionEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcChangeActionEnum::IfcChangeActionEnum(Value v) { @@ -1204,7 +1204,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcChillerTypeEnum::Class() { retu /* Ifc4x3::IfcChillerTypeEnum::IfcChillerTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcChillerTypeEnum::IfcChillerTypeEnum(Value v) { @@ -1233,7 +1233,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcChimneyTypeEnum::Class() { retu /* Ifc4x3::IfcChimneyTypeEnum::IfcChimneyTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcChimneyTypeEnum::IfcChimneyTypeEnum(Value v) { @@ -1262,7 +1262,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcCoilTypeEnum::Class() { return /* Ifc4x3::IfcCoilTypeEnum::IfcCoilTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcCoilTypeEnum::IfcCoilTypeEnum(Value v) { @@ -1291,7 +1291,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcColumnTypeEnum::Class() { retur /* Ifc4x3::IfcColumnTypeEnum::IfcColumnTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcColumnTypeEnum::IfcColumnTypeEnum(Value v) { @@ -1320,7 +1320,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcCommunicationsApplianceTypeEnum /* Ifc4x3::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceTypeEnum(Value v) { @@ -1349,7 +1349,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcComplexPropertyTemplateTypeEnum /* Ifc4x3::IfcComplexPropertyTemplateTypeEnum::IfcComplexPropertyTemplateTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcComplexPropertyTemplateTypeEnum::IfcComplexPropertyTemplateTypeEnum(Value v) { @@ -1378,7 +1378,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcCompressorTypeEnum::Class() { r /* Ifc4x3::IfcCompressorTypeEnum::IfcCompressorTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcCompressorTypeEnum::IfcCompressorTypeEnum(Value v) { @@ -1407,7 +1407,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcCondenserTypeEnum::Class() { re /* Ifc4x3::IfcCondenserTypeEnum::IfcCondenserTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcCondenserTypeEnum::IfcCondenserTypeEnum(Value v) { @@ -1436,7 +1436,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcConnectionTypeEnum::Class() { r /* Ifc4x3::IfcConnectionTypeEnum::IfcConnectionTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcConnectionTypeEnum::IfcConnectionTypeEnum(Value v) { @@ -1465,7 +1465,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcConstraintEnum::Class() { retur /* Ifc4x3::IfcConstraintEnum::IfcConstraintEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcConstraintEnum::IfcConstraintEnum(Value v) { @@ -1494,7 +1494,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcConstructionEquipmentResourceTy /* Ifc4x3::IfcConstructionEquipmentResourceTypeEnum::IfcConstructionEquipmentResourceTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcConstructionEquipmentResourceTypeEnum::IfcConstructionEquipmentResourceTypeEnum(Value v) { @@ -1523,7 +1523,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcConstructionMaterialResourceTyp /* Ifc4x3::IfcConstructionMaterialResourceTypeEnum::IfcConstructionMaterialResourceTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcConstructionMaterialResourceTypeEnum::IfcConstructionMaterialResourceTypeEnum(Value v) { @@ -1552,7 +1552,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcConstructionProductResourceType /* Ifc4x3::IfcConstructionProductResourceTypeEnum::IfcConstructionProductResourceTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcConstructionProductResourceTypeEnum::IfcConstructionProductResourceTypeEnum(Value v) { @@ -1581,7 +1581,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcControllerTypeEnum::Class() { r /* Ifc4x3::IfcControllerTypeEnum::IfcControllerTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcControllerTypeEnum::IfcControllerTypeEnum(Value v) { @@ -1610,7 +1610,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcConveyorSegmentTypeEnum::Class( /* Ifc4x3::IfcConveyorSegmentTypeEnum::IfcConveyorSegmentTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcConveyorSegmentTypeEnum::IfcConveyorSegmentTypeEnum(Value v) { @@ -1639,7 +1639,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcCooledBeamTypeEnum::Class() { r /* Ifc4x3::IfcCooledBeamTypeEnum::IfcCooledBeamTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcCooledBeamTypeEnum::IfcCooledBeamTypeEnum(Value v) { @@ -1668,7 +1668,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcCoolingTowerTypeEnum::Class() { /* Ifc4x3::IfcCoolingTowerTypeEnum::IfcCoolingTowerTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcCoolingTowerTypeEnum::IfcCoolingTowerTypeEnum(Value v) { @@ -1697,7 +1697,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcCostItemTypeEnum::Class() { ret /* Ifc4x3::IfcCostItemTypeEnum::IfcCostItemTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcCostItemTypeEnum::IfcCostItemTypeEnum(Value v) { @@ -1726,7 +1726,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcCostScheduleTypeEnum::Class() { /* Ifc4x3::IfcCostScheduleTypeEnum::IfcCostScheduleTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcCostScheduleTypeEnum::IfcCostScheduleTypeEnum(Value v) { @@ -1755,7 +1755,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcCourseTypeEnum::Class() { retur /* Ifc4x3::IfcCourseTypeEnum::IfcCourseTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcCourseTypeEnum::IfcCourseTypeEnum(Value v) { @@ -1784,7 +1784,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcCoveringTypeEnum::Class() { ret /* Ifc4x3::IfcCoveringTypeEnum::IfcCoveringTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcCoveringTypeEnum::IfcCoveringTypeEnum(Value v) { @@ -1813,7 +1813,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcCrewResourceTypeEnum::Class() { /* Ifc4x3::IfcCrewResourceTypeEnum::IfcCrewResourceTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcCrewResourceTypeEnum::IfcCrewResourceTypeEnum(Value v) { @@ -1842,7 +1842,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcCurtainWallTypeEnum::Class() { /* Ifc4x3::IfcCurtainWallTypeEnum::IfcCurtainWallTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcCurtainWallTypeEnum::IfcCurtainWallTypeEnum(Value v) { @@ -1871,7 +1871,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcCurveInterpolationEnum::Class() /* Ifc4x3::IfcCurveInterpolationEnum::IfcCurveInterpolationEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcCurveInterpolationEnum::IfcCurveInterpolationEnum(Value v) { @@ -1900,7 +1900,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcDamperTypeEnum::Class() { retur /* Ifc4x3::IfcDamperTypeEnum::IfcDamperTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcDamperTypeEnum::IfcDamperTypeEnum(Value v) { @@ -1929,7 +1929,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcDataOriginEnum::Class() { retur /* Ifc4x3::IfcDataOriginEnum::IfcDataOriginEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcDataOriginEnum::IfcDataOriginEnum(Value v) { @@ -1958,7 +1958,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcDerivedUnitEnum::Class() { retu /* Ifc4x3::IfcDerivedUnitEnum::IfcDerivedUnitEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcDerivedUnitEnum::IfcDerivedUnitEnum(Value v) { @@ -1987,7 +1987,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcDirectionSenseEnum::Class() { r /* Ifc4x3::IfcDirectionSenseEnum::IfcDirectionSenseEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcDirectionSenseEnum::IfcDirectionSenseEnum(Value v) { @@ -2016,7 +2016,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcDiscreteAccessoryTypeEnum::Clas /* Ifc4x3::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryTypeEnum(Value v) { @@ -2045,7 +2045,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcDistributionBoardTypeEnum::Clas /* Ifc4x3::IfcDistributionBoardTypeEnum::IfcDistributionBoardTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcDistributionBoardTypeEnum::IfcDistributionBoardTypeEnum(Value v) { @@ -2074,7 +2074,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcDistributionChamberElementTypeE /* Ifc4x3::IfcDistributionChamberElementTypeEnum::IfcDistributionChamberElementTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcDistributionChamberElementTypeEnum::IfcDistributionChamberElementTypeEnum(Value v) { @@ -2103,7 +2103,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcDistributionPortTypeEnum::Class /* Ifc4x3::IfcDistributionPortTypeEnum::IfcDistributionPortTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcDistributionPortTypeEnum::IfcDistributionPortTypeEnum(Value v) { @@ -2132,7 +2132,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcDistributionSystemEnum::Class() /* Ifc4x3::IfcDistributionSystemEnum::IfcDistributionSystemEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcDistributionSystemEnum::IfcDistributionSystemEnum(Value v) { @@ -2161,7 +2161,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcDocumentConfidentialityEnum::Cl /* Ifc4x3::IfcDocumentConfidentialityEnum::IfcDocumentConfidentialityEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcDocumentConfidentialityEnum::IfcDocumentConfidentialityEnum(Value v) { @@ -2190,7 +2190,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcDocumentStatusEnum::Class() { r /* Ifc4x3::IfcDocumentStatusEnum::IfcDocumentStatusEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcDocumentStatusEnum::IfcDocumentStatusEnum(Value v) { @@ -2219,7 +2219,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcDoorPanelOperationEnum::Class() /* Ifc4x3::IfcDoorPanelOperationEnum::IfcDoorPanelOperationEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcDoorPanelOperationEnum::IfcDoorPanelOperationEnum(Value v) { @@ -2248,7 +2248,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcDoorPanelPositionEnum::Class() /* Ifc4x3::IfcDoorPanelPositionEnum::IfcDoorPanelPositionEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcDoorPanelPositionEnum::IfcDoorPanelPositionEnum(Value v) { @@ -2277,7 +2277,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcDoorStyleConstructionEnum::Clas /* Ifc4x3::IfcDoorStyleConstructionEnum::IfcDoorStyleConstructionEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcDoorStyleConstructionEnum::IfcDoorStyleConstructionEnum(Value v) { @@ -2306,7 +2306,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcDoorStyleOperationEnum::Class() /* Ifc4x3::IfcDoorStyleOperationEnum::IfcDoorStyleOperationEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcDoorStyleOperationEnum::IfcDoorStyleOperationEnum(Value v) { @@ -2335,7 +2335,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcDoorTypeEnum::Class() { return /* Ifc4x3::IfcDoorTypeEnum::IfcDoorTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcDoorTypeEnum::IfcDoorTypeEnum(Value v) { @@ -2364,7 +2364,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcDoorTypeOperationEnum::Class() /* Ifc4x3::IfcDoorTypeOperationEnum::IfcDoorTypeOperationEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcDoorTypeOperationEnum::IfcDoorTypeOperationEnum(Value v) { @@ -2393,7 +2393,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcDuctFittingTypeEnum::Class() { /* Ifc4x3::IfcDuctFittingTypeEnum::IfcDuctFittingTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcDuctFittingTypeEnum::IfcDuctFittingTypeEnum(Value v) { @@ -2422,7 +2422,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcDuctSegmentTypeEnum::Class() { /* Ifc4x3::IfcDuctSegmentTypeEnum::IfcDuctSegmentTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcDuctSegmentTypeEnum::IfcDuctSegmentTypeEnum(Value v) { @@ -2451,7 +2451,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcDuctSilencerTypeEnum::Class() { /* Ifc4x3::IfcDuctSilencerTypeEnum::IfcDuctSilencerTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcDuctSilencerTypeEnum::IfcDuctSilencerTypeEnum(Value v) { @@ -2480,7 +2480,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcEarthworksCutTypeEnum::Class() /* Ifc4x3::IfcEarthworksCutTypeEnum::IfcEarthworksCutTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcEarthworksCutTypeEnum::IfcEarthworksCutTypeEnum(Value v) { @@ -2509,7 +2509,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcEarthworksFillTypeEnum::Class() /* Ifc4x3::IfcEarthworksFillTypeEnum::IfcEarthworksFillTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcEarthworksFillTypeEnum::IfcEarthworksFillTypeEnum(Value v) { @@ -2538,7 +2538,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcElectricApplianceTypeEnum::Clas /* Ifc4x3::IfcElectricApplianceTypeEnum::IfcElectricApplianceTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcElectricApplianceTypeEnum::IfcElectricApplianceTypeEnum(Value v) { @@ -2567,7 +2567,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcElectricDistributionBoardTypeEn /* Ifc4x3::IfcElectricDistributionBoardTypeEnum::IfcElectricDistributionBoardTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcElectricDistributionBoardTypeEnum::IfcElectricDistributionBoardTypeEnum(Value v) { @@ -2596,7 +2596,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcElectricFlowStorageDeviceTypeEn /* Ifc4x3::IfcElectricFlowStorageDeviceTypeEnum::IfcElectricFlowStorageDeviceTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcElectricFlowStorageDeviceTypeEnum::IfcElectricFlowStorageDeviceTypeEnum(Value v) { @@ -2625,7 +2625,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcElectricFlowTreatmentDeviceType /* Ifc4x3::IfcElectricFlowTreatmentDeviceTypeEnum::IfcElectricFlowTreatmentDeviceTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcElectricFlowTreatmentDeviceTypeEnum::IfcElectricFlowTreatmentDeviceTypeEnum(Value v) { @@ -2654,7 +2654,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcElectricGeneratorTypeEnum::Clas /* Ifc4x3::IfcElectricGeneratorTypeEnum::IfcElectricGeneratorTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcElectricGeneratorTypeEnum::IfcElectricGeneratorTypeEnum(Value v) { @@ -2683,7 +2683,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcElectricMotorTypeEnum::Class() /* Ifc4x3::IfcElectricMotorTypeEnum::IfcElectricMotorTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcElectricMotorTypeEnum::IfcElectricMotorTypeEnum(Value v) { @@ -2712,7 +2712,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcElectricTimeControlTypeEnum::Cl /* Ifc4x3::IfcElectricTimeControlTypeEnum::IfcElectricTimeControlTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcElectricTimeControlTypeEnum::IfcElectricTimeControlTypeEnum(Value v) { @@ -2741,7 +2741,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcElementAssemblyTypeEnum::Class( /* Ifc4x3::IfcElementAssemblyTypeEnum::IfcElementAssemblyTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcElementAssemblyTypeEnum::IfcElementAssemblyTypeEnum(Value v) { @@ -2770,7 +2770,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcElementCompositionEnum::Class() /* Ifc4x3::IfcElementCompositionEnum::IfcElementCompositionEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcElementCompositionEnum::IfcElementCompositionEnum(Value v) { @@ -2799,7 +2799,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcEngineTypeEnum::Class() { retur /* Ifc4x3::IfcEngineTypeEnum::IfcEngineTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcEngineTypeEnum::IfcEngineTypeEnum(Value v) { @@ -2828,7 +2828,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcEvaporativeCoolerTypeEnum::Clas /* Ifc4x3::IfcEvaporativeCoolerTypeEnum::IfcEvaporativeCoolerTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcEvaporativeCoolerTypeEnum::IfcEvaporativeCoolerTypeEnum(Value v) { @@ -2857,7 +2857,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcEvaporatorTypeEnum::Class() { r /* Ifc4x3::IfcEvaporatorTypeEnum::IfcEvaporatorTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcEvaporatorTypeEnum::IfcEvaporatorTypeEnum(Value v) { @@ -2886,7 +2886,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcEventTriggerTypeEnum::Class() { /* Ifc4x3::IfcEventTriggerTypeEnum::IfcEventTriggerTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcEventTriggerTypeEnum::IfcEventTriggerTypeEnum(Value v) { @@ -2915,7 +2915,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcEventTypeEnum::Class() { return /* Ifc4x3::IfcEventTypeEnum::IfcEventTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcEventTypeEnum::IfcEventTypeEnum(Value v) { @@ -2944,7 +2944,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcExternalSpatialElementTypeEnum: /* Ifc4x3::IfcExternalSpatialElementTypeEnum::IfcExternalSpatialElementTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcExternalSpatialElementTypeEnum::IfcExternalSpatialElementTypeEnum(Value v) { @@ -2973,7 +2973,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcFacilityPartCommonTypeEnum::Cla /* Ifc4x3::IfcFacilityPartCommonTypeEnum::IfcFacilityPartCommonTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcFacilityPartCommonTypeEnum::IfcFacilityPartCommonTypeEnum(Value v) { @@ -3002,7 +3002,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcFacilityUsageEnum::Class() { re /* Ifc4x3::IfcFacilityUsageEnum::IfcFacilityUsageEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcFacilityUsageEnum::IfcFacilityUsageEnum(Value v) { @@ -3031,7 +3031,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcFanTypeEnum::Class() { return * /* Ifc4x3::IfcFanTypeEnum::IfcFanTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcFanTypeEnum::IfcFanTypeEnum(Value v) { @@ -3060,7 +3060,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcFastenerTypeEnum::Class() { ret /* Ifc4x3::IfcFastenerTypeEnum::IfcFastenerTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcFastenerTypeEnum::IfcFastenerTypeEnum(Value v) { @@ -3089,7 +3089,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcFilterTypeEnum::Class() { retur /* Ifc4x3::IfcFilterTypeEnum::IfcFilterTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcFilterTypeEnum::IfcFilterTypeEnum(Value v) { @@ -3118,7 +3118,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcFireSuppressionTerminalTypeEnum /* Ifc4x3::IfcFireSuppressionTerminalTypeEnum::IfcFireSuppressionTerminalTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcFireSuppressionTerminalTypeEnum::IfcFireSuppressionTerminalTypeEnum(Value v) { @@ -3147,7 +3147,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcFlowDirectionEnum::Class() { re /* Ifc4x3::IfcFlowDirectionEnum::IfcFlowDirectionEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcFlowDirectionEnum::IfcFlowDirectionEnum(Value v) { @@ -3176,7 +3176,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcFlowInstrumentTypeEnum::Class() /* Ifc4x3::IfcFlowInstrumentTypeEnum::IfcFlowInstrumentTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcFlowInstrumentTypeEnum::IfcFlowInstrumentTypeEnum(Value v) { @@ -3205,7 +3205,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcFlowMeterTypeEnum::Class() { re /* Ifc4x3::IfcFlowMeterTypeEnum::IfcFlowMeterTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcFlowMeterTypeEnum::IfcFlowMeterTypeEnum(Value v) { @@ -3234,7 +3234,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcFootingTypeEnum::Class() { retu /* Ifc4x3::IfcFootingTypeEnum::IfcFootingTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcFootingTypeEnum::IfcFootingTypeEnum(Value v) { @@ -3263,7 +3263,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcFurnitureTypeEnum::Class() { re /* Ifc4x3::IfcFurnitureTypeEnum::IfcFurnitureTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcFurnitureTypeEnum::IfcFurnitureTypeEnum(Value v) { @@ -3292,7 +3292,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcGeographicElementTypeEnum::Clas /* Ifc4x3::IfcGeographicElementTypeEnum::IfcGeographicElementTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcGeographicElementTypeEnum::IfcGeographicElementTypeEnum(Value v) { @@ -3321,7 +3321,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcGeometricProjectionEnum::Class( /* Ifc4x3::IfcGeometricProjectionEnum::IfcGeometricProjectionEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcGeometricProjectionEnum::IfcGeometricProjectionEnum(Value v) { @@ -3350,7 +3350,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcGeotechnicalStratumTypeEnum::Cl /* Ifc4x3::IfcGeotechnicalStratumTypeEnum::IfcGeotechnicalStratumTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcGeotechnicalStratumTypeEnum::IfcGeotechnicalStratumTypeEnum(Value v) { @@ -3379,7 +3379,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcGlobalOrLocalEnum::Class() { re /* Ifc4x3::IfcGlobalOrLocalEnum::IfcGlobalOrLocalEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcGlobalOrLocalEnum::IfcGlobalOrLocalEnum(Value v) { @@ -3408,7 +3408,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcGridTypeEnum::Class() { return /* Ifc4x3::IfcGridTypeEnum::IfcGridTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcGridTypeEnum::IfcGridTypeEnum(Value v) { @@ -3437,7 +3437,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcHeatExchangerTypeEnum::Class() /* Ifc4x3::IfcHeatExchangerTypeEnum::IfcHeatExchangerTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcHeatExchangerTypeEnum::IfcHeatExchangerTypeEnum(Value v) { @@ -3466,7 +3466,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcHumidifierTypeEnum::Class() { r /* Ifc4x3::IfcHumidifierTypeEnum::IfcHumidifierTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcHumidifierTypeEnum::IfcHumidifierTypeEnum(Value v) { @@ -3495,7 +3495,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcImpactProtectionDeviceTypeEnum: /* Ifc4x3::IfcImpactProtectionDeviceTypeEnum::IfcImpactProtectionDeviceTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcImpactProtectionDeviceTypeEnum::IfcImpactProtectionDeviceTypeEnum(Value v) { @@ -3524,7 +3524,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcInterceptorTypeEnum::Class() { /* Ifc4x3::IfcInterceptorTypeEnum::IfcInterceptorTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcInterceptorTypeEnum::IfcInterceptorTypeEnum(Value v) { @@ -3553,7 +3553,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcInternalOrExternalEnum::Class() /* Ifc4x3::IfcInternalOrExternalEnum::IfcInternalOrExternalEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcInternalOrExternalEnum::IfcInternalOrExternalEnum(Value v) { @@ -3582,7 +3582,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcInventoryTypeEnum::Class() { re /* Ifc4x3::IfcInventoryTypeEnum::IfcInventoryTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcInventoryTypeEnum::IfcInventoryTypeEnum(Value v) { @@ -3611,7 +3611,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcJunctionBoxTypeEnum::Class() { /* Ifc4x3::IfcJunctionBoxTypeEnum::IfcJunctionBoxTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcJunctionBoxTypeEnum::IfcJunctionBoxTypeEnum(Value v) { @@ -3640,7 +3640,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcKnotType::Class() { return *((i /* Ifc4x3::IfcKnotType::IfcKnotType(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcKnotType::IfcKnotType(Value v) { @@ -3669,7 +3669,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcLaborResourceTypeEnum::Class() /* Ifc4x3::IfcLaborResourceTypeEnum::IfcLaborResourceTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcLaborResourceTypeEnum::IfcLaborResourceTypeEnum(Value v) { @@ -3698,7 +3698,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcLampTypeEnum::Class() { return /* Ifc4x3::IfcLampTypeEnum::IfcLampTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcLampTypeEnum::IfcLampTypeEnum(Value v) { @@ -3727,7 +3727,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcLayerSetDirectionEnum::Class() /* Ifc4x3::IfcLayerSetDirectionEnum::IfcLayerSetDirectionEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcLayerSetDirectionEnum::IfcLayerSetDirectionEnum(Value v) { @@ -3756,7 +3756,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcLightDistributionCurveEnum::Cla /* Ifc4x3::IfcLightDistributionCurveEnum::IfcLightDistributionCurveEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcLightDistributionCurveEnum::IfcLightDistributionCurveEnum(Value v) { @@ -3785,7 +3785,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcLightEmissionSourceEnum::Class( /* Ifc4x3::IfcLightEmissionSourceEnum::IfcLightEmissionSourceEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcLightEmissionSourceEnum::IfcLightEmissionSourceEnum(Value v) { @@ -3814,7 +3814,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcLightFixtureTypeEnum::Class() { /* Ifc4x3::IfcLightFixtureTypeEnum::IfcLightFixtureTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcLightFixtureTypeEnum::IfcLightFixtureTypeEnum(Value v) { @@ -3843,7 +3843,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcLiquidTerminalTypeEnum::Class() /* Ifc4x3::IfcLiquidTerminalTypeEnum::IfcLiquidTerminalTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcLiquidTerminalTypeEnum::IfcLiquidTerminalTypeEnum(Value v) { @@ -3872,7 +3872,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcLoadGroupTypeEnum::Class() { re /* Ifc4x3::IfcLoadGroupTypeEnum::IfcLoadGroupTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcLoadGroupTypeEnum::IfcLoadGroupTypeEnum(Value v) { @@ -3901,7 +3901,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcLogicalOperatorEnum::Class() { /* Ifc4x3::IfcLogicalOperatorEnum::IfcLogicalOperatorEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcLogicalOperatorEnum::IfcLogicalOperatorEnum(Value v) { @@ -3930,7 +3930,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcMarineFacilityTypeEnum::Class() /* Ifc4x3::IfcMarineFacilityTypeEnum::IfcMarineFacilityTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcMarineFacilityTypeEnum::IfcMarineFacilityTypeEnum(Value v) { @@ -3959,7 +3959,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcMarinePartTypeEnum::Class() { r /* Ifc4x3::IfcMarinePartTypeEnum::IfcMarinePartTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcMarinePartTypeEnum::IfcMarinePartTypeEnum(Value v) { @@ -3988,7 +3988,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcMechanicalFastenerTypeEnum::Cla /* Ifc4x3::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerTypeEnum(Value v) { @@ -4017,7 +4017,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcMedicalDeviceTypeEnum::Class() /* Ifc4x3::IfcMedicalDeviceTypeEnum::IfcMedicalDeviceTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcMedicalDeviceTypeEnum::IfcMedicalDeviceTypeEnum(Value v) { @@ -4046,7 +4046,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcMemberTypeEnum::Class() { retur /* Ifc4x3::IfcMemberTypeEnum::IfcMemberTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcMemberTypeEnum::IfcMemberTypeEnum(Value v) { @@ -4075,7 +4075,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcMobileTelecommunicationsApplian /* Ifc4x3::IfcMobileTelecommunicationsApplianceTypeEnum::IfcMobileTelecommunicationsApplianceTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcMobileTelecommunicationsApplianceTypeEnum::IfcMobileTelecommunicationsApplianceTypeEnum(Value v) { @@ -4104,7 +4104,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcMooringDeviceTypeEnum::Class() /* Ifc4x3::IfcMooringDeviceTypeEnum::IfcMooringDeviceTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcMooringDeviceTypeEnum::IfcMooringDeviceTypeEnum(Value v) { @@ -4133,7 +4133,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcMotorConnectionTypeEnum::Class( /* Ifc4x3::IfcMotorConnectionTypeEnum::IfcMotorConnectionTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcMotorConnectionTypeEnum::IfcMotorConnectionTypeEnum(Value v) { @@ -4162,7 +4162,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcNavigationElementTypeEnum::Clas /* Ifc4x3::IfcNavigationElementTypeEnum::IfcNavigationElementTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcNavigationElementTypeEnum::IfcNavigationElementTypeEnum(Value v) { @@ -4191,7 +4191,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcObjectTypeEnum::Class() { retur /* Ifc4x3::IfcObjectTypeEnum::IfcObjectTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcObjectTypeEnum::IfcObjectTypeEnum(Value v) { @@ -4220,7 +4220,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcObjectiveEnum::Class() { return /* Ifc4x3::IfcObjectiveEnum::IfcObjectiveEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcObjectiveEnum::IfcObjectiveEnum(Value v) { @@ -4249,7 +4249,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcOccupantTypeEnum::Class() { ret /* Ifc4x3::IfcOccupantTypeEnum::IfcOccupantTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcOccupantTypeEnum::IfcOccupantTypeEnum(Value v) { @@ -4278,7 +4278,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcOpeningElementTypeEnum::Class() /* Ifc4x3::IfcOpeningElementTypeEnum::IfcOpeningElementTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcOpeningElementTypeEnum::IfcOpeningElementTypeEnum(Value v) { @@ -4307,7 +4307,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcOutletTypeEnum::Class() { retur /* Ifc4x3::IfcOutletTypeEnum::IfcOutletTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcOutletTypeEnum::IfcOutletTypeEnum(Value v) { @@ -4336,7 +4336,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcPavementTypeEnum::Class() { ret /* Ifc4x3::IfcPavementTypeEnum::IfcPavementTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcPavementTypeEnum::IfcPavementTypeEnum(Value v) { @@ -4365,7 +4365,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcPerformanceHistoryTypeEnum::Cla /* Ifc4x3::IfcPerformanceHistoryTypeEnum::IfcPerformanceHistoryTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcPerformanceHistoryTypeEnum::IfcPerformanceHistoryTypeEnum(Value v) { @@ -4394,7 +4394,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcPermeableCoveringOperationEnum: /* Ifc4x3::IfcPermeableCoveringOperationEnum::IfcPermeableCoveringOperationEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcPermeableCoveringOperationEnum::IfcPermeableCoveringOperationEnum(Value v) { @@ -4423,7 +4423,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcPermitTypeEnum::Class() { retur /* Ifc4x3::IfcPermitTypeEnum::IfcPermitTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcPermitTypeEnum::IfcPermitTypeEnum(Value v) { @@ -4452,7 +4452,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcPhysicalOrVirtualEnum::Class() /* Ifc4x3::IfcPhysicalOrVirtualEnum::IfcPhysicalOrVirtualEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcPhysicalOrVirtualEnum::IfcPhysicalOrVirtualEnum(Value v) { @@ -4481,7 +4481,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcPileConstructionEnum::Class() { /* Ifc4x3::IfcPileConstructionEnum::IfcPileConstructionEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcPileConstructionEnum::IfcPileConstructionEnum(Value v) { @@ -4510,7 +4510,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcPileTypeEnum::Class() { return /* Ifc4x3::IfcPileTypeEnum::IfcPileTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcPileTypeEnum::IfcPileTypeEnum(Value v) { @@ -4539,7 +4539,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcPipeFittingTypeEnum::Class() { /* Ifc4x3::IfcPipeFittingTypeEnum::IfcPipeFittingTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcPipeFittingTypeEnum::IfcPipeFittingTypeEnum(Value v) { @@ -4568,7 +4568,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcPipeSegmentTypeEnum::Class() { /* Ifc4x3::IfcPipeSegmentTypeEnum::IfcPipeSegmentTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcPipeSegmentTypeEnum::IfcPipeSegmentTypeEnum(Value v) { @@ -4597,7 +4597,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcPlateTypeEnum::Class() { return /* Ifc4x3::IfcPlateTypeEnum::IfcPlateTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcPlateTypeEnum::IfcPlateTypeEnum(Value v) { @@ -4626,7 +4626,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcPreferredSurfaceCurveRepresenta /* Ifc4x3::IfcPreferredSurfaceCurveRepresentation::IfcPreferredSurfaceCurveRepresentation(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcPreferredSurfaceCurveRepresentation::IfcPreferredSurfaceCurveRepresentation(Value v) { @@ -4655,7 +4655,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcProcedureTypeEnum::Class() { re /* Ifc4x3::IfcProcedureTypeEnum::IfcProcedureTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcProcedureTypeEnum::IfcProcedureTypeEnum(Value v) { @@ -4684,7 +4684,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcProfileTypeEnum::Class() { retu /* Ifc4x3::IfcProfileTypeEnum::IfcProfileTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcProfileTypeEnum::IfcProfileTypeEnum(Value v) { @@ -4713,7 +4713,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcProjectOrderTypeEnum::Class() { /* Ifc4x3::IfcProjectOrderTypeEnum::IfcProjectOrderTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcProjectOrderTypeEnum::IfcProjectOrderTypeEnum(Value v) { @@ -4742,7 +4742,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcProjectedOrTrueLengthEnum::Clas /* Ifc4x3::IfcProjectedOrTrueLengthEnum::IfcProjectedOrTrueLengthEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcProjectedOrTrueLengthEnum::IfcProjectedOrTrueLengthEnum(Value v) { @@ -4771,7 +4771,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcProjectionElementTypeEnum::Clas /* Ifc4x3::IfcProjectionElementTypeEnum::IfcProjectionElementTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcProjectionElementTypeEnum::IfcProjectionElementTypeEnum(Value v) { @@ -4800,7 +4800,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcPropertySetTemplateTypeEnum::Cl /* Ifc4x3::IfcPropertySetTemplateTypeEnum::IfcPropertySetTemplateTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcPropertySetTemplateTypeEnum::IfcPropertySetTemplateTypeEnum(Value v) { @@ -4829,7 +4829,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcProtectiveDeviceTrippingUnitTyp /* Ifc4x3::IfcProtectiveDeviceTrippingUnitTypeEnum::IfcProtectiveDeviceTrippingUnitTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcProtectiveDeviceTrippingUnitTypeEnum::IfcProtectiveDeviceTrippingUnitTypeEnum(Value v) { @@ -4858,7 +4858,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcProtectiveDeviceTypeEnum::Class /* Ifc4x3::IfcProtectiveDeviceTypeEnum::IfcProtectiveDeviceTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcProtectiveDeviceTypeEnum::IfcProtectiveDeviceTypeEnum(Value v) { @@ -4887,7 +4887,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcPumpTypeEnum::Class() { return /* Ifc4x3::IfcPumpTypeEnum::IfcPumpTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcPumpTypeEnum::IfcPumpTypeEnum(Value v) { @@ -4916,7 +4916,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcRailTypeEnum::Class() { return /* Ifc4x3::IfcRailTypeEnum::IfcRailTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcRailTypeEnum::IfcRailTypeEnum(Value v) { @@ -4945,7 +4945,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcRailingTypeEnum::Class() { retu /* Ifc4x3::IfcRailingTypeEnum::IfcRailingTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcRailingTypeEnum::IfcRailingTypeEnum(Value v) { @@ -4974,7 +4974,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcRailwayPartTypeEnum::Class() { /* Ifc4x3::IfcRailwayPartTypeEnum::IfcRailwayPartTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcRailwayPartTypeEnum::IfcRailwayPartTypeEnum(Value v) { @@ -5003,7 +5003,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcRailwayTypeEnum::Class() { retu /* Ifc4x3::IfcRailwayTypeEnum::IfcRailwayTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcRailwayTypeEnum::IfcRailwayTypeEnum(Value v) { @@ -5032,7 +5032,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcRampFlightTypeEnum::Class() { r /* Ifc4x3::IfcRampFlightTypeEnum::IfcRampFlightTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcRampFlightTypeEnum::IfcRampFlightTypeEnum(Value v) { @@ -5061,7 +5061,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcRampTypeEnum::Class() { return /* Ifc4x3::IfcRampTypeEnum::IfcRampTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcRampTypeEnum::IfcRampTypeEnum(Value v) { @@ -5090,7 +5090,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcRecurrenceTypeEnum::Class() { r /* Ifc4x3::IfcRecurrenceTypeEnum::IfcRecurrenceTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcRecurrenceTypeEnum::IfcRecurrenceTypeEnum(Value v) { @@ -5119,7 +5119,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcReferentTypeEnum::Class() { ret /* Ifc4x3::IfcReferentTypeEnum::IfcReferentTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcReferentTypeEnum::IfcReferentTypeEnum(Value v) { @@ -5148,7 +5148,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcReflectanceMethodEnum::Class() /* Ifc4x3::IfcReflectanceMethodEnum::IfcReflectanceMethodEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcReflectanceMethodEnum::IfcReflectanceMethodEnum(Value v) { @@ -5177,7 +5177,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcReinforcedSoilTypeEnum::Class() /* Ifc4x3::IfcReinforcedSoilTypeEnum::IfcReinforcedSoilTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcReinforcedSoilTypeEnum::IfcReinforcedSoilTypeEnum(Value v) { @@ -5206,7 +5206,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcReinforcingBarRoleEnum::Class() /* Ifc4x3::IfcReinforcingBarRoleEnum::IfcReinforcingBarRoleEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcReinforcingBarRoleEnum::IfcReinforcingBarRoleEnum(Value v) { @@ -5235,7 +5235,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcReinforcingBarSurfaceEnum::Clas /* Ifc4x3::IfcReinforcingBarSurfaceEnum::IfcReinforcingBarSurfaceEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcReinforcingBarSurfaceEnum::IfcReinforcingBarSurfaceEnum(Value v) { @@ -5264,7 +5264,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcReinforcingBarTypeEnum::Class() /* Ifc4x3::IfcReinforcingBarTypeEnum::IfcReinforcingBarTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcReinforcingBarTypeEnum::IfcReinforcingBarTypeEnum(Value v) { @@ -5293,7 +5293,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcReinforcingMeshTypeEnum::Class( /* Ifc4x3::IfcReinforcingMeshTypeEnum::IfcReinforcingMeshTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcReinforcingMeshTypeEnum::IfcReinforcingMeshTypeEnum(Value v) { @@ -5322,7 +5322,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcRoadPartTypeEnum::Class() { ret /* Ifc4x3::IfcRoadPartTypeEnum::IfcRoadPartTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcRoadPartTypeEnum::IfcRoadPartTypeEnum(Value v) { @@ -5351,7 +5351,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcRoadTypeEnum::Class() { return /* Ifc4x3::IfcRoadTypeEnum::IfcRoadTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcRoadTypeEnum::IfcRoadTypeEnum(Value v) { @@ -5380,7 +5380,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcRoleEnum::Class() { return *((i /* Ifc4x3::IfcRoleEnum::IfcRoleEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcRoleEnum::IfcRoleEnum(Value v) { @@ -5409,7 +5409,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcRoofTypeEnum::Class() { return /* Ifc4x3::IfcRoofTypeEnum::IfcRoofTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcRoofTypeEnum::IfcRoofTypeEnum(Value v) { @@ -5438,7 +5438,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcSIPrefix::Class() { return *((i /* Ifc4x3::IfcSIPrefix::IfcSIPrefix(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcSIPrefix::IfcSIPrefix(Value v) { @@ -5467,7 +5467,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcSIUnitName::Class() { return *( /* Ifc4x3::IfcSIUnitName::IfcSIUnitName(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcSIUnitName::IfcSIUnitName(Value v) { @@ -5496,7 +5496,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcSanitaryTerminalTypeEnum::Class /* Ifc4x3::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalTypeEnum(Value v) { @@ -5525,7 +5525,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcSectionTypeEnum::Class() { retu /* Ifc4x3::IfcSectionTypeEnum::IfcSectionTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcSectionTypeEnum::IfcSectionTypeEnum(Value v) { @@ -5554,7 +5554,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcSensorTypeEnum::Class() { retur /* Ifc4x3::IfcSensorTypeEnum::IfcSensorTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcSensorTypeEnum::IfcSensorTypeEnum(Value v) { @@ -5583,7 +5583,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcSequenceEnum::Class() { return /* Ifc4x3::IfcSequenceEnum::IfcSequenceEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcSequenceEnum::IfcSequenceEnum(Value v) { @@ -5612,7 +5612,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcShadingDeviceTypeEnum::Class() /* Ifc4x3::IfcShadingDeviceTypeEnum::IfcShadingDeviceTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcShadingDeviceTypeEnum::IfcShadingDeviceTypeEnum(Value v) { @@ -5641,7 +5641,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcSignTypeEnum::Class() { return /* Ifc4x3::IfcSignTypeEnum::IfcSignTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcSignTypeEnum::IfcSignTypeEnum(Value v) { @@ -5670,7 +5670,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcSignalTypeEnum::Class() { retur /* Ifc4x3::IfcSignalTypeEnum::IfcSignalTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcSignalTypeEnum::IfcSignalTypeEnum(Value v) { @@ -5699,7 +5699,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcSimplePropertyTemplateTypeEnum: /* Ifc4x3::IfcSimplePropertyTemplateTypeEnum::IfcSimplePropertyTemplateTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcSimplePropertyTemplateTypeEnum::IfcSimplePropertyTemplateTypeEnum(Value v) { @@ -5728,7 +5728,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcSlabTypeEnum::Class() { return /* Ifc4x3::IfcSlabTypeEnum::IfcSlabTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcSlabTypeEnum::IfcSlabTypeEnum(Value v) { @@ -5757,7 +5757,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcSolarDeviceTypeEnum::Class() { /* Ifc4x3::IfcSolarDeviceTypeEnum::IfcSolarDeviceTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcSolarDeviceTypeEnum::IfcSolarDeviceTypeEnum(Value v) { @@ -5786,7 +5786,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcSpaceHeaterTypeEnum::Class() { /* Ifc4x3::IfcSpaceHeaterTypeEnum::IfcSpaceHeaterTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcSpaceHeaterTypeEnum::IfcSpaceHeaterTypeEnum(Value v) { @@ -5815,7 +5815,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcSpaceTypeEnum::Class() { return /* Ifc4x3::IfcSpaceTypeEnum::IfcSpaceTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcSpaceTypeEnum::IfcSpaceTypeEnum(Value v) { @@ -5844,7 +5844,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcSpatialZoneTypeEnum::Class() { /* Ifc4x3::IfcSpatialZoneTypeEnum::IfcSpatialZoneTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcSpatialZoneTypeEnum::IfcSpatialZoneTypeEnum(Value v) { @@ -5873,7 +5873,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcStackTerminalTypeEnum::Class() /* Ifc4x3::IfcStackTerminalTypeEnum::IfcStackTerminalTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcStackTerminalTypeEnum::IfcStackTerminalTypeEnum(Value v) { @@ -5902,7 +5902,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcStairFlightTypeEnum::Class() { /* Ifc4x3::IfcStairFlightTypeEnum::IfcStairFlightTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcStairFlightTypeEnum::IfcStairFlightTypeEnum(Value v) { @@ -5931,7 +5931,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcStairTypeEnum::Class() { return /* Ifc4x3::IfcStairTypeEnum::IfcStairTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcStairTypeEnum::IfcStairTypeEnum(Value v) { @@ -5960,7 +5960,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcStateEnum::Class() { return *(( /* Ifc4x3::IfcStateEnum::IfcStateEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcStateEnum::IfcStateEnum(Value v) { @@ -5989,7 +5989,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcStructuralCurveActivityTypeEnum /* Ifc4x3::IfcStructuralCurveActivityTypeEnum::IfcStructuralCurveActivityTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcStructuralCurveActivityTypeEnum::IfcStructuralCurveActivityTypeEnum(Value v) { @@ -6018,7 +6018,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcStructuralCurveMemberTypeEnum:: /* Ifc4x3::IfcStructuralCurveMemberTypeEnum::IfcStructuralCurveMemberTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcStructuralCurveMemberTypeEnum::IfcStructuralCurveMemberTypeEnum(Value v) { @@ -6047,7 +6047,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcStructuralSurfaceActivityTypeEn /* Ifc4x3::IfcStructuralSurfaceActivityTypeEnum::IfcStructuralSurfaceActivityTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcStructuralSurfaceActivityTypeEnum::IfcStructuralSurfaceActivityTypeEnum(Value v) { @@ -6076,7 +6076,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcStructuralSurfaceMemberTypeEnum /* Ifc4x3::IfcStructuralSurfaceMemberTypeEnum::IfcStructuralSurfaceMemberTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcStructuralSurfaceMemberTypeEnum::IfcStructuralSurfaceMemberTypeEnum(Value v) { @@ -6105,7 +6105,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcSubContractResourceTypeEnum::Cl /* Ifc4x3::IfcSubContractResourceTypeEnum::IfcSubContractResourceTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcSubContractResourceTypeEnum::IfcSubContractResourceTypeEnum(Value v) { @@ -6134,7 +6134,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcSurfaceFeatureTypeEnum::Class() /* Ifc4x3::IfcSurfaceFeatureTypeEnum::IfcSurfaceFeatureTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcSurfaceFeatureTypeEnum::IfcSurfaceFeatureTypeEnum(Value v) { @@ -6163,7 +6163,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcSurfaceSide::Class() { return * /* Ifc4x3::IfcSurfaceSide::IfcSurfaceSide(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcSurfaceSide::IfcSurfaceSide(Value v) { @@ -6192,7 +6192,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcSwitchingDeviceTypeEnum::Class( /* Ifc4x3::IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceTypeEnum(Value v) { @@ -6221,7 +6221,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcSystemFurnitureElementTypeEnum: /* Ifc4x3::IfcSystemFurnitureElementTypeEnum::IfcSystemFurnitureElementTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcSystemFurnitureElementTypeEnum::IfcSystemFurnitureElementTypeEnum(Value v) { @@ -6250,7 +6250,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcTankTypeEnum::Class() { return /* Ifc4x3::IfcTankTypeEnum::IfcTankTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcTankTypeEnum::IfcTankTypeEnum(Value v) { @@ -6279,7 +6279,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcTaskDurationEnum::Class() { ret /* Ifc4x3::IfcTaskDurationEnum::IfcTaskDurationEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcTaskDurationEnum::IfcTaskDurationEnum(Value v) { @@ -6308,7 +6308,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcTaskTypeEnum::Class() { return /* Ifc4x3::IfcTaskTypeEnum::IfcTaskTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcTaskTypeEnum::IfcTaskTypeEnum(Value v) { @@ -6337,7 +6337,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcTendonAnchorTypeEnum::Class() { /* Ifc4x3::IfcTendonAnchorTypeEnum::IfcTendonAnchorTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcTendonAnchorTypeEnum::IfcTendonAnchorTypeEnum(Value v) { @@ -6366,7 +6366,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcTendonConduitTypeEnum::Class() /* Ifc4x3::IfcTendonConduitTypeEnum::IfcTendonConduitTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcTendonConduitTypeEnum::IfcTendonConduitTypeEnum(Value v) { @@ -6395,7 +6395,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcTendonTypeEnum::Class() { retur /* Ifc4x3::IfcTendonTypeEnum::IfcTendonTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcTendonTypeEnum::IfcTendonTypeEnum(Value v) { @@ -6424,7 +6424,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcTextPath::Class() { return *((i /* Ifc4x3::IfcTextPath::IfcTextPath(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcTextPath::IfcTextPath(Value v) { @@ -6453,7 +6453,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcTimeSeriesDataTypeEnum::Class() /* Ifc4x3::IfcTimeSeriesDataTypeEnum::IfcTimeSeriesDataTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcTimeSeriesDataTypeEnum::IfcTimeSeriesDataTypeEnum(Value v) { @@ -6482,7 +6482,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcTrackElementTypeEnum::Class() { /* Ifc4x3::IfcTrackElementTypeEnum::IfcTrackElementTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcTrackElementTypeEnum::IfcTrackElementTypeEnum(Value v) { @@ -6511,7 +6511,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcTransformerTypeEnum::Class() { /* Ifc4x3::IfcTransformerTypeEnum::IfcTransformerTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcTransformerTypeEnum::IfcTransformerTypeEnum(Value v) { @@ -6540,7 +6540,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcTransitionCode::Class() { retur /* Ifc4x3::IfcTransitionCode::IfcTransitionCode(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcTransitionCode::IfcTransitionCode(Value v) { @@ -6569,7 +6569,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcTransportElementTypeEnum::Class /* Ifc4x3::IfcTransportElementTypeEnum::IfcTransportElementTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcTransportElementTypeEnum::IfcTransportElementTypeEnum(Value v) { @@ -6598,7 +6598,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcTrimmingPreference::Class() { r /* Ifc4x3::IfcTrimmingPreference::IfcTrimmingPreference(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcTrimmingPreference::IfcTrimmingPreference(Value v) { @@ -6627,7 +6627,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcTubeBundleTypeEnum::Class() { r /* Ifc4x3::IfcTubeBundleTypeEnum::IfcTubeBundleTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcTubeBundleTypeEnum::IfcTubeBundleTypeEnum(Value v) { @@ -6656,7 +6656,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcUnitEnum::Class() { return *((i /* Ifc4x3::IfcUnitEnum::IfcUnitEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcUnitEnum::IfcUnitEnum(Value v) { @@ -6685,7 +6685,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcUnitaryControlElementTypeEnum:: /* Ifc4x3::IfcUnitaryControlElementTypeEnum::IfcUnitaryControlElementTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcUnitaryControlElementTypeEnum::IfcUnitaryControlElementTypeEnum(Value v) { @@ -6714,7 +6714,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcUnitaryEquipmentTypeEnum::Class /* Ifc4x3::IfcUnitaryEquipmentTypeEnum::IfcUnitaryEquipmentTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcUnitaryEquipmentTypeEnum::IfcUnitaryEquipmentTypeEnum(Value v) { @@ -6743,7 +6743,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcValveTypeEnum::Class() { return /* Ifc4x3::IfcValveTypeEnum::IfcValveTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcValveTypeEnum::IfcValveTypeEnum(Value v) { @@ -6772,7 +6772,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcVehicleTypeEnum::Class() { retu /* Ifc4x3::IfcVehicleTypeEnum::IfcVehicleTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcVehicleTypeEnum::IfcVehicleTypeEnum(Value v) { @@ -6801,7 +6801,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcVibrationDamperTypeEnum::Class( /* Ifc4x3::IfcVibrationDamperTypeEnum::IfcVibrationDamperTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcVibrationDamperTypeEnum::IfcVibrationDamperTypeEnum(Value v) { @@ -6830,7 +6830,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcVibrationIsolatorTypeEnum::Clas /* Ifc4x3::IfcVibrationIsolatorTypeEnum::IfcVibrationIsolatorTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcVibrationIsolatorTypeEnum::IfcVibrationIsolatorTypeEnum(Value v) { @@ -6859,7 +6859,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcVirtualElementTypeEnum::Class() /* Ifc4x3::IfcVirtualElementTypeEnum::IfcVirtualElementTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcVirtualElementTypeEnum::IfcVirtualElementTypeEnum(Value v) { @@ -6888,7 +6888,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcVoidingFeatureTypeEnum::Class() /* Ifc4x3::IfcVoidingFeatureTypeEnum::IfcVoidingFeatureTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcVoidingFeatureTypeEnum::IfcVoidingFeatureTypeEnum(Value v) { @@ -6917,7 +6917,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcWallTypeEnum::Class() { return /* Ifc4x3::IfcWallTypeEnum::IfcWallTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcWallTypeEnum::IfcWallTypeEnum(Value v) { @@ -6946,7 +6946,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcWasteTerminalTypeEnum::Class() /* Ifc4x3::IfcWasteTerminalTypeEnum::IfcWasteTerminalTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcWasteTerminalTypeEnum::IfcWasteTerminalTypeEnum(Value v) { @@ -6975,7 +6975,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcWindowPanelOperationEnum::Class /* Ifc4x3::IfcWindowPanelOperationEnum::IfcWindowPanelOperationEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcWindowPanelOperationEnum::IfcWindowPanelOperationEnum(Value v) { @@ -7004,7 +7004,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcWindowPanelPositionEnum::Class( /* Ifc4x3::IfcWindowPanelPositionEnum::IfcWindowPanelPositionEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcWindowPanelPositionEnum::IfcWindowPanelPositionEnum(Value v) { @@ -7033,7 +7033,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcWindowStyleConstructionEnum::Cl /* Ifc4x3::IfcWindowStyleConstructionEnum::IfcWindowStyleConstructionEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcWindowStyleConstructionEnum::IfcWindowStyleConstructionEnum(Value v) { @@ -7062,7 +7062,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcWindowStyleOperationEnum::Class /* Ifc4x3::IfcWindowStyleOperationEnum::IfcWindowStyleOperationEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcWindowStyleOperationEnum::IfcWindowStyleOperationEnum(Value v) { @@ -7091,7 +7091,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcWindowTypeEnum::Class() { retur /* Ifc4x3::IfcWindowTypeEnum::IfcWindowTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcWindowTypeEnum::IfcWindowTypeEnum(Value v) { @@ -7120,7 +7120,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcWindowTypePartitioningEnum::Cla /* Ifc4x3::IfcWindowTypePartitioningEnum::IfcWindowTypePartitioningEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcWindowTypePartitioningEnum::IfcWindowTypePartitioningEnum(Value v) { @@ -7149,7 +7149,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcWorkCalendarTypeEnum::Class() { /* Ifc4x3::IfcWorkCalendarTypeEnum::IfcWorkCalendarTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcWorkCalendarTypeEnum::IfcWorkCalendarTypeEnum(Value v) { @@ -7178,7 +7178,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcWorkPlanTypeEnum::Class() { ret /* Ifc4x3::IfcWorkPlanTypeEnum::IfcWorkPlanTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcWorkPlanTypeEnum::IfcWorkPlanTypeEnum(Value v) { @@ -7207,7 +7207,7 @@ const ifcopenshell::enumeration_type& Ifc4x3::IfcWorkScheduleTypeEnum::Class() { /* Ifc4x3::IfcWorkScheduleTypeEnum::IfcWorkScheduleTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3::IfcWorkScheduleTypeEnum::IfcWorkScheduleTypeEnum(Value v) { @@ -7801,8 +7801,8 @@ Ifc4x3::IfcPressureMeasure::operator double() const { return get_attribute_value // Function implementations for IfcPropertySetDefinitionSet const ifcopenshell::type_declaration& Ifc4x3::IfcPropertySetDefinitionSet::Class() { return *((ifcopenshell::type_declaration*)IFC4X3_types[829]); } -Ifc4x3::IfcPropertySetDefinitionSet Ifc4x3::IfcPropertySetDefinitionSet::initialize(std::vector< ::Ifc4x3::IfcPropertySetDefinition > v) { set_attribute_value(0, cast_vector(v));; return *this; } -Ifc4x3::IfcPropertySetDefinitionSet::operator std::vector< ::Ifc4x3::IfcPropertySetDefinition >() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3::IfcPropertySetDefinition>(es); } +Ifc4x3::IfcPropertySetDefinitionSet Ifc4x3::IfcPropertySetDefinitionSet::initialize(std::vector< ::Ifc4x3::IfcPropertySetDefinition > v) { set_attribute_value(0, cast_vector(v));; return *this; } +Ifc4x3::IfcPropertySetDefinitionSet::operator std::vector< ::Ifc4x3::IfcPropertySetDefinition >() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3::IfcPropertySetDefinition>(es); } // Function implementations for IfcRadioActivityMeasure const ifcopenshell::type_declaration& Ifc4x3::IfcRadioActivityMeasure::Class() { return *((ifcopenshell::type_declaration*)IFC4X3_types[853]); } @@ -8018,7 +8018,7 @@ const ifcopenshell::entity& Ifc4x3::IfcActionRequest::Class() { return *((ifcope Ifc4x3::IfcActionRequest Ifc4x3::IfcActionRequest::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, std::optional< std::string > v6_Identification, std::optional< ::Ifc4x3::IfcActionRequestTypeEnum::Value > v7_PredefinedType, std::optional< std::string > v8_Status, std::optional< std::string > v9_LongDescription) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); } if (v6_Identification) {set_attribute_value(5, (*v6_Identification)); } if (v7_PredefinedType) {set_attribute_value(6, (enumeration_reference(&::Ifc4x3::IfcActionRequestTypeEnum::Class(),(size_t)*v7_PredefinedType))); } if (v8_Status) {set_attribute_value(7, (*v8_Status)); } if (v9_LongDescription) {set_attribute_value(8, (*v9_LongDescription)); }; return *this; } // Function implementations for IfcActor -::Ifc4x3::IfcActorSelect Ifc4x3::IfcActor::TheActor() const { return ((express::Base)(get_attribute_value(5))).as<::Ifc4x3::IfcActorSelect>(); } +::Ifc4x3::IfcActorSelect Ifc4x3::IfcActor::TheActor() const { return ((express::base)(get_attribute_value(5))).as<::Ifc4x3::IfcActorSelect>(); } void Ifc4x3::IfcActor::setTheActor(const ::Ifc4x3::IfcActorSelect& v) { set_attribute_value(5, v);if constexpr (false)unset_attribute_value(5); } std::vector<::Ifc4x3::IfcRelAssignsToActor> Ifc4x3::IfcActor::IsActingUpon() const { return cast_vector(file()->get_inverse(data()->id(), IFC4X3_types[902], 6)); } @@ -8053,7 +8053,7 @@ void Ifc4x3::IfcActuatorType::setPredefinedType(const ::Ifc4x3::IfcActuatorTypeE const ifcopenshell::entity& Ifc4x3::IfcActuatorType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[10]); } -Ifc4x3::IfcActuatorType Ifc4x3::IfcActuatorType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcActuatorTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcActuatorTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3::IfcActuatorType Ifc4x3::IfcActuatorType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcActuatorTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcActuatorTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcAddress std::optional< ::Ifc4x3::IfcAddressTypeEnum::Value > Ifc4x3::IfcAddress::Purpose() const { if(get_attribute_value(0).isNull()) { return std::nullopt; } return ::Ifc4x3::IfcAddressTypeEnum::FromString(get_attribute_value(0)); } @@ -8076,18 +8076,18 @@ const ifcopenshell::entity& Ifc4x3::IfcAdvancedBrep::Class() { return *((ifcopen Ifc4x3::IfcAdvancedBrep Ifc4x3::IfcAdvancedBrep::initialize(::Ifc4x3::IfcClosedShell v1_Outer) { set_attribute_value(0, (v1_Outer));; return *this; } // Function implementations for IfcAdvancedBrepWithVoids -std::vector< ::Ifc4x3::IfcClosedShell > Ifc4x3::IfcAdvancedBrepWithVoids::Voids() const { std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3::IfcClosedShell>(es); } -void Ifc4x3::IfcAdvancedBrepWithVoids::setVoids(const std::vector< ::Ifc4x3::IfcClosedShell >& v) { set_attribute_value(1, cast_vector(v));if constexpr (false)unset_attribute_value(1); } +std::vector< ::Ifc4x3::IfcClosedShell > Ifc4x3::IfcAdvancedBrepWithVoids::Voids() const { std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3::IfcClosedShell>(es); } +void Ifc4x3::IfcAdvancedBrepWithVoids::setVoids(const std::vector< ::Ifc4x3::IfcClosedShell >& v) { set_attribute_value(1, cast_vector(v));if constexpr (false)unset_attribute_value(1); } const ifcopenshell::entity& Ifc4x3::IfcAdvancedBrepWithVoids::Class() { return *((ifcopenshell::entity*)IFC4X3_types[15]); } -Ifc4x3::IfcAdvancedBrepWithVoids Ifc4x3::IfcAdvancedBrepWithVoids::initialize(::Ifc4x3::IfcClosedShell v1_Outer, std::vector< ::Ifc4x3::IfcClosedShell > v2_Voids) { set_attribute_value(0, (v1_Outer));set_attribute_value(1, cast_vector(v2_Voids));; return *this; } +Ifc4x3::IfcAdvancedBrepWithVoids Ifc4x3::IfcAdvancedBrepWithVoids::initialize(::Ifc4x3::IfcClosedShell v1_Outer, std::vector< ::Ifc4x3::IfcClosedShell > v2_Voids) { set_attribute_value(0, (v1_Outer));set_attribute_value(1, cast_vector(v2_Voids));; return *this; } // Function implementations for IfcAdvancedFace const ifcopenshell::entity& Ifc4x3::IfcAdvancedFace::Class() { return *((ifcopenshell::entity*)IFC4X3_types[16]); } -Ifc4x3::IfcAdvancedFace Ifc4x3::IfcAdvancedFace::initialize(std::vector< ::Ifc4x3::IfcFaceBound > v1_Bounds, ::Ifc4x3::IfcSurface v2_FaceSurface, bool v3_SameSense) { set_attribute_value(0, cast_vector(v1_Bounds));set_attribute_value(1, (v2_FaceSurface));set_attribute_value(2, (v3_SameSense));; return *this; } +Ifc4x3::IfcAdvancedFace Ifc4x3::IfcAdvancedFace::initialize(std::vector< ::Ifc4x3::IfcFaceBound > v1_Bounds, ::Ifc4x3::IfcSurface v2_FaceSurface, bool v3_SameSense) { set_attribute_value(0, cast_vector(v1_Bounds));set_attribute_value(1, (v2_FaceSurface));set_attribute_value(2, (v3_SameSense));; return *this; } // Function implementations for IfcAirTerminal std::optional< ::Ifc4x3::IfcAirTerminalTypeEnum::Value > Ifc4x3::IfcAirTerminal::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3::IfcAirTerminalTypeEnum::FromString(get_attribute_value(8)); } @@ -8111,7 +8111,7 @@ void Ifc4x3::IfcAirTerminalBoxType::setPredefinedType(const ::Ifc4x3::IfcAirTerm const ifcopenshell::entity& Ifc4x3::IfcAirTerminalBoxType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[19]); } -Ifc4x3::IfcAirTerminalBoxType Ifc4x3::IfcAirTerminalBoxType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcAirTerminalBoxTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcAirTerminalBoxTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3::IfcAirTerminalBoxType Ifc4x3::IfcAirTerminalBoxType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcAirTerminalBoxTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcAirTerminalBoxTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcAirTerminalType ::Ifc4x3::IfcAirTerminalTypeEnum::Value Ifc4x3::IfcAirTerminalType::PredefinedType() const { return ::Ifc4x3::IfcAirTerminalTypeEnum::FromString(get_attribute_value(9)); } @@ -8119,7 +8119,7 @@ void Ifc4x3::IfcAirTerminalType::setPredefinedType(const ::Ifc4x3::IfcAirTermina const ifcopenshell::entity& Ifc4x3::IfcAirTerminalType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[21]); } -Ifc4x3::IfcAirTerminalType Ifc4x3::IfcAirTerminalType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcAirTerminalTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcAirTerminalTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3::IfcAirTerminalType Ifc4x3::IfcAirTerminalType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcAirTerminalTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcAirTerminalTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcAirToAirHeatRecovery std::optional< ::Ifc4x3::IfcAirToAirHeatRecoveryTypeEnum::Value > Ifc4x3::IfcAirToAirHeatRecovery::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3::IfcAirToAirHeatRecoveryTypeEnum::FromString(get_attribute_value(8)); } @@ -8135,7 +8135,7 @@ void Ifc4x3::IfcAirToAirHeatRecoveryType::setPredefinedType(const ::Ifc4x3::IfcA const ifcopenshell::entity& Ifc4x3::IfcAirToAirHeatRecoveryType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[24]); } -Ifc4x3::IfcAirToAirHeatRecoveryType Ifc4x3::IfcAirToAirHeatRecoveryType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcAirToAirHeatRecoveryTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcAirToAirHeatRecoveryTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3::IfcAirToAirHeatRecoveryType Ifc4x3::IfcAirToAirHeatRecoveryType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcAirToAirHeatRecoveryTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcAirToAirHeatRecoveryTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcAlarm std::optional< ::Ifc4x3::IfcAlarmTypeEnum::Value > Ifc4x3::IfcAlarm::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3::IfcAlarmTypeEnum::FromString(get_attribute_value(8)); } @@ -8151,7 +8151,7 @@ void Ifc4x3::IfcAlarmType::setPredefinedType(const ::Ifc4x3::IfcAlarmTypeEnum::V const ifcopenshell::entity& Ifc4x3::IfcAlarmType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[27]); } -Ifc4x3::IfcAlarmType Ifc4x3::IfcAlarmType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcAlarmTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcAlarmTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3::IfcAlarmType Ifc4x3::IfcAlarmType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcAlarmTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcAlarmTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcAlignment std::optional< ::Ifc4x3::IfcAlignmentTypeEnum::Value > Ifc4x3::IfcAlignment::PredefinedType() const { if(get_attribute_value(7).isNull()) { return std::nullopt; } return ::Ifc4x3::IfcAlignmentTypeEnum::FromString(get_attribute_value(7)); } @@ -8196,7 +8196,7 @@ const ifcopenshell::entity& Ifc4x3::IfcAlignmentHorizontal::Class() { return *(( Ifc4x3::IfcAlignmentHorizontal Ifc4x3::IfcAlignmentHorizontal::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, ::Ifc4x3::IfcObjectPlacement v6_ObjectPlacement, ::Ifc4x3::IfcProductRepresentation v7_Representation) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); }set_attribute_value(5, (v6_ObjectPlacement));set_attribute_value(6, (v7_Representation));; return *this; } // Function implementations for IfcAlignmentHorizontalSegment -::Ifc4x3::IfcCartesianPoint Ifc4x3::IfcAlignmentHorizontalSegment::StartPoint() const { return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3::IfcCartesianPoint>(); } +::Ifc4x3::IfcCartesianPoint Ifc4x3::IfcAlignmentHorizontalSegment::StartPoint() const { return ((express::base)(get_attribute_value(2))).as<::Ifc4x3::IfcCartesianPoint>(); } void Ifc4x3::IfcAlignmentHorizontalSegment::setStartPoint(const ::Ifc4x3::IfcCartesianPoint& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } double Ifc4x3::IfcAlignmentHorizontalSegment::StartDirection() const { double v = get_attribute_value(3); return v; } void Ifc4x3::IfcAlignmentHorizontalSegment::setStartDirection(const double& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } @@ -8226,7 +8226,7 @@ const ifcopenshell::entity& Ifc4x3::IfcAlignmentParameterSegment::Class() { retu Ifc4x3::IfcAlignmentParameterSegment Ifc4x3::IfcAlignmentParameterSegment::initialize(std::optional< std::string > v1_StartTag, std::optional< std::string > v2_EndTag) { if (v1_StartTag) {set_attribute_value(0, (*v1_StartTag)); } if (v2_EndTag) {set_attribute_value(1, (*v2_EndTag)); }; return *this; } // Function implementations for IfcAlignmentSegment -::Ifc4x3::IfcAlignmentParameterSegment Ifc4x3::IfcAlignmentSegment::DesignParameters() const { return ((express::Base)(get_attribute_value(7))).as<::Ifc4x3::IfcAlignmentParameterSegment>(); } +::Ifc4x3::IfcAlignmentParameterSegment Ifc4x3::IfcAlignmentSegment::DesignParameters() const { return ((express::base)(get_attribute_value(7))).as<::Ifc4x3::IfcAlignmentParameterSegment>(); } void Ifc4x3::IfcAlignmentSegment::setDesignParameters(const ::Ifc4x3::IfcAlignmentParameterSegment& v) { set_attribute_value(7, v);if constexpr (false)unset_attribute_value(7); } @@ -8269,17 +8269,17 @@ const ifcopenshell::entity& Ifc4x3::IfcAnnotation::Class() { return *((ifcopensh Ifc4x3::IfcAnnotation Ifc4x3::IfcAnnotation::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, ::Ifc4x3::IfcObjectPlacement v6_ObjectPlacement, ::Ifc4x3::IfcProductRepresentation v7_Representation, std::optional< ::Ifc4x3::IfcAnnotationTypeEnum::Value > v8_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); }set_attribute_value(5, (v6_ObjectPlacement));set_attribute_value(6, (v7_Representation)); if (v8_PredefinedType) {set_attribute_value(7, (enumeration_reference(&::Ifc4x3::IfcAnnotationTypeEnum::Class(),(size_t)*v8_PredefinedType))); }; return *this; } // Function implementations for IfcAnnotationFillArea -::Ifc4x3::IfcCurve Ifc4x3::IfcAnnotationFillArea::OuterBoundary() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3::IfcCurve>(); } +::Ifc4x3::IfcCurve Ifc4x3::IfcAnnotationFillArea::OuterBoundary() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3::IfcCurve>(); } void Ifc4x3::IfcAnnotationFillArea::setOuterBoundary(const ::Ifc4x3::IfcCurve& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } -std::optional< std::vector< ::Ifc4x3::IfcCurve > > Ifc4x3::IfcAnnotationFillArea::InnerBoundaries() const { if(get_attribute_value(1).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3::IfcCurve>(es); } -void Ifc4x3::IfcAnnotationFillArea::setInnerBoundaries(const std::optional< std::vector< ::Ifc4x3::IfcCurve > >& v) { if (v) {set_attribute_value(1, cast_vector(*v));} else {unset_attribute_value(1);} } +std::optional< std::vector< ::Ifc4x3::IfcCurve > > Ifc4x3::IfcAnnotationFillArea::InnerBoundaries() const { if(get_attribute_value(1).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3::IfcCurve>(es); } +void Ifc4x3::IfcAnnotationFillArea::setInnerBoundaries(const std::optional< std::vector< ::Ifc4x3::IfcCurve > >& v) { if (v) {set_attribute_value(1, cast_vector(*v));} else {unset_attribute_value(1);} } const ifcopenshell::entity& Ifc4x3::IfcAnnotationFillArea::Class() { return *((ifcopenshell::entity*)IFC4X3_types[47]); } -Ifc4x3::IfcAnnotationFillArea Ifc4x3::IfcAnnotationFillArea::initialize(::Ifc4x3::IfcCurve v1_OuterBoundary, std::optional< std::vector< ::Ifc4x3::IfcCurve > > v2_InnerBoundaries) { set_attribute_value(0, (v1_OuterBoundary)); if (v2_InnerBoundaries) {set_attribute_value(1, cast_vector(*v2_InnerBoundaries)); }; return *this; } +Ifc4x3::IfcAnnotationFillArea Ifc4x3::IfcAnnotationFillArea::initialize(::Ifc4x3::IfcCurve v1_OuterBoundary, std::optional< std::vector< ::Ifc4x3::IfcCurve > > v2_InnerBoundaries) { set_attribute_value(0, (v1_OuterBoundary)); if (v2_InnerBoundaries) {set_attribute_value(1, cast_vector(*v2_InnerBoundaries)); }; return *this; } // Function implementations for IfcApplication -::Ifc4x3::IfcOrganization Ifc4x3::IfcApplication::ApplicationDeveloper() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3::IfcOrganization>(); } +::Ifc4x3::IfcOrganization Ifc4x3::IfcApplication::ApplicationDeveloper() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3::IfcOrganization>(); } void Ifc4x3::IfcApplication::setApplicationDeveloper(const ::Ifc4x3::IfcOrganization& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } std::string Ifc4x3::IfcApplication::Version() const { std::string v = get_attribute_value(1); return v; } void Ifc4x3::IfcApplication::setVersion(const std::string& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } @@ -8297,9 +8297,9 @@ std::optional< std::string > Ifc4x3::IfcAppliedValue::Name() const { if(get_attr void Ifc4x3::IfcAppliedValue::setName(const std::optional< std::string >& v) { if (v) {set_attribute_value(0, *v);} else {unset_attribute_value(0);} } std::optional< std::string > Ifc4x3::IfcAppliedValue::Description() const { if(get_attribute_value(1).isNull()) { return std::nullopt; } std::string v = get_attribute_value(1); return v; } void Ifc4x3::IfcAppliedValue::setDescription(const std::optional< std::string >& v) { if (v) {set_attribute_value(1, *v);} else {unset_attribute_value(1);} } -::Ifc4x3::IfcAppliedValueSelect Ifc4x3::IfcAppliedValue::AppliedValue() const { if(get_attribute_value(2).isNull()) { return ::Ifc4x3::IfcAppliedValueSelect{}; } return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3::IfcAppliedValueSelect>(); } +::Ifc4x3::IfcAppliedValueSelect Ifc4x3::IfcAppliedValue::AppliedValue() const { if(get_attribute_value(2).isNull()) { return ::Ifc4x3::IfcAppliedValueSelect{}; } return ((express::base)(get_attribute_value(2))).as<::Ifc4x3::IfcAppliedValueSelect>(); } void Ifc4x3::IfcAppliedValue::setAppliedValue(const ::Ifc4x3::IfcAppliedValueSelect& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } -::Ifc4x3::IfcMeasureWithUnit Ifc4x3::IfcAppliedValue::UnitBasis() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3::IfcMeasureWithUnit{}; } return ((express::Base)(get_attribute_value(3))).as<::Ifc4x3::IfcMeasureWithUnit>(); } +::Ifc4x3::IfcMeasureWithUnit Ifc4x3::IfcAppliedValue::UnitBasis() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3::IfcMeasureWithUnit{}; } return ((express::base)(get_attribute_value(3))).as<::Ifc4x3::IfcMeasureWithUnit>(); } void Ifc4x3::IfcAppliedValue::setUnitBasis(const ::Ifc4x3::IfcMeasureWithUnit& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } std::optional< std::string > Ifc4x3::IfcAppliedValue::ApplicableDate() const { if(get_attribute_value(4).isNull()) { return std::nullopt; } std::string v = get_attribute_value(4); return v; } void Ifc4x3::IfcAppliedValue::setApplicableDate(const std::optional< std::string >& v) { if (v) {set_attribute_value(4, *v);} else {unset_attribute_value(4);} } @@ -8311,13 +8311,13 @@ std::optional< std::string > Ifc4x3::IfcAppliedValue::Condition() const { if(get void Ifc4x3::IfcAppliedValue::setCondition(const std::optional< std::string >& v) { if (v) {set_attribute_value(7, *v);} else {unset_attribute_value(7);} } std::optional< ::Ifc4x3::IfcArithmeticOperatorEnum::Value > Ifc4x3::IfcAppliedValue::ArithmeticOperator() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3::IfcArithmeticOperatorEnum::FromString(get_attribute_value(8)); } void Ifc4x3::IfcAppliedValue::setArithmeticOperator(const std::optional< ::Ifc4x3::IfcArithmeticOperatorEnum::Value >& v) { if (v) {set_attribute_value(8, enumeration_reference(&::Ifc4x3::IfcArithmeticOperatorEnum::Class(), (size_t) *v));} else {unset_attribute_value(8);} } -std::optional< std::vector< ::Ifc4x3::IfcAppliedValue > > Ifc4x3::IfcAppliedValue::Components() const { if(get_attribute_value(9).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(9); return cast_vector<::Ifc4x3::IfcAppliedValue>(es); } -void Ifc4x3::IfcAppliedValue::setComponents(const std::optional< std::vector< ::Ifc4x3::IfcAppliedValue > >& v) { if (v) {set_attribute_value(9, cast_vector(*v));} else {unset_attribute_value(9);} } +std::optional< std::vector< ::Ifc4x3::IfcAppliedValue > > Ifc4x3::IfcAppliedValue::Components() const { if(get_attribute_value(9).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(9); return cast_vector<::Ifc4x3::IfcAppliedValue>(es); } +void Ifc4x3::IfcAppliedValue::setComponents(const std::optional< std::vector< ::Ifc4x3::IfcAppliedValue > >& v) { if (v) {set_attribute_value(9, cast_vector(*v));} else {unset_attribute_value(9);} } std::vector<::Ifc4x3::IfcExternalReferenceRelationship> Ifc4x3::IfcAppliedValue::HasExternalReference() const { return cast_vector(file()->get_inverse(data()->id(), IFC4X3_types[430], 3)); } const ifcopenshell::entity& Ifc4x3::IfcAppliedValue::Class() { return *((ifcopenshell::entity*)IFC4X3_types[50]); } -Ifc4x3::IfcAppliedValue Ifc4x3::IfcAppliedValue::initialize(std::optional< std::string > v1_Name, std::optional< std::string > v2_Description, ::Ifc4x3::IfcAppliedValueSelect v3_AppliedValue, ::Ifc4x3::IfcMeasureWithUnit v4_UnitBasis, std::optional< std::string > v5_ApplicableDate, std::optional< std::string > v6_FixedUntilDate, std::optional< std::string > v7_Category, std::optional< std::string > v8_Condition, std::optional< ::Ifc4x3::IfcArithmeticOperatorEnum::Value > v9_ArithmeticOperator, std::optional< std::vector< ::Ifc4x3::IfcAppliedValue > > v10_Components) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); } if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, (v3_AppliedValue));set_attribute_value(3, (v4_UnitBasis)); if (v5_ApplicableDate) {set_attribute_value(4, (*v5_ApplicableDate)); } if (v6_FixedUntilDate) {set_attribute_value(5, (*v6_FixedUntilDate)); } if (v7_Category) {set_attribute_value(6, (*v7_Category)); } if (v8_Condition) {set_attribute_value(7, (*v8_Condition)); } if (v9_ArithmeticOperator) {set_attribute_value(8, (enumeration_reference(&::Ifc4x3::IfcArithmeticOperatorEnum::Class(),(size_t)*v9_ArithmeticOperator))); } if (v10_Components) {set_attribute_value(9, cast_vector(*v10_Components)); }; return *this; } +Ifc4x3::IfcAppliedValue Ifc4x3::IfcAppliedValue::initialize(std::optional< std::string > v1_Name, std::optional< std::string > v2_Description, ::Ifc4x3::IfcAppliedValueSelect v3_AppliedValue, ::Ifc4x3::IfcMeasureWithUnit v4_UnitBasis, std::optional< std::string > v5_ApplicableDate, std::optional< std::string > v6_FixedUntilDate, std::optional< std::string > v7_Category, std::optional< std::string > v8_Condition, std::optional< ::Ifc4x3::IfcArithmeticOperatorEnum::Value > v9_ArithmeticOperator, std::optional< std::vector< ::Ifc4x3::IfcAppliedValue > > v10_Components) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); } if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, (v3_AppliedValue));set_attribute_value(3, (v4_UnitBasis)); if (v5_ApplicableDate) {set_attribute_value(4, (*v5_ApplicableDate)); } if (v6_FixedUntilDate) {set_attribute_value(5, (*v6_FixedUntilDate)); } if (v7_Category) {set_attribute_value(6, (*v7_Category)); } if (v8_Condition) {set_attribute_value(7, (*v8_Condition)); } if (v9_ArithmeticOperator) {set_attribute_value(8, (enumeration_reference(&::Ifc4x3::IfcArithmeticOperatorEnum::Class(),(size_t)*v9_ArithmeticOperator))); } if (v10_Components) {set_attribute_value(9, cast_vector(*v10_Components)); }; return *this; } // Function implementations for IfcApproval std::optional< std::string > Ifc4x3::IfcApproval::Identifier() const { if(get_attribute_value(0).isNull()) { return std::nullopt; } std::string v = get_attribute_value(0); return v; } @@ -8334,9 +8334,9 @@ std::optional< std::string > Ifc4x3::IfcApproval::Level() const { if(get_attribu void Ifc4x3::IfcApproval::setLevel(const std::optional< std::string >& v) { if (v) {set_attribute_value(5, *v);} else {unset_attribute_value(5);} } std::optional< std::string > Ifc4x3::IfcApproval::Qualifier() const { if(get_attribute_value(6).isNull()) { return std::nullopt; } std::string v = get_attribute_value(6); return v; } void Ifc4x3::IfcApproval::setQualifier(const std::optional< std::string >& v) { if (v) {set_attribute_value(6, *v);} else {unset_attribute_value(6);} } -::Ifc4x3::IfcActorSelect Ifc4x3::IfcApproval::RequestingApproval() const { if(get_attribute_value(7).isNull()) { return ::Ifc4x3::IfcActorSelect{}; } return ((express::Base)(get_attribute_value(7))).as<::Ifc4x3::IfcActorSelect>(); } +::Ifc4x3::IfcActorSelect Ifc4x3::IfcApproval::RequestingApproval() const { if(get_attribute_value(7).isNull()) { return ::Ifc4x3::IfcActorSelect{}; } return ((express::base)(get_attribute_value(7))).as<::Ifc4x3::IfcActorSelect>(); } void Ifc4x3::IfcApproval::setRequestingApproval(const ::Ifc4x3::IfcActorSelect& v) { set_attribute_value(7, v);if constexpr (false)unset_attribute_value(7); } -::Ifc4x3::IfcActorSelect Ifc4x3::IfcApproval::GivingApproval() const { if(get_attribute_value(8).isNull()) { return ::Ifc4x3::IfcActorSelect{}; } return ((express::Base)(get_attribute_value(8))).as<::Ifc4x3::IfcActorSelect>(); } +::Ifc4x3::IfcActorSelect Ifc4x3::IfcApproval::GivingApproval() const { if(get_attribute_value(8).isNull()) { return ::Ifc4x3::IfcActorSelect{}; } return ((express::base)(get_attribute_value(8))).as<::Ifc4x3::IfcActorSelect>(); } void Ifc4x3::IfcApproval::setGivingApproval(const ::Ifc4x3::IfcActorSelect& v) { set_attribute_value(8, v);if constexpr (false)unset_attribute_value(8); } std::vector<::Ifc4x3::IfcExternalReferenceRelationship> Ifc4x3::IfcApproval::HasExternalReferences() const { return cast_vector(file()->get_inverse(data()->id(), IFC4X3_types[430], 3)); } @@ -8349,17 +8349,17 @@ const ifcopenshell::entity& Ifc4x3::IfcApproval::Class() { return *((ifcopenshel Ifc4x3::IfcApproval Ifc4x3::IfcApproval::initialize(std::optional< std::string > v1_Identifier, std::optional< std::string > v2_Name, std::optional< std::string > v3_Description, std::optional< std::string > v4_TimeOfApproval, std::optional< std::string > v5_Status, std::optional< std::string > v6_Level, std::optional< std::string > v7_Qualifier, ::Ifc4x3::IfcActorSelect v8_RequestingApproval, ::Ifc4x3::IfcActorSelect v9_GivingApproval) { if (v1_Identifier) {set_attribute_value(0, (*v1_Identifier)); } if (v2_Name) {set_attribute_value(1, (*v2_Name)); } if (v3_Description) {set_attribute_value(2, (*v3_Description)); } if (v4_TimeOfApproval) {set_attribute_value(3, (*v4_TimeOfApproval)); } if (v5_Status) {set_attribute_value(4, (*v5_Status)); } if (v6_Level) {set_attribute_value(5, (*v6_Level)); } if (v7_Qualifier) {set_attribute_value(6, (*v7_Qualifier)); }set_attribute_value(7, (v8_RequestingApproval));set_attribute_value(8, (v9_GivingApproval));; return *this; } // Function implementations for IfcApprovalRelationship -::Ifc4x3::IfcApproval Ifc4x3::IfcApprovalRelationship::RelatingApproval() const { return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3::IfcApproval>(); } +::Ifc4x3::IfcApproval Ifc4x3::IfcApprovalRelationship::RelatingApproval() const { return ((express::base)(get_attribute_value(2))).as<::Ifc4x3::IfcApproval>(); } void Ifc4x3::IfcApprovalRelationship::setRelatingApproval(const ::Ifc4x3::IfcApproval& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } -std::vector< ::Ifc4x3::IfcApproval > Ifc4x3::IfcApprovalRelationship::RelatedApprovals() const { std::vector es = get_attribute_value(3); return cast_vector<::Ifc4x3::IfcApproval>(es); } -void Ifc4x3::IfcApprovalRelationship::setRelatedApprovals(const std::vector< ::Ifc4x3::IfcApproval >& v) { set_attribute_value(3, cast_vector(v));if constexpr (false)unset_attribute_value(3); } +std::vector< ::Ifc4x3::IfcApproval > Ifc4x3::IfcApprovalRelationship::RelatedApprovals() const { std::vector es = get_attribute_value(3); return cast_vector<::Ifc4x3::IfcApproval>(es); } +void Ifc4x3::IfcApprovalRelationship::setRelatedApprovals(const std::vector< ::Ifc4x3::IfcApproval >& v) { set_attribute_value(3, cast_vector(v));if constexpr (false)unset_attribute_value(3); } const ifcopenshell::entity& Ifc4x3::IfcApprovalRelationship::Class() { return *((ifcopenshell::entity*)IFC4X3_types[53]); } -Ifc4x3::IfcApprovalRelationship Ifc4x3::IfcApprovalRelationship::initialize(std::optional< std::string > v1_Name, std::optional< std::string > v2_Description, ::Ifc4x3::IfcApproval v3_RelatingApproval, std::vector< ::Ifc4x3::IfcApproval > v4_RelatedApprovals) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); } if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, (v3_RelatingApproval));set_attribute_value(3, cast_vector(v4_RelatedApprovals));; return *this; } +Ifc4x3::IfcApprovalRelationship Ifc4x3::IfcApprovalRelationship::initialize(std::optional< std::string > v1_Name, std::optional< std::string > v2_Description, ::Ifc4x3::IfcApproval v3_RelatingApproval, std::vector< ::Ifc4x3::IfcApproval > v4_RelatedApprovals) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); } if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, (v3_RelatingApproval));set_attribute_value(3, cast_vector(v4_RelatedApprovals));; return *this; } // Function implementations for IfcArbitraryClosedProfileDef -::Ifc4x3::IfcCurve Ifc4x3::IfcArbitraryClosedProfileDef::OuterCurve() const { return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3::IfcCurve>(); } +::Ifc4x3::IfcCurve Ifc4x3::IfcArbitraryClosedProfileDef::OuterCurve() const { return ((express::base)(get_attribute_value(2))).as<::Ifc4x3::IfcCurve>(); } void Ifc4x3::IfcArbitraryClosedProfileDef::setOuterCurve(const ::Ifc4x3::IfcCurve& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } @@ -8367,7 +8367,7 @@ const ifcopenshell::entity& Ifc4x3::IfcArbitraryClosedProfileDef::Class() { retu Ifc4x3::IfcArbitraryClosedProfileDef Ifc4x3::IfcArbitraryClosedProfileDef::initialize(::Ifc4x3::IfcProfileTypeEnum::Value v1_ProfileType, std::optional< std::string > v2_ProfileName, ::Ifc4x3::IfcCurve v3_OuterCurve) { set_attribute_value(0, (enumeration_reference(&::Ifc4x3::IfcProfileTypeEnum::Class(),(size_t)v1_ProfileType))); if (v2_ProfileName) {set_attribute_value(1, (*v2_ProfileName)); }set_attribute_value(2, (v3_OuterCurve));; return *this; } // Function implementations for IfcArbitraryOpenProfileDef -::Ifc4x3::IfcBoundedCurve Ifc4x3::IfcArbitraryOpenProfileDef::Curve() const { return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3::IfcBoundedCurve>(); } +::Ifc4x3::IfcBoundedCurve Ifc4x3::IfcArbitraryOpenProfileDef::Curve() const { return ((express::base)(get_attribute_value(2))).as<::Ifc4x3::IfcBoundedCurve>(); } void Ifc4x3::IfcArbitraryOpenProfileDef::setCurve(const ::Ifc4x3::IfcBoundedCurve& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } @@ -8375,31 +8375,31 @@ const ifcopenshell::entity& Ifc4x3::IfcArbitraryOpenProfileDef::Class() { return Ifc4x3::IfcArbitraryOpenProfileDef Ifc4x3::IfcArbitraryOpenProfileDef::initialize(::Ifc4x3::IfcProfileTypeEnum::Value v1_ProfileType, std::optional< std::string > v2_ProfileName, ::Ifc4x3::IfcBoundedCurve v3_Curve) { set_attribute_value(0, (enumeration_reference(&::Ifc4x3::IfcProfileTypeEnum::Class(),(size_t)v1_ProfileType))); if (v2_ProfileName) {set_attribute_value(1, (*v2_ProfileName)); }set_attribute_value(2, (v3_Curve));; return *this; } // Function implementations for IfcArbitraryProfileDefWithVoids -std::vector< ::Ifc4x3::IfcCurve > Ifc4x3::IfcArbitraryProfileDefWithVoids::InnerCurves() const { std::vector es = get_attribute_value(3); return cast_vector<::Ifc4x3::IfcCurve>(es); } -void Ifc4x3::IfcArbitraryProfileDefWithVoids::setInnerCurves(const std::vector< ::Ifc4x3::IfcCurve >& v) { set_attribute_value(3, cast_vector(v));if constexpr (false)unset_attribute_value(3); } +std::vector< ::Ifc4x3::IfcCurve > Ifc4x3::IfcArbitraryProfileDefWithVoids::InnerCurves() const { std::vector es = get_attribute_value(3); return cast_vector<::Ifc4x3::IfcCurve>(es); } +void Ifc4x3::IfcArbitraryProfileDefWithVoids::setInnerCurves(const std::vector< ::Ifc4x3::IfcCurve >& v) { set_attribute_value(3, cast_vector(v));if constexpr (false)unset_attribute_value(3); } const ifcopenshell::entity& Ifc4x3::IfcArbitraryProfileDefWithVoids::Class() { return *((ifcopenshell::entity*)IFC4X3_types[56]); } -Ifc4x3::IfcArbitraryProfileDefWithVoids Ifc4x3::IfcArbitraryProfileDefWithVoids::initialize(::Ifc4x3::IfcProfileTypeEnum::Value v1_ProfileType, std::optional< std::string > v2_ProfileName, ::Ifc4x3::IfcCurve v3_OuterCurve, std::vector< ::Ifc4x3::IfcCurve > v4_InnerCurves) { set_attribute_value(0, (enumeration_reference(&::Ifc4x3::IfcProfileTypeEnum::Class(),(size_t)v1_ProfileType))); if (v2_ProfileName) {set_attribute_value(1, (*v2_ProfileName)); }set_attribute_value(2, (v3_OuterCurve));set_attribute_value(3, cast_vector(v4_InnerCurves));; return *this; } +Ifc4x3::IfcArbitraryProfileDefWithVoids Ifc4x3::IfcArbitraryProfileDefWithVoids::initialize(::Ifc4x3::IfcProfileTypeEnum::Value v1_ProfileType, std::optional< std::string > v2_ProfileName, ::Ifc4x3::IfcCurve v3_OuterCurve, std::vector< ::Ifc4x3::IfcCurve > v4_InnerCurves) { set_attribute_value(0, (enumeration_reference(&::Ifc4x3::IfcProfileTypeEnum::Class(),(size_t)v1_ProfileType))); if (v2_ProfileName) {set_attribute_value(1, (*v2_ProfileName)); }set_attribute_value(2, (v3_OuterCurve));set_attribute_value(3, cast_vector(v4_InnerCurves));; return *this; } // Function implementations for IfcAsset std::optional< std::string > Ifc4x3::IfcAsset::Identification() const { if(get_attribute_value(5).isNull()) { return std::nullopt; } std::string v = get_attribute_value(5); return v; } void Ifc4x3::IfcAsset::setIdentification(const std::optional< std::string >& v) { if (v) {set_attribute_value(5, *v);} else {unset_attribute_value(5);} } -::Ifc4x3::IfcCostValue Ifc4x3::IfcAsset::OriginalValue() const { if(get_attribute_value(6).isNull()) { return ::Ifc4x3::IfcCostValue{}; } return ((express::Base)(get_attribute_value(6))).as<::Ifc4x3::IfcCostValue>(); } +::Ifc4x3::IfcCostValue Ifc4x3::IfcAsset::OriginalValue() const { if(get_attribute_value(6).isNull()) { return ::Ifc4x3::IfcCostValue{}; } return ((express::base)(get_attribute_value(6))).as<::Ifc4x3::IfcCostValue>(); } void Ifc4x3::IfcAsset::setOriginalValue(const ::Ifc4x3::IfcCostValue& v) { set_attribute_value(6, v);if constexpr (false)unset_attribute_value(6); } -::Ifc4x3::IfcCostValue Ifc4x3::IfcAsset::CurrentValue() const { if(get_attribute_value(7).isNull()) { return ::Ifc4x3::IfcCostValue{}; } return ((express::Base)(get_attribute_value(7))).as<::Ifc4x3::IfcCostValue>(); } +::Ifc4x3::IfcCostValue Ifc4x3::IfcAsset::CurrentValue() const { if(get_attribute_value(7).isNull()) { return ::Ifc4x3::IfcCostValue{}; } return ((express::base)(get_attribute_value(7))).as<::Ifc4x3::IfcCostValue>(); } void Ifc4x3::IfcAsset::setCurrentValue(const ::Ifc4x3::IfcCostValue& v) { set_attribute_value(7, v);if constexpr (false)unset_attribute_value(7); } -::Ifc4x3::IfcCostValue Ifc4x3::IfcAsset::TotalReplacementCost() const { if(get_attribute_value(8).isNull()) { return ::Ifc4x3::IfcCostValue{}; } return ((express::Base)(get_attribute_value(8))).as<::Ifc4x3::IfcCostValue>(); } +::Ifc4x3::IfcCostValue Ifc4x3::IfcAsset::TotalReplacementCost() const { if(get_attribute_value(8).isNull()) { return ::Ifc4x3::IfcCostValue{}; } return ((express::base)(get_attribute_value(8))).as<::Ifc4x3::IfcCostValue>(); } void Ifc4x3::IfcAsset::setTotalReplacementCost(const ::Ifc4x3::IfcCostValue& v) { set_attribute_value(8, v);if constexpr (false)unset_attribute_value(8); } -::Ifc4x3::IfcActorSelect Ifc4x3::IfcAsset::Owner() const { if(get_attribute_value(9).isNull()) { return ::Ifc4x3::IfcActorSelect{}; } return ((express::Base)(get_attribute_value(9))).as<::Ifc4x3::IfcActorSelect>(); } +::Ifc4x3::IfcActorSelect Ifc4x3::IfcAsset::Owner() const { if(get_attribute_value(9).isNull()) { return ::Ifc4x3::IfcActorSelect{}; } return ((express::base)(get_attribute_value(9))).as<::Ifc4x3::IfcActorSelect>(); } void Ifc4x3::IfcAsset::setOwner(const ::Ifc4x3::IfcActorSelect& v) { set_attribute_value(9, v);if constexpr (false)unset_attribute_value(9); } -::Ifc4x3::IfcActorSelect Ifc4x3::IfcAsset::User() const { if(get_attribute_value(10).isNull()) { return ::Ifc4x3::IfcActorSelect{}; } return ((express::Base)(get_attribute_value(10))).as<::Ifc4x3::IfcActorSelect>(); } +::Ifc4x3::IfcActorSelect Ifc4x3::IfcAsset::User() const { if(get_attribute_value(10).isNull()) { return ::Ifc4x3::IfcActorSelect{}; } return ((express::base)(get_attribute_value(10))).as<::Ifc4x3::IfcActorSelect>(); } void Ifc4x3::IfcAsset::setUser(const ::Ifc4x3::IfcActorSelect& v) { set_attribute_value(10, v);if constexpr (false)unset_attribute_value(10); } -::Ifc4x3::IfcPerson Ifc4x3::IfcAsset::ResponsiblePerson() const { if(get_attribute_value(11).isNull()) { return ::Ifc4x3::IfcPerson{}; } return ((express::Base)(get_attribute_value(11))).as<::Ifc4x3::IfcPerson>(); } +::Ifc4x3::IfcPerson Ifc4x3::IfcAsset::ResponsiblePerson() const { if(get_attribute_value(11).isNull()) { return ::Ifc4x3::IfcPerson{}; } return ((express::base)(get_attribute_value(11))).as<::Ifc4x3::IfcPerson>(); } void Ifc4x3::IfcAsset::setResponsiblePerson(const ::Ifc4x3::IfcPerson& v) { set_attribute_value(11, v);if constexpr (false)unset_attribute_value(11); } std::optional< std::string > Ifc4x3::IfcAsset::IncorporationDate() const { if(get_attribute_value(12).isNull()) { return std::nullopt; } std::string v = get_attribute_value(12); return v; } void Ifc4x3::IfcAsset::setIncorporationDate(const std::optional< std::string >& v) { if (v) {set_attribute_value(12, *v);} else {unset_attribute_value(12);} } -::Ifc4x3::IfcCostValue Ifc4x3::IfcAsset::DepreciatedValue() const { if(get_attribute_value(13).isNull()) { return ::Ifc4x3::IfcCostValue{}; } return ((express::Base)(get_attribute_value(13))).as<::Ifc4x3::IfcCostValue>(); } +::Ifc4x3::IfcCostValue Ifc4x3::IfcAsset::DepreciatedValue() const { if(get_attribute_value(13).isNull()) { return ::Ifc4x3::IfcCostValue{}; } return ((express::base)(get_attribute_value(13))).as<::Ifc4x3::IfcCostValue>(); } void Ifc4x3::IfcAsset::setDepreciatedValue(const ::Ifc4x3::IfcCostValue& v) { set_attribute_value(13, v);if constexpr (false)unset_attribute_value(13); } @@ -8450,10 +8450,10 @@ void Ifc4x3::IfcAudioVisualApplianceType::setPredefinedType(const ::Ifc4x3::IfcA const ifcopenshell::entity& Ifc4x3::IfcAudioVisualApplianceType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[65]); } -Ifc4x3::IfcAudioVisualApplianceType Ifc4x3::IfcAudioVisualApplianceType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcAudioVisualApplianceTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcAudioVisualApplianceTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3::IfcAudioVisualApplianceType Ifc4x3::IfcAudioVisualApplianceType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcAudioVisualApplianceTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcAudioVisualApplianceTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcAxis1Placement -::Ifc4x3::IfcDirection Ifc4x3::IfcAxis1Placement::Axis() const { if(get_attribute_value(1).isNull()) { return ::Ifc4x3::IfcDirection{}; } return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3::IfcDirection>(); } +::Ifc4x3::IfcDirection Ifc4x3::IfcAxis1Placement::Axis() const { if(get_attribute_value(1).isNull()) { return ::Ifc4x3::IfcDirection{}; } return ((express::base)(get_attribute_value(1))).as<::Ifc4x3::IfcDirection>(); } void Ifc4x3::IfcAxis1Placement::setAxis(const ::Ifc4x3::IfcDirection& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } @@ -8461,7 +8461,7 @@ const ifcopenshell::entity& Ifc4x3::IfcAxis1Placement::Class() { return *((ifcop Ifc4x3::IfcAxis1Placement Ifc4x3::IfcAxis1Placement::initialize(::Ifc4x3::IfcPoint v1_Location, ::Ifc4x3::IfcDirection v2_Axis) { set_attribute_value(0, (v1_Location));set_attribute_value(1, (v2_Axis));; return *this; } // Function implementations for IfcAxis2Placement2D -::Ifc4x3::IfcDirection Ifc4x3::IfcAxis2Placement2D::RefDirection() const { if(get_attribute_value(1).isNull()) { return ::Ifc4x3::IfcDirection{}; } return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3::IfcDirection>(); } +::Ifc4x3::IfcDirection Ifc4x3::IfcAxis2Placement2D::RefDirection() const { if(get_attribute_value(1).isNull()) { return ::Ifc4x3::IfcDirection{}; } return ((express::base)(get_attribute_value(1))).as<::Ifc4x3::IfcDirection>(); } void Ifc4x3::IfcAxis2Placement2D::setRefDirection(const ::Ifc4x3::IfcDirection& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } @@ -8469,9 +8469,9 @@ const ifcopenshell::entity& Ifc4x3::IfcAxis2Placement2D::Class() { return *((ifc Ifc4x3::IfcAxis2Placement2D Ifc4x3::IfcAxis2Placement2D::initialize(::Ifc4x3::IfcPoint v1_Location, ::Ifc4x3::IfcDirection v2_RefDirection) { set_attribute_value(0, (v1_Location));set_attribute_value(1, (v2_RefDirection));; return *this; } // Function implementations for IfcAxis2Placement3D -::Ifc4x3::IfcDirection Ifc4x3::IfcAxis2Placement3D::Axis() const { if(get_attribute_value(1).isNull()) { return ::Ifc4x3::IfcDirection{}; } return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3::IfcDirection>(); } +::Ifc4x3::IfcDirection Ifc4x3::IfcAxis2Placement3D::Axis() const { if(get_attribute_value(1).isNull()) { return ::Ifc4x3::IfcDirection{}; } return ((express::base)(get_attribute_value(1))).as<::Ifc4x3::IfcDirection>(); } void Ifc4x3::IfcAxis2Placement3D::setAxis(const ::Ifc4x3::IfcDirection& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } -::Ifc4x3::IfcDirection Ifc4x3::IfcAxis2Placement3D::RefDirection() const { if(get_attribute_value(2).isNull()) { return ::Ifc4x3::IfcDirection{}; } return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3::IfcDirection>(); } +::Ifc4x3::IfcDirection Ifc4x3::IfcAxis2Placement3D::RefDirection() const { if(get_attribute_value(2).isNull()) { return ::Ifc4x3::IfcDirection{}; } return ((express::base)(get_attribute_value(2))).as<::Ifc4x3::IfcDirection>(); } void Ifc4x3::IfcAxis2Placement3D::setRefDirection(const ::Ifc4x3::IfcDirection& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } @@ -8479,9 +8479,9 @@ const ifcopenshell::entity& Ifc4x3::IfcAxis2Placement3D::Class() { return *((ifc Ifc4x3::IfcAxis2Placement3D Ifc4x3::IfcAxis2Placement3D::initialize(::Ifc4x3::IfcPoint v1_Location, ::Ifc4x3::IfcDirection v2_Axis, ::Ifc4x3::IfcDirection v3_RefDirection) { set_attribute_value(0, (v1_Location));set_attribute_value(1, (v2_Axis));set_attribute_value(2, (v3_RefDirection));; return *this; } // Function implementations for IfcAxis2PlacementLinear -::Ifc4x3::IfcDirection Ifc4x3::IfcAxis2PlacementLinear::Axis() const { if(get_attribute_value(1).isNull()) { return ::Ifc4x3::IfcDirection{}; } return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3::IfcDirection>(); } +::Ifc4x3::IfcDirection Ifc4x3::IfcAxis2PlacementLinear::Axis() const { if(get_attribute_value(1).isNull()) { return ::Ifc4x3::IfcDirection{}; } return ((express::base)(get_attribute_value(1))).as<::Ifc4x3::IfcDirection>(); } void Ifc4x3::IfcAxis2PlacementLinear::setAxis(const ::Ifc4x3::IfcDirection& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } -::Ifc4x3::IfcDirection Ifc4x3::IfcAxis2PlacementLinear::RefDirection() const { if(get_attribute_value(2).isNull()) { return ::Ifc4x3::IfcDirection{}; } return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3::IfcDirection>(); } +::Ifc4x3::IfcDirection Ifc4x3::IfcAxis2PlacementLinear::RefDirection() const { if(get_attribute_value(2).isNull()) { return ::Ifc4x3::IfcDirection{}; } return ((express::base)(get_attribute_value(2))).as<::Ifc4x3::IfcDirection>(); } void Ifc4x3::IfcAxis2PlacementLinear::setRefDirection(const ::Ifc4x3::IfcDirection& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } @@ -8491,8 +8491,8 @@ Ifc4x3::IfcAxis2PlacementLinear Ifc4x3::IfcAxis2PlacementLinear::initialize(::If // Function implementations for IfcBSplineCurve int64_t Ifc4x3::IfcBSplineCurve::Degree() const { int64_t v = get_attribute_value(0); return v; } void Ifc4x3::IfcBSplineCurve::setDegree(const int64_t& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } -std::vector< ::Ifc4x3::IfcCartesianPoint > Ifc4x3::IfcBSplineCurve::ControlPointsList() const { std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3::IfcCartesianPoint>(es); } -void Ifc4x3::IfcBSplineCurve::setControlPointsList(const std::vector< ::Ifc4x3::IfcCartesianPoint >& v) { set_attribute_value(1, cast_vector(v));if constexpr (false)unset_attribute_value(1); } +std::vector< ::Ifc4x3::IfcCartesianPoint > Ifc4x3::IfcBSplineCurve::ControlPointsList() const { std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3::IfcCartesianPoint>(es); } +void Ifc4x3::IfcBSplineCurve::setControlPointsList(const std::vector< ::Ifc4x3::IfcCartesianPoint >& v) { set_attribute_value(1, cast_vector(v));if constexpr (false)unset_attribute_value(1); } ::Ifc4x3::IfcBSplineCurveForm::Value Ifc4x3::IfcBSplineCurve::CurveForm() const { return ::Ifc4x3::IfcBSplineCurveForm::FromString(get_attribute_value(2)); } void Ifc4x3::IfcBSplineCurve::setCurveForm(const ::Ifc4x3::IfcBSplineCurveForm::Value& v) { set_attribute_value(2, enumeration_reference(&::Ifc4x3::IfcBSplineCurveForm::Class(), (size_t) v));if constexpr (false)unset_attribute_value(2); } boost::logic::tribool Ifc4x3::IfcBSplineCurve::ClosedCurve() const { boost::logic::tribool v = get_attribute_value(3); return v; } @@ -8502,7 +8502,7 @@ void Ifc4x3::IfcBSplineCurve::setSelfIntersect(const boost::logic::tribool& v) { const ifcopenshell::entity& Ifc4x3::IfcBSplineCurve::Class() { return *((ifcopenshell::entity*)IFC4X3_types[108]); } -Ifc4x3::IfcBSplineCurve Ifc4x3::IfcBSplineCurve::initialize(int64_t v1_Degree, std::vector< ::Ifc4x3::IfcCartesianPoint > v2_ControlPointsList, ::Ifc4x3::IfcBSplineCurveForm::Value v3_CurveForm, boost::logic::tribool v4_ClosedCurve, boost::logic::tribool v5_SelfIntersect) { set_attribute_value(0, (v1_Degree));set_attribute_value(1, cast_vector(v2_ControlPointsList));set_attribute_value(2, (enumeration_reference(&::Ifc4x3::IfcBSplineCurveForm::Class(),(size_t)v3_CurveForm)));set_attribute_value(3, (v4_ClosedCurve));set_attribute_value(4, (v5_SelfIntersect));; return *this; } +Ifc4x3::IfcBSplineCurve Ifc4x3::IfcBSplineCurve::initialize(int64_t v1_Degree, std::vector< ::Ifc4x3::IfcCartesianPoint > v2_ControlPointsList, ::Ifc4x3::IfcBSplineCurveForm::Value v3_CurveForm, boost::logic::tribool v4_ClosedCurve, boost::logic::tribool v5_SelfIntersect) { set_attribute_value(0, (v1_Degree));set_attribute_value(1, cast_vector(v2_ControlPointsList));set_attribute_value(2, (enumeration_reference(&::Ifc4x3::IfcBSplineCurveForm::Class(),(size_t)v3_CurveForm)));set_attribute_value(3, (v4_ClosedCurve));set_attribute_value(4, (v5_SelfIntersect));; return *this; } // Function implementations for IfcBSplineCurveWithKnots std::vector< int64_t > /*[2:?]*/ Ifc4x3::IfcBSplineCurveWithKnots::KnotMultiplicities() const { std::vector< int64_t > /*[2:?]*/ v = get_attribute_value(5); return v; } @@ -8514,15 +8514,15 @@ void Ifc4x3::IfcBSplineCurveWithKnots::setKnotSpec(const ::Ifc4x3::IfcKnotType:: const ifcopenshell::entity& Ifc4x3::IfcBSplineCurveWithKnots::Class() { return *((ifcopenshell::entity*)IFC4X3_types[110]); } -Ifc4x3::IfcBSplineCurveWithKnots Ifc4x3::IfcBSplineCurveWithKnots::initialize(int64_t v1_Degree, std::vector< ::Ifc4x3::IfcCartesianPoint > v2_ControlPointsList, ::Ifc4x3::IfcBSplineCurveForm::Value v3_CurveForm, boost::logic::tribool v4_ClosedCurve, boost::logic::tribool v5_SelfIntersect, std::vector< int64_t > /*[2:?]*/ v6_KnotMultiplicities, std::vector< double > /*[2:?]*/ v7_Knots, ::Ifc4x3::IfcKnotType::Value v8_KnotSpec) { set_attribute_value(0, (v1_Degree));set_attribute_value(1, cast_vector(v2_ControlPointsList));set_attribute_value(2, (enumeration_reference(&::Ifc4x3::IfcBSplineCurveForm::Class(),(size_t)v3_CurveForm)));set_attribute_value(3, (v4_ClosedCurve));set_attribute_value(4, (v5_SelfIntersect));set_attribute_value(5, (v6_KnotMultiplicities));set_attribute_value(6, (v7_Knots));set_attribute_value(7, (enumeration_reference(&::Ifc4x3::IfcKnotType::Class(),(size_t)v8_KnotSpec)));; return *this; } +Ifc4x3::IfcBSplineCurveWithKnots Ifc4x3::IfcBSplineCurveWithKnots::initialize(int64_t v1_Degree, std::vector< ::Ifc4x3::IfcCartesianPoint > v2_ControlPointsList, ::Ifc4x3::IfcBSplineCurveForm::Value v3_CurveForm, boost::logic::tribool v4_ClosedCurve, boost::logic::tribool v5_SelfIntersect, std::vector< int64_t > /*[2:?]*/ v6_KnotMultiplicities, std::vector< double > /*[2:?]*/ v7_Knots, ::Ifc4x3::IfcKnotType::Value v8_KnotSpec) { set_attribute_value(0, (v1_Degree));set_attribute_value(1, cast_vector(v2_ControlPointsList));set_attribute_value(2, (enumeration_reference(&::Ifc4x3::IfcBSplineCurveForm::Class(),(size_t)v3_CurveForm)));set_attribute_value(3, (v4_ClosedCurve));set_attribute_value(4, (v5_SelfIntersect));set_attribute_value(5, (v6_KnotMultiplicities));set_attribute_value(6, (v7_Knots));set_attribute_value(7, (enumeration_reference(&::Ifc4x3::IfcKnotType::Class(),(size_t)v8_KnotSpec)));; return *this; } // Function implementations for IfcBSplineSurface int64_t Ifc4x3::IfcBSplineSurface::UDegree() const { int64_t v = get_attribute_value(0); return v; } void Ifc4x3::IfcBSplineSurface::setUDegree(const int64_t& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } int64_t Ifc4x3::IfcBSplineSurface::VDegree() const { int64_t v = get_attribute_value(1); return v; } void Ifc4x3::IfcBSplineSurface::setVDegree(const int64_t& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } -std::vector< std::vector< ::Ifc4x3::IfcCartesianPoint > > Ifc4x3::IfcBSplineSurface::ControlPointsList() const { std::vector> es = get_attribute_value(2); return cast_vector<::Ifc4x3::IfcCartesianPoint>(es); } -void Ifc4x3::IfcBSplineSurface::setControlPointsList(const std::vector< std::vector< ::Ifc4x3::IfcCartesianPoint > >& v) { set_attribute_value(2, cast_vector(v));if constexpr (false)unset_attribute_value(2); } +std::vector< std::vector< ::Ifc4x3::IfcCartesianPoint > > Ifc4x3::IfcBSplineSurface::ControlPointsList() const { std::vector> es = get_attribute_value(2); return cast_vector<::Ifc4x3::IfcCartesianPoint>(es); } +void Ifc4x3::IfcBSplineSurface::setControlPointsList(const std::vector< std::vector< ::Ifc4x3::IfcCartesianPoint > >& v) { set_attribute_value(2, cast_vector(v));if constexpr (false)unset_attribute_value(2); } ::Ifc4x3::IfcBSplineSurfaceForm::Value Ifc4x3::IfcBSplineSurface::SurfaceForm() const { return ::Ifc4x3::IfcBSplineSurfaceForm::FromString(get_attribute_value(3)); } void Ifc4x3::IfcBSplineSurface::setSurfaceForm(const ::Ifc4x3::IfcBSplineSurfaceForm::Value& v) { set_attribute_value(3, enumeration_reference(&::Ifc4x3::IfcBSplineSurfaceForm::Class(), (size_t) v));if constexpr (false)unset_attribute_value(3); } boost::logic::tribool Ifc4x3::IfcBSplineSurface::UClosed() const { boost::logic::tribool v = get_attribute_value(4); return v; } @@ -8534,7 +8534,7 @@ void Ifc4x3::IfcBSplineSurface::setSelfIntersect(const boost::logic::tribool& v) const ifcopenshell::entity& Ifc4x3::IfcBSplineSurface::Class() { return *((ifcopenshell::entity*)IFC4X3_types[111]); } -Ifc4x3::IfcBSplineSurface Ifc4x3::IfcBSplineSurface::initialize(int64_t v1_UDegree, int64_t v2_VDegree, std::vector< std::vector< ::Ifc4x3::IfcCartesianPoint > > v3_ControlPointsList, ::Ifc4x3::IfcBSplineSurfaceForm::Value v4_SurfaceForm, boost::logic::tribool v5_UClosed, boost::logic::tribool v6_VClosed, boost::logic::tribool v7_SelfIntersect) { set_attribute_value(0, (v1_UDegree));set_attribute_value(1, (v2_VDegree));set_attribute_value(2, cast_vector(v3_ControlPointsList));set_attribute_value(3, (enumeration_reference(&::Ifc4x3::IfcBSplineSurfaceForm::Class(),(size_t)v4_SurfaceForm)));set_attribute_value(4, (v5_UClosed));set_attribute_value(5, (v6_VClosed));set_attribute_value(6, (v7_SelfIntersect));; return *this; } +Ifc4x3::IfcBSplineSurface Ifc4x3::IfcBSplineSurface::initialize(int64_t v1_UDegree, int64_t v2_VDegree, std::vector< std::vector< ::Ifc4x3::IfcCartesianPoint > > v3_ControlPointsList, ::Ifc4x3::IfcBSplineSurfaceForm::Value v4_SurfaceForm, boost::logic::tribool v5_UClosed, boost::logic::tribool v6_VClosed, boost::logic::tribool v7_SelfIntersect) { set_attribute_value(0, (v1_UDegree));set_attribute_value(1, (v2_VDegree));set_attribute_value(2, cast_vector(v3_ControlPointsList));set_attribute_value(3, (enumeration_reference(&::Ifc4x3::IfcBSplineSurfaceForm::Class(),(size_t)v4_SurfaceForm)));set_attribute_value(4, (v5_UClosed));set_attribute_value(5, (v6_VClosed));set_attribute_value(6, (v7_SelfIntersect));; return *this; } // Function implementations for IfcBSplineSurfaceWithKnots std::vector< int64_t > /*[2:?]*/ Ifc4x3::IfcBSplineSurfaceWithKnots::UMultiplicities() const { std::vector< int64_t > /*[2:?]*/ v = get_attribute_value(7); return v; } @@ -8550,7 +8550,7 @@ void Ifc4x3::IfcBSplineSurfaceWithKnots::setKnotSpec(const ::Ifc4x3::IfcKnotType const ifcopenshell::entity& Ifc4x3::IfcBSplineSurfaceWithKnots::Class() { return *((ifcopenshell::entity*)IFC4X3_types[113]); } -Ifc4x3::IfcBSplineSurfaceWithKnots Ifc4x3::IfcBSplineSurfaceWithKnots::initialize(int64_t v1_UDegree, int64_t v2_VDegree, std::vector< std::vector< ::Ifc4x3::IfcCartesianPoint > > v3_ControlPointsList, ::Ifc4x3::IfcBSplineSurfaceForm::Value v4_SurfaceForm, boost::logic::tribool v5_UClosed, boost::logic::tribool v6_VClosed, boost::logic::tribool v7_SelfIntersect, std::vector< int64_t > /*[2:?]*/ v8_UMultiplicities, std::vector< int64_t > /*[2:?]*/ v9_VMultiplicities, std::vector< double > /*[2:?]*/ v10_UKnots, std::vector< double > /*[2:?]*/ v11_VKnots, ::Ifc4x3::IfcKnotType::Value v12_KnotSpec) { set_attribute_value(0, (v1_UDegree));set_attribute_value(1, (v2_VDegree));set_attribute_value(2, cast_vector(v3_ControlPointsList));set_attribute_value(3, (enumeration_reference(&::Ifc4x3::IfcBSplineSurfaceForm::Class(),(size_t)v4_SurfaceForm)));set_attribute_value(4, (v5_UClosed));set_attribute_value(5, (v6_VClosed));set_attribute_value(6, (v7_SelfIntersect));set_attribute_value(7, (v8_UMultiplicities));set_attribute_value(8, (v9_VMultiplicities));set_attribute_value(9, (v10_UKnots));set_attribute_value(10, (v11_VKnots));set_attribute_value(11, (enumeration_reference(&::Ifc4x3::IfcKnotType::Class(),(size_t)v12_KnotSpec)));; return *this; } +Ifc4x3::IfcBSplineSurfaceWithKnots Ifc4x3::IfcBSplineSurfaceWithKnots::initialize(int64_t v1_UDegree, int64_t v2_VDegree, std::vector< std::vector< ::Ifc4x3::IfcCartesianPoint > > v3_ControlPointsList, ::Ifc4x3::IfcBSplineSurfaceForm::Value v4_SurfaceForm, boost::logic::tribool v5_UClosed, boost::logic::tribool v6_VClosed, boost::logic::tribool v7_SelfIntersect, std::vector< int64_t > /*[2:?]*/ v8_UMultiplicities, std::vector< int64_t > /*[2:?]*/ v9_VMultiplicities, std::vector< double > /*[2:?]*/ v10_UKnots, std::vector< double > /*[2:?]*/ v11_VKnots, ::Ifc4x3::IfcKnotType::Value v12_KnotSpec) { set_attribute_value(0, (v1_UDegree));set_attribute_value(1, (v2_VDegree));set_attribute_value(2, cast_vector(v3_ControlPointsList));set_attribute_value(3, (enumeration_reference(&::Ifc4x3::IfcBSplineSurfaceForm::Class(),(size_t)v4_SurfaceForm)));set_attribute_value(4, (v5_UClosed));set_attribute_value(5, (v6_VClosed));set_attribute_value(6, (v7_SelfIntersect));set_attribute_value(7, (v8_UMultiplicities));set_attribute_value(8, (v9_VMultiplicities));set_attribute_value(9, (v10_UKnots));set_attribute_value(10, (v11_VKnots));set_attribute_value(11, (enumeration_reference(&::Ifc4x3::IfcKnotType::Class(),(size_t)v12_KnotSpec)));; return *this; } // Function implementations for IfcBeam std::optional< ::Ifc4x3::IfcBeamTypeEnum::Value > Ifc4x3::IfcBeam::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3::IfcBeamTypeEnum::FromString(get_attribute_value(8)); } @@ -8566,7 +8566,7 @@ void Ifc4x3::IfcBeamType::setPredefinedType(const ::Ifc4x3::IfcBeamTypeEnum::Val const ifcopenshell::entity& Ifc4x3::IfcBeamType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[73]); } -Ifc4x3::IfcBeamType Ifc4x3::IfcBeamType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcBeamTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcBeamTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3::IfcBeamType Ifc4x3::IfcBeamType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcBeamTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcBeamTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcBearing std::optional< ::Ifc4x3::IfcBearingTypeEnum::Value > Ifc4x3::IfcBearing::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3::IfcBearingTypeEnum::FromString(get_attribute_value(8)); } @@ -8582,7 +8582,7 @@ void Ifc4x3::IfcBearingType::setPredefinedType(const ::Ifc4x3::IfcBearingTypeEnu const ifcopenshell::entity& Ifc4x3::IfcBearingType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[76]); } -Ifc4x3::IfcBearingType Ifc4x3::IfcBearingType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcBearingTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcBearingTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3::IfcBearingType Ifc4x3::IfcBearingType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcBearingTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcBearingTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcBlobTexture std::string Ifc4x3::IfcBlobTexture::RasterFormat() const { std::string v = get_attribute_value(5); return v; } @@ -8620,7 +8620,7 @@ void Ifc4x3::IfcBoilerType::setPredefinedType(const ::Ifc4x3::IfcBoilerTypeEnum: const ifcopenshell::entity& Ifc4x3::IfcBoilerType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[85]); } -Ifc4x3::IfcBoilerType Ifc4x3::IfcBoilerType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcBoilerTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcBoilerTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3::IfcBoilerType Ifc4x3::IfcBoilerType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcBoilerTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcBoilerTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcBooleanClippingResult @@ -8631,9 +8631,9 @@ Ifc4x3::IfcBooleanClippingResult Ifc4x3::IfcBooleanClippingResult::initialize(:: // Function implementations for IfcBooleanResult ::Ifc4x3::IfcBooleanOperator::Value Ifc4x3::IfcBooleanResult::Operator() const { return ::Ifc4x3::IfcBooleanOperator::FromString(get_attribute_value(0)); } void Ifc4x3::IfcBooleanResult::setOperator(const ::Ifc4x3::IfcBooleanOperator::Value& v) { set_attribute_value(0, enumeration_reference(&::Ifc4x3::IfcBooleanOperator::Class(), (size_t) v));if constexpr (false)unset_attribute_value(0); } -::Ifc4x3::IfcBooleanOperand Ifc4x3::IfcBooleanResult::FirstOperand() const { return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3::IfcBooleanOperand>(); } +::Ifc4x3::IfcBooleanOperand Ifc4x3::IfcBooleanResult::FirstOperand() const { return ((express::base)(get_attribute_value(1))).as<::Ifc4x3::IfcBooleanOperand>(); } void Ifc4x3::IfcBooleanResult::setFirstOperand(const ::Ifc4x3::IfcBooleanOperand& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } -::Ifc4x3::IfcBooleanOperand Ifc4x3::IfcBooleanResult::SecondOperand() const { return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3::IfcBooleanOperand>(); } +::Ifc4x3::IfcBooleanOperand Ifc4x3::IfcBooleanResult::SecondOperand() const { return ((express::base)(get_attribute_value(2))).as<::Ifc4x3::IfcBooleanOperand>(); } void Ifc4x3::IfcBooleanResult::setSecondOperand(const ::Ifc4x3::IfcBooleanOperand& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } @@ -8658,20 +8658,20 @@ Ifc4x3::IfcBoundaryCondition Ifc4x3::IfcBoundaryCondition::initialize(std::optio const ifcopenshell::entity& Ifc4x3::IfcBoundaryCurve::Class() { return *((ifcopenshell::entity*)IFC4X3_types[94]); } -Ifc4x3::IfcBoundaryCurve Ifc4x3::IfcBoundaryCurve::initialize(std::vector< ::Ifc4x3::IfcSegment > v1_Segments, boost::logic::tribool v2_SelfIntersect) { set_attribute_value(0, cast_vector(v1_Segments));set_attribute_value(1, (v2_SelfIntersect));; return *this; } +Ifc4x3::IfcBoundaryCurve Ifc4x3::IfcBoundaryCurve::initialize(std::vector< ::Ifc4x3::IfcSegment > v1_Segments, boost::logic::tribool v2_SelfIntersect) { set_attribute_value(0, cast_vector(v1_Segments));set_attribute_value(1, (v2_SelfIntersect));; return *this; } // Function implementations for IfcBoundaryEdgeCondition -::Ifc4x3::IfcModulusOfTranslationalSubgradeReactionSelect Ifc4x3::IfcBoundaryEdgeCondition::TranslationalStiffnessByLengthX() const { if(get_attribute_value(1).isNull()) { return ::Ifc4x3::IfcModulusOfTranslationalSubgradeReactionSelect{}; } return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3::IfcModulusOfTranslationalSubgradeReactionSelect>(); } +::Ifc4x3::IfcModulusOfTranslationalSubgradeReactionSelect Ifc4x3::IfcBoundaryEdgeCondition::TranslationalStiffnessByLengthX() const { if(get_attribute_value(1).isNull()) { return ::Ifc4x3::IfcModulusOfTranslationalSubgradeReactionSelect{}; } return ((express::base)(get_attribute_value(1))).as<::Ifc4x3::IfcModulusOfTranslationalSubgradeReactionSelect>(); } void Ifc4x3::IfcBoundaryEdgeCondition::setTranslationalStiffnessByLengthX(const ::Ifc4x3::IfcModulusOfTranslationalSubgradeReactionSelect& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } -::Ifc4x3::IfcModulusOfTranslationalSubgradeReactionSelect Ifc4x3::IfcBoundaryEdgeCondition::TranslationalStiffnessByLengthY() const { if(get_attribute_value(2).isNull()) { return ::Ifc4x3::IfcModulusOfTranslationalSubgradeReactionSelect{}; } return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3::IfcModulusOfTranslationalSubgradeReactionSelect>(); } +::Ifc4x3::IfcModulusOfTranslationalSubgradeReactionSelect Ifc4x3::IfcBoundaryEdgeCondition::TranslationalStiffnessByLengthY() const { if(get_attribute_value(2).isNull()) { return ::Ifc4x3::IfcModulusOfTranslationalSubgradeReactionSelect{}; } return ((express::base)(get_attribute_value(2))).as<::Ifc4x3::IfcModulusOfTranslationalSubgradeReactionSelect>(); } void Ifc4x3::IfcBoundaryEdgeCondition::setTranslationalStiffnessByLengthY(const ::Ifc4x3::IfcModulusOfTranslationalSubgradeReactionSelect& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } -::Ifc4x3::IfcModulusOfTranslationalSubgradeReactionSelect Ifc4x3::IfcBoundaryEdgeCondition::TranslationalStiffnessByLengthZ() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3::IfcModulusOfTranslationalSubgradeReactionSelect{}; } return ((express::Base)(get_attribute_value(3))).as<::Ifc4x3::IfcModulusOfTranslationalSubgradeReactionSelect>(); } +::Ifc4x3::IfcModulusOfTranslationalSubgradeReactionSelect Ifc4x3::IfcBoundaryEdgeCondition::TranslationalStiffnessByLengthZ() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3::IfcModulusOfTranslationalSubgradeReactionSelect{}; } return ((express::base)(get_attribute_value(3))).as<::Ifc4x3::IfcModulusOfTranslationalSubgradeReactionSelect>(); } void Ifc4x3::IfcBoundaryEdgeCondition::setTranslationalStiffnessByLengthZ(const ::Ifc4x3::IfcModulusOfTranslationalSubgradeReactionSelect& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } -::Ifc4x3::IfcModulusOfRotationalSubgradeReactionSelect Ifc4x3::IfcBoundaryEdgeCondition::RotationalStiffnessByLengthX() const { if(get_attribute_value(4).isNull()) { return ::Ifc4x3::IfcModulusOfRotationalSubgradeReactionSelect{}; } return ((express::Base)(get_attribute_value(4))).as<::Ifc4x3::IfcModulusOfRotationalSubgradeReactionSelect>(); } +::Ifc4x3::IfcModulusOfRotationalSubgradeReactionSelect Ifc4x3::IfcBoundaryEdgeCondition::RotationalStiffnessByLengthX() const { if(get_attribute_value(4).isNull()) { return ::Ifc4x3::IfcModulusOfRotationalSubgradeReactionSelect{}; } return ((express::base)(get_attribute_value(4))).as<::Ifc4x3::IfcModulusOfRotationalSubgradeReactionSelect>(); } void Ifc4x3::IfcBoundaryEdgeCondition::setRotationalStiffnessByLengthX(const ::Ifc4x3::IfcModulusOfRotationalSubgradeReactionSelect& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } -::Ifc4x3::IfcModulusOfRotationalSubgradeReactionSelect Ifc4x3::IfcBoundaryEdgeCondition::RotationalStiffnessByLengthY() const { if(get_attribute_value(5).isNull()) { return ::Ifc4x3::IfcModulusOfRotationalSubgradeReactionSelect{}; } return ((express::Base)(get_attribute_value(5))).as<::Ifc4x3::IfcModulusOfRotationalSubgradeReactionSelect>(); } +::Ifc4x3::IfcModulusOfRotationalSubgradeReactionSelect Ifc4x3::IfcBoundaryEdgeCondition::RotationalStiffnessByLengthY() const { if(get_attribute_value(5).isNull()) { return ::Ifc4x3::IfcModulusOfRotationalSubgradeReactionSelect{}; } return ((express::base)(get_attribute_value(5))).as<::Ifc4x3::IfcModulusOfRotationalSubgradeReactionSelect>(); } void Ifc4x3::IfcBoundaryEdgeCondition::setRotationalStiffnessByLengthY(const ::Ifc4x3::IfcModulusOfRotationalSubgradeReactionSelect& v) { set_attribute_value(5, v);if constexpr (false)unset_attribute_value(5); } -::Ifc4x3::IfcModulusOfRotationalSubgradeReactionSelect Ifc4x3::IfcBoundaryEdgeCondition::RotationalStiffnessByLengthZ() const { if(get_attribute_value(6).isNull()) { return ::Ifc4x3::IfcModulusOfRotationalSubgradeReactionSelect{}; } return ((express::Base)(get_attribute_value(6))).as<::Ifc4x3::IfcModulusOfRotationalSubgradeReactionSelect>(); } +::Ifc4x3::IfcModulusOfRotationalSubgradeReactionSelect Ifc4x3::IfcBoundaryEdgeCondition::RotationalStiffnessByLengthZ() const { if(get_attribute_value(6).isNull()) { return ::Ifc4x3::IfcModulusOfRotationalSubgradeReactionSelect{}; } return ((express::base)(get_attribute_value(6))).as<::Ifc4x3::IfcModulusOfRotationalSubgradeReactionSelect>(); } void Ifc4x3::IfcBoundaryEdgeCondition::setRotationalStiffnessByLengthZ(const ::Ifc4x3::IfcModulusOfRotationalSubgradeReactionSelect& v) { set_attribute_value(6, v);if constexpr (false)unset_attribute_value(6); } @@ -8679,11 +8679,11 @@ const ifcopenshell::entity& Ifc4x3::IfcBoundaryEdgeCondition::Class() { return * Ifc4x3::IfcBoundaryEdgeCondition Ifc4x3::IfcBoundaryEdgeCondition::initialize(std::optional< std::string > v1_Name, ::Ifc4x3::IfcModulusOfTranslationalSubgradeReactionSelect v2_TranslationalStiffnessByLengthX, ::Ifc4x3::IfcModulusOfTranslationalSubgradeReactionSelect v3_TranslationalStiffnessByLengthY, ::Ifc4x3::IfcModulusOfTranslationalSubgradeReactionSelect v4_TranslationalStiffnessByLengthZ, ::Ifc4x3::IfcModulusOfRotationalSubgradeReactionSelect v5_RotationalStiffnessByLengthX, ::Ifc4x3::IfcModulusOfRotationalSubgradeReactionSelect v6_RotationalStiffnessByLengthY, ::Ifc4x3::IfcModulusOfRotationalSubgradeReactionSelect v7_RotationalStiffnessByLengthZ) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); }set_attribute_value(1, (v2_TranslationalStiffnessByLengthX));set_attribute_value(2, (v3_TranslationalStiffnessByLengthY));set_attribute_value(3, (v4_TranslationalStiffnessByLengthZ));set_attribute_value(4, (v5_RotationalStiffnessByLengthX));set_attribute_value(5, (v6_RotationalStiffnessByLengthY));set_attribute_value(6, (v7_RotationalStiffnessByLengthZ));; return *this; } // Function implementations for IfcBoundaryFaceCondition -::Ifc4x3::IfcModulusOfSubgradeReactionSelect Ifc4x3::IfcBoundaryFaceCondition::TranslationalStiffnessByAreaX() const { if(get_attribute_value(1).isNull()) { return ::Ifc4x3::IfcModulusOfSubgradeReactionSelect{}; } return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3::IfcModulusOfSubgradeReactionSelect>(); } +::Ifc4x3::IfcModulusOfSubgradeReactionSelect Ifc4x3::IfcBoundaryFaceCondition::TranslationalStiffnessByAreaX() const { if(get_attribute_value(1).isNull()) { return ::Ifc4x3::IfcModulusOfSubgradeReactionSelect{}; } return ((express::base)(get_attribute_value(1))).as<::Ifc4x3::IfcModulusOfSubgradeReactionSelect>(); } void Ifc4x3::IfcBoundaryFaceCondition::setTranslationalStiffnessByAreaX(const ::Ifc4x3::IfcModulusOfSubgradeReactionSelect& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } -::Ifc4x3::IfcModulusOfSubgradeReactionSelect Ifc4x3::IfcBoundaryFaceCondition::TranslationalStiffnessByAreaY() const { if(get_attribute_value(2).isNull()) { return ::Ifc4x3::IfcModulusOfSubgradeReactionSelect{}; } return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3::IfcModulusOfSubgradeReactionSelect>(); } +::Ifc4x3::IfcModulusOfSubgradeReactionSelect Ifc4x3::IfcBoundaryFaceCondition::TranslationalStiffnessByAreaY() const { if(get_attribute_value(2).isNull()) { return ::Ifc4x3::IfcModulusOfSubgradeReactionSelect{}; } return ((express::base)(get_attribute_value(2))).as<::Ifc4x3::IfcModulusOfSubgradeReactionSelect>(); } void Ifc4x3::IfcBoundaryFaceCondition::setTranslationalStiffnessByAreaY(const ::Ifc4x3::IfcModulusOfSubgradeReactionSelect& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } -::Ifc4x3::IfcModulusOfSubgradeReactionSelect Ifc4x3::IfcBoundaryFaceCondition::TranslationalStiffnessByAreaZ() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3::IfcModulusOfSubgradeReactionSelect{}; } return ((express::Base)(get_attribute_value(3))).as<::Ifc4x3::IfcModulusOfSubgradeReactionSelect>(); } +::Ifc4x3::IfcModulusOfSubgradeReactionSelect Ifc4x3::IfcBoundaryFaceCondition::TranslationalStiffnessByAreaZ() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3::IfcModulusOfSubgradeReactionSelect{}; } return ((express::base)(get_attribute_value(3))).as<::Ifc4x3::IfcModulusOfSubgradeReactionSelect>(); } void Ifc4x3::IfcBoundaryFaceCondition::setTranslationalStiffnessByAreaZ(const ::Ifc4x3::IfcModulusOfSubgradeReactionSelect& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } @@ -8691,17 +8691,17 @@ const ifcopenshell::entity& Ifc4x3::IfcBoundaryFaceCondition::Class() { return * Ifc4x3::IfcBoundaryFaceCondition Ifc4x3::IfcBoundaryFaceCondition::initialize(std::optional< std::string > v1_Name, ::Ifc4x3::IfcModulusOfSubgradeReactionSelect v2_TranslationalStiffnessByAreaX, ::Ifc4x3::IfcModulusOfSubgradeReactionSelect v3_TranslationalStiffnessByAreaY, ::Ifc4x3::IfcModulusOfSubgradeReactionSelect v4_TranslationalStiffnessByAreaZ) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); }set_attribute_value(1, (v2_TranslationalStiffnessByAreaX));set_attribute_value(2, (v3_TranslationalStiffnessByAreaY));set_attribute_value(3, (v4_TranslationalStiffnessByAreaZ));; return *this; } // Function implementations for IfcBoundaryNodeCondition -::Ifc4x3::IfcTranslationalStiffnessSelect Ifc4x3::IfcBoundaryNodeCondition::TranslationalStiffnessX() const { if(get_attribute_value(1).isNull()) { return ::Ifc4x3::IfcTranslationalStiffnessSelect{}; } return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3::IfcTranslationalStiffnessSelect>(); } +::Ifc4x3::IfcTranslationalStiffnessSelect Ifc4x3::IfcBoundaryNodeCondition::TranslationalStiffnessX() const { if(get_attribute_value(1).isNull()) { return ::Ifc4x3::IfcTranslationalStiffnessSelect{}; } return ((express::base)(get_attribute_value(1))).as<::Ifc4x3::IfcTranslationalStiffnessSelect>(); } void Ifc4x3::IfcBoundaryNodeCondition::setTranslationalStiffnessX(const ::Ifc4x3::IfcTranslationalStiffnessSelect& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } -::Ifc4x3::IfcTranslationalStiffnessSelect Ifc4x3::IfcBoundaryNodeCondition::TranslationalStiffnessY() const { if(get_attribute_value(2).isNull()) { return ::Ifc4x3::IfcTranslationalStiffnessSelect{}; } return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3::IfcTranslationalStiffnessSelect>(); } +::Ifc4x3::IfcTranslationalStiffnessSelect Ifc4x3::IfcBoundaryNodeCondition::TranslationalStiffnessY() const { if(get_attribute_value(2).isNull()) { return ::Ifc4x3::IfcTranslationalStiffnessSelect{}; } return ((express::base)(get_attribute_value(2))).as<::Ifc4x3::IfcTranslationalStiffnessSelect>(); } void Ifc4x3::IfcBoundaryNodeCondition::setTranslationalStiffnessY(const ::Ifc4x3::IfcTranslationalStiffnessSelect& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } -::Ifc4x3::IfcTranslationalStiffnessSelect Ifc4x3::IfcBoundaryNodeCondition::TranslationalStiffnessZ() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3::IfcTranslationalStiffnessSelect{}; } return ((express::Base)(get_attribute_value(3))).as<::Ifc4x3::IfcTranslationalStiffnessSelect>(); } +::Ifc4x3::IfcTranslationalStiffnessSelect Ifc4x3::IfcBoundaryNodeCondition::TranslationalStiffnessZ() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3::IfcTranslationalStiffnessSelect{}; } return ((express::base)(get_attribute_value(3))).as<::Ifc4x3::IfcTranslationalStiffnessSelect>(); } void Ifc4x3::IfcBoundaryNodeCondition::setTranslationalStiffnessZ(const ::Ifc4x3::IfcTranslationalStiffnessSelect& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } -::Ifc4x3::IfcRotationalStiffnessSelect Ifc4x3::IfcBoundaryNodeCondition::RotationalStiffnessX() const { if(get_attribute_value(4).isNull()) { return ::Ifc4x3::IfcRotationalStiffnessSelect{}; } return ((express::Base)(get_attribute_value(4))).as<::Ifc4x3::IfcRotationalStiffnessSelect>(); } +::Ifc4x3::IfcRotationalStiffnessSelect Ifc4x3::IfcBoundaryNodeCondition::RotationalStiffnessX() const { if(get_attribute_value(4).isNull()) { return ::Ifc4x3::IfcRotationalStiffnessSelect{}; } return ((express::base)(get_attribute_value(4))).as<::Ifc4x3::IfcRotationalStiffnessSelect>(); } void Ifc4x3::IfcBoundaryNodeCondition::setRotationalStiffnessX(const ::Ifc4x3::IfcRotationalStiffnessSelect& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } -::Ifc4x3::IfcRotationalStiffnessSelect Ifc4x3::IfcBoundaryNodeCondition::RotationalStiffnessY() const { if(get_attribute_value(5).isNull()) { return ::Ifc4x3::IfcRotationalStiffnessSelect{}; } return ((express::Base)(get_attribute_value(5))).as<::Ifc4x3::IfcRotationalStiffnessSelect>(); } +::Ifc4x3::IfcRotationalStiffnessSelect Ifc4x3::IfcBoundaryNodeCondition::RotationalStiffnessY() const { if(get_attribute_value(5).isNull()) { return ::Ifc4x3::IfcRotationalStiffnessSelect{}; } return ((express::base)(get_attribute_value(5))).as<::Ifc4x3::IfcRotationalStiffnessSelect>(); } void Ifc4x3::IfcBoundaryNodeCondition::setRotationalStiffnessY(const ::Ifc4x3::IfcRotationalStiffnessSelect& v) { set_attribute_value(5, v);if constexpr (false)unset_attribute_value(5); } -::Ifc4x3::IfcRotationalStiffnessSelect Ifc4x3::IfcBoundaryNodeCondition::RotationalStiffnessZ() const { if(get_attribute_value(6).isNull()) { return ::Ifc4x3::IfcRotationalStiffnessSelect{}; } return ((express::Base)(get_attribute_value(6))).as<::Ifc4x3::IfcRotationalStiffnessSelect>(); } +::Ifc4x3::IfcRotationalStiffnessSelect Ifc4x3::IfcBoundaryNodeCondition::RotationalStiffnessZ() const { if(get_attribute_value(6).isNull()) { return ::Ifc4x3::IfcRotationalStiffnessSelect{}; } return ((express::base)(get_attribute_value(6))).as<::Ifc4x3::IfcRotationalStiffnessSelect>(); } void Ifc4x3::IfcBoundaryNodeCondition::setRotationalStiffnessZ(const ::Ifc4x3::IfcRotationalStiffnessSelect& v) { set_attribute_value(6, v);if constexpr (false)unset_attribute_value(6); } @@ -8709,7 +8709,7 @@ const ifcopenshell::entity& Ifc4x3::IfcBoundaryNodeCondition::Class() { return * Ifc4x3::IfcBoundaryNodeCondition Ifc4x3::IfcBoundaryNodeCondition::initialize(std::optional< std::string > v1_Name, ::Ifc4x3::IfcTranslationalStiffnessSelect v2_TranslationalStiffnessX, ::Ifc4x3::IfcTranslationalStiffnessSelect v3_TranslationalStiffnessY, ::Ifc4x3::IfcTranslationalStiffnessSelect v4_TranslationalStiffnessZ, ::Ifc4x3::IfcRotationalStiffnessSelect v5_RotationalStiffnessX, ::Ifc4x3::IfcRotationalStiffnessSelect v6_RotationalStiffnessY, ::Ifc4x3::IfcRotationalStiffnessSelect v7_RotationalStiffnessZ) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); }set_attribute_value(1, (v2_TranslationalStiffnessX));set_attribute_value(2, (v3_TranslationalStiffnessY));set_attribute_value(3, (v4_TranslationalStiffnessZ));set_attribute_value(4, (v5_RotationalStiffnessX));set_attribute_value(5, (v6_RotationalStiffnessY));set_attribute_value(6, (v7_RotationalStiffnessZ));; return *this; } // Function implementations for IfcBoundaryNodeConditionWarping -::Ifc4x3::IfcWarpingStiffnessSelect Ifc4x3::IfcBoundaryNodeConditionWarping::WarpingStiffness() const { if(get_attribute_value(7).isNull()) { return ::Ifc4x3::IfcWarpingStiffnessSelect{}; } return ((express::Base)(get_attribute_value(7))).as<::Ifc4x3::IfcWarpingStiffnessSelect>(); } +::Ifc4x3::IfcWarpingStiffnessSelect Ifc4x3::IfcBoundaryNodeConditionWarping::WarpingStiffness() const { if(get_attribute_value(7).isNull()) { return ::Ifc4x3::IfcWarpingStiffnessSelect{}; } return ((express::base)(get_attribute_value(7))).as<::Ifc4x3::IfcWarpingStiffnessSelect>(); } void Ifc4x3::IfcBoundaryNodeConditionWarping::setWarpingStiffness(const ::Ifc4x3::IfcWarpingStiffnessSelect& v) { set_attribute_value(7, v);if constexpr (false)unset_attribute_value(7); } @@ -8729,7 +8729,7 @@ const ifcopenshell::entity& Ifc4x3::IfcBoundedSurface::Class() { return *((ifcop Ifc4x3::IfcBoundedSurface Ifc4x3::IfcBoundedSurface::initialize() { ; return *this; } // Function implementations for IfcBoundingBox -::Ifc4x3::IfcCartesianPoint Ifc4x3::IfcBoundingBox::Corner() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3::IfcCartesianPoint>(); } +::Ifc4x3::IfcCartesianPoint Ifc4x3::IfcBoundingBox::Corner() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3::IfcCartesianPoint>(); } void Ifc4x3::IfcBoundingBox::setCorner(const ::Ifc4x3::IfcCartesianPoint& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } double Ifc4x3::IfcBoundingBox::XDim() const { double v = get_attribute_value(1); return v; } void Ifc4x3::IfcBoundingBox::setXDim(const double& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } @@ -8743,7 +8743,7 @@ const ifcopenshell::entity& Ifc4x3::IfcBoundingBox::Class() { return *((ifcopens Ifc4x3::IfcBoundingBox Ifc4x3::IfcBoundingBox::initialize(::Ifc4x3::IfcCartesianPoint v1_Corner, double v2_XDim, double v3_YDim, double v4_ZDim) { set_attribute_value(0, (v1_Corner));set_attribute_value(1, (v2_XDim));set_attribute_value(2, (v3_YDim));set_attribute_value(3, (v4_ZDim));; return *this; } // Function implementations for IfcBoxedHalfSpace -::Ifc4x3::IfcBoundingBox Ifc4x3::IfcBoxedHalfSpace::Enclosure() const { return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3::IfcBoundingBox>(); } +::Ifc4x3::IfcBoundingBox Ifc4x3::IfcBoxedHalfSpace::Enclosure() const { return ((express::base)(get_attribute_value(2))).as<::Ifc4x3::IfcBoundingBox>(); } void Ifc4x3::IfcBoxedHalfSpace::setEnclosure(const ::Ifc4x3::IfcBoundingBox& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } @@ -8771,7 +8771,7 @@ std::optional< double > Ifc4x3::IfcBuilding::ElevationOfRefHeight() const { if(g void Ifc4x3::IfcBuilding::setElevationOfRefHeight(const std::optional< double >& v) { if (v) {set_attribute_value(9, *v);} else {unset_attribute_value(9);} } std::optional< double > Ifc4x3::IfcBuilding::ElevationOfTerrain() const { if(get_attribute_value(10).isNull()) { return std::nullopt; } double v = get_attribute_value(10); return v; } void Ifc4x3::IfcBuilding::setElevationOfTerrain(const std::optional< double >& v) { if (v) {set_attribute_value(10, *v);} else {unset_attribute_value(10);} } -::Ifc4x3::IfcPostalAddress Ifc4x3::IfcBuilding::BuildingAddress() const { if(get_attribute_value(11).isNull()) { return ::Ifc4x3::IfcPostalAddress{}; } return ((express::Base)(get_attribute_value(11))).as<::Ifc4x3::IfcPostalAddress>(); } +::Ifc4x3::IfcPostalAddress Ifc4x3::IfcBuilding::BuildingAddress() const { if(get_attribute_value(11).isNull()) { return ::Ifc4x3::IfcPostalAddress{}; } return ((express::base)(get_attribute_value(11))).as<::Ifc4x3::IfcPostalAddress>(); } void Ifc4x3::IfcBuilding::setBuildingAddress(const ::Ifc4x3::IfcPostalAddress& v) { set_attribute_value(11, v);if constexpr (false)unset_attribute_value(11); } @@ -8792,7 +8792,7 @@ void Ifc4x3::IfcBuildingElementPartType::setPredefinedType(const ::Ifc4x3::IfcBu const ifcopenshell::entity& Ifc4x3::IfcBuildingElementPartType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[116]); } -Ifc4x3::IfcBuildingElementPartType Ifc4x3::IfcBuildingElementPartType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcBuildingElementPartTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcBuildingElementPartTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3::IfcBuildingElementPartType Ifc4x3::IfcBuildingElementPartType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcBuildingElementPartTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcBuildingElementPartTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcBuildingElementProxy std::optional< ::Ifc4x3::IfcBuildingElementProxyTypeEnum::Value > Ifc4x3::IfcBuildingElementProxy::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3::IfcBuildingElementProxyTypeEnum::FromString(get_attribute_value(8)); } @@ -8808,7 +8808,7 @@ void Ifc4x3::IfcBuildingElementProxyType::setPredefinedType(const ::Ifc4x3::IfcB const ifcopenshell::entity& Ifc4x3::IfcBuildingElementProxyType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[119]); } -Ifc4x3::IfcBuildingElementProxyType Ifc4x3::IfcBuildingElementProxyType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcBuildingElementProxyTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcBuildingElementProxyTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3::IfcBuildingElementProxyType Ifc4x3::IfcBuildingElementProxyType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcBuildingElementProxyTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcBuildingElementProxyTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcBuildingStorey std::optional< double > Ifc4x3::IfcBuildingStorey::Elevation() const { if(get_attribute_value(9).isNull()) { return std::nullopt; } double v = get_attribute_value(9); return v; } @@ -8838,7 +8838,7 @@ Ifc4x3::IfcBuiltElement Ifc4x3::IfcBuiltElement::initialize(std::string v1_Globa const ifcopenshell::entity& Ifc4x3::IfcBuiltElementType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[125]); } -Ifc4x3::IfcBuiltElementType Ifc4x3::IfcBuiltElementType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } +Ifc4x3::IfcBuiltElementType Ifc4x3::IfcBuiltElementType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } // Function implementations for IfcBuiltSystem std::optional< ::Ifc4x3::IfcBuiltSystemTypeEnum::Value > Ifc4x3::IfcBuiltSystem::PredefinedType() const { if(get_attribute_value(5).isNull()) { return std::nullopt; } return ::Ifc4x3::IfcBuiltSystemTypeEnum::FromString(get_attribute_value(5)); } @@ -8864,7 +8864,7 @@ void Ifc4x3::IfcBurnerType::setPredefinedType(const ::Ifc4x3::IfcBurnerTypeEnum: const ifcopenshell::entity& Ifc4x3::IfcBurnerType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[129]); } -Ifc4x3::IfcBurnerType Ifc4x3::IfcBurnerType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcBurnerTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcBurnerTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3::IfcBurnerType Ifc4x3::IfcBurnerType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcBurnerTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcBurnerTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcCShapeProfileDef double Ifc4x3::IfcCShapeProfileDef::Depth() const { double v = get_attribute_value(3); return v; } @@ -8896,7 +8896,7 @@ void Ifc4x3::IfcCableCarrierFittingType::setPredefinedType(const ::Ifc4x3::IfcCa const ifcopenshell::entity& Ifc4x3::IfcCableCarrierFittingType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[132]); } -Ifc4x3::IfcCableCarrierFittingType Ifc4x3::IfcCableCarrierFittingType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcCableCarrierFittingTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcCableCarrierFittingTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3::IfcCableCarrierFittingType Ifc4x3::IfcCableCarrierFittingType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcCableCarrierFittingTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcCableCarrierFittingTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcCableCarrierSegment std::optional< ::Ifc4x3::IfcCableCarrierSegmentTypeEnum::Value > Ifc4x3::IfcCableCarrierSegment::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3::IfcCableCarrierSegmentTypeEnum::FromString(get_attribute_value(8)); } @@ -8912,7 +8912,7 @@ void Ifc4x3::IfcCableCarrierSegmentType::setPredefinedType(const ::Ifc4x3::IfcCa const ifcopenshell::entity& Ifc4x3::IfcCableCarrierSegmentType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[135]); } -Ifc4x3::IfcCableCarrierSegmentType Ifc4x3::IfcCableCarrierSegmentType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcCableCarrierSegmentTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcCableCarrierSegmentTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3::IfcCableCarrierSegmentType Ifc4x3::IfcCableCarrierSegmentType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcCableCarrierSegmentTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcCableCarrierSegmentTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcCableFitting std::optional< ::Ifc4x3::IfcCableFittingTypeEnum::Value > Ifc4x3::IfcCableFitting::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3::IfcCableFittingTypeEnum::FromString(get_attribute_value(8)); } @@ -8928,7 +8928,7 @@ void Ifc4x3::IfcCableFittingType::setPredefinedType(const ::Ifc4x3::IfcCableFitt const ifcopenshell::entity& Ifc4x3::IfcCableFittingType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[138]); } -Ifc4x3::IfcCableFittingType Ifc4x3::IfcCableFittingType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcCableFittingTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcCableFittingTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3::IfcCableFittingType Ifc4x3::IfcCableFittingType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcCableFittingTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcCableFittingTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcCableSegment std::optional< ::Ifc4x3::IfcCableSegmentTypeEnum::Value > Ifc4x3::IfcCableSegment::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3::IfcCableSegmentTypeEnum::FromString(get_attribute_value(8)); } @@ -8944,7 +8944,7 @@ void Ifc4x3::IfcCableSegmentType::setPredefinedType(const ::Ifc4x3::IfcCableSegm const ifcopenshell::entity& Ifc4x3::IfcCableSegmentType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[141]); } -Ifc4x3::IfcCableSegmentType Ifc4x3::IfcCableSegmentType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcCableSegmentTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcCableSegmentTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3::IfcCableSegmentType Ifc4x3::IfcCableSegmentType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcCableSegmentTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcCableSegmentTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcCaissonFoundation std::optional< ::Ifc4x3::IfcCaissonFoundationTypeEnum::Value > Ifc4x3::IfcCaissonFoundation::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3::IfcCaissonFoundationTypeEnum::FromString(get_attribute_value(8)); } @@ -8960,7 +8960,7 @@ void Ifc4x3::IfcCaissonFoundationType::setPredefinedType(const ::Ifc4x3::IfcCais const ifcopenshell::entity& Ifc4x3::IfcCaissonFoundationType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[144]); } -Ifc4x3::IfcCaissonFoundationType Ifc4x3::IfcCaissonFoundationType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcCaissonFoundationTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcCaissonFoundationTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3::IfcCaissonFoundationType Ifc4x3::IfcCaissonFoundationType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcCaissonFoundationTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcCaissonFoundationTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcCartesianPoint std::vector< double > /*[1:3]*/ Ifc4x3::IfcCartesianPoint::Coordinates() const { std::vector< double > /*[1:3]*/ v = get_attribute_value(0); return v; } @@ -8997,11 +8997,11 @@ const ifcopenshell::entity& Ifc4x3::IfcCartesianPointList3D::Class() { return *( Ifc4x3::IfcCartesianPointList3D Ifc4x3::IfcCartesianPointList3D::initialize(std::vector< std::vector< double > > v1_CoordList, std::optional< std::vector< std::string > /*[1:?]*/ > v2_TagList) { set_attribute_value(0, (v1_CoordList)); if (v2_TagList) {set_attribute_value(1, (*v2_TagList)); }; return *this; } // Function implementations for IfcCartesianTransformationOperator -::Ifc4x3::IfcDirection Ifc4x3::IfcCartesianTransformationOperator::Axis1() const { if(get_attribute_value(0).isNull()) { return ::Ifc4x3::IfcDirection{}; } return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3::IfcDirection>(); } +::Ifc4x3::IfcDirection Ifc4x3::IfcCartesianTransformationOperator::Axis1() const { if(get_attribute_value(0).isNull()) { return ::Ifc4x3::IfcDirection{}; } return ((express::base)(get_attribute_value(0))).as<::Ifc4x3::IfcDirection>(); } void Ifc4x3::IfcCartesianTransformationOperator::setAxis1(const ::Ifc4x3::IfcDirection& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } -::Ifc4x3::IfcDirection Ifc4x3::IfcCartesianTransformationOperator::Axis2() const { if(get_attribute_value(1).isNull()) { return ::Ifc4x3::IfcDirection{}; } return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3::IfcDirection>(); } +::Ifc4x3::IfcDirection Ifc4x3::IfcCartesianTransformationOperator::Axis2() const { if(get_attribute_value(1).isNull()) { return ::Ifc4x3::IfcDirection{}; } return ((express::base)(get_attribute_value(1))).as<::Ifc4x3::IfcDirection>(); } void Ifc4x3::IfcCartesianTransformationOperator::setAxis2(const ::Ifc4x3::IfcDirection& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } -::Ifc4x3::IfcCartesianPoint Ifc4x3::IfcCartesianTransformationOperator::LocalOrigin() const { return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3::IfcCartesianPoint>(); } +::Ifc4x3::IfcCartesianPoint Ifc4x3::IfcCartesianTransformationOperator::LocalOrigin() const { return ((express::base)(get_attribute_value(2))).as<::Ifc4x3::IfcCartesianPoint>(); } void Ifc4x3::IfcCartesianTransformationOperator::setLocalOrigin(const ::Ifc4x3::IfcCartesianPoint& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } std::optional< double > Ifc4x3::IfcCartesianTransformationOperator::Scale() const { if(get_attribute_value(3).isNull()) { return std::nullopt; } double v = get_attribute_value(3); return v; } void Ifc4x3::IfcCartesianTransformationOperator::setScale(const std::optional< double >& v) { if (v) {set_attribute_value(3, *v);} else {unset_attribute_value(3);} } @@ -9025,7 +9025,7 @@ const ifcopenshell::entity& Ifc4x3::IfcCartesianTransformationOperator2DnonUnifo Ifc4x3::IfcCartesianTransformationOperator2DnonUniform Ifc4x3::IfcCartesianTransformationOperator2DnonUniform::initialize(::Ifc4x3::IfcDirection v1_Axis1, ::Ifc4x3::IfcDirection v2_Axis2, ::Ifc4x3::IfcCartesianPoint v3_LocalOrigin, std::optional< double > v4_Scale, std::optional< double > v5_Scale2) { set_attribute_value(0, (v1_Axis1));set_attribute_value(1, (v2_Axis2));set_attribute_value(2, (v3_LocalOrigin)); if (v4_Scale) {set_attribute_value(3, (*v4_Scale)); } if (v5_Scale2) {set_attribute_value(4, (*v5_Scale2)); }; return *this; } // Function implementations for IfcCartesianTransformationOperator3D -::Ifc4x3::IfcDirection Ifc4x3::IfcCartesianTransformationOperator3D::Axis3() const { if(get_attribute_value(4).isNull()) { return ::Ifc4x3::IfcDirection{}; } return ((express::Base)(get_attribute_value(4))).as<::Ifc4x3::IfcDirection>(); } +::Ifc4x3::IfcDirection Ifc4x3::IfcCartesianTransformationOperator3D::Axis3() const { if(get_attribute_value(4).isNull()) { return ::Ifc4x3::IfcDirection{}; } return ((express::base)(get_attribute_value(4))).as<::Ifc4x3::IfcDirection>(); } void Ifc4x3::IfcCartesianTransformationOperator3D::setAxis3(const ::Ifc4x3::IfcDirection& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } @@ -9064,7 +9064,7 @@ void Ifc4x3::IfcChillerType::setPredefinedType(const ::Ifc4x3::IfcChillerTypeEnu const ifcopenshell::entity& Ifc4x3::IfcChillerType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[159]); } -Ifc4x3::IfcChillerType Ifc4x3::IfcChillerType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcChillerTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcChillerTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3::IfcChillerType Ifc4x3::IfcChillerType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcChillerTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcChillerTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcChimney std::optional< ::Ifc4x3::IfcChimneyTypeEnum::Value > Ifc4x3::IfcChimney::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3::IfcChimneyTypeEnum::FromString(get_attribute_value(8)); } @@ -9080,7 +9080,7 @@ void Ifc4x3::IfcChimneyType::setPredefinedType(const ::Ifc4x3::IfcChimneyTypeEnu const ifcopenshell::entity& Ifc4x3::IfcChimneyType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[162]); } -Ifc4x3::IfcChimneyType Ifc4x3::IfcChimneyType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcChimneyTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcChimneyTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3::IfcChimneyType Ifc4x3::IfcChimneyType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcChimneyTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcChimneyTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcCircle double Ifc4x3::IfcCircle::Radius() const { double v = get_attribute_value(1); return v; } @@ -9116,7 +9116,7 @@ Ifc4x3::IfcCivilElement Ifc4x3::IfcCivilElement::initialize(std::string v1_Globa const ifcopenshell::entity& Ifc4x3::IfcCivilElementType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[168]); } -Ifc4x3::IfcCivilElementType Ifc4x3::IfcCivilElementType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } +Ifc4x3::IfcCivilElementType Ifc4x3::IfcCivilElementType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } // Function implementations for IfcClassification std::optional< std::string > Ifc4x3::IfcClassification::Source() const { if(get_attribute_value(0).isNull()) { return std::nullopt; } std::string v = get_attribute_value(0); return v; } @@ -9141,7 +9141,7 @@ const ifcopenshell::entity& Ifc4x3::IfcClassification::Class() { return *((ifcop Ifc4x3::IfcClassification Ifc4x3::IfcClassification::initialize(std::optional< std::string > v1_Source, std::optional< std::string > v2_Edition, std::optional< std::string > v3_EditionDate, std::string v4_Name, std::optional< std::string > v5_Description, std::optional< std::string > v6_Specification, std::optional< std::vector< std::string > /*[1:?]*/ > v7_ReferenceTokens) { if (v1_Source) {set_attribute_value(0, (*v1_Source)); } if (v2_Edition) {set_attribute_value(1, (*v2_Edition)); } if (v3_EditionDate) {set_attribute_value(2, (*v3_EditionDate)); }set_attribute_value(3, (v4_Name)); if (v5_Description) {set_attribute_value(4, (*v5_Description)); } if (v6_Specification) {set_attribute_value(5, (*v6_Specification)); } if (v7_ReferenceTokens) {set_attribute_value(6, (*v7_ReferenceTokens)); }; return *this; } // Function implementations for IfcClassificationReference -::Ifc4x3::IfcClassificationReferenceSelect Ifc4x3::IfcClassificationReference::ReferencedSource() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3::IfcClassificationReferenceSelect{}; } return ((express::Base)(get_attribute_value(3))).as<::Ifc4x3::IfcClassificationReferenceSelect>(); } +::Ifc4x3::IfcClassificationReferenceSelect Ifc4x3::IfcClassificationReference::ReferencedSource() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3::IfcClassificationReferenceSelect{}; } return ((express::base)(get_attribute_value(3))).as<::Ifc4x3::IfcClassificationReferenceSelect>(); } void Ifc4x3::IfcClassificationReference::setReferencedSource(const ::Ifc4x3::IfcClassificationReferenceSelect& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } std::optional< std::string > Ifc4x3::IfcClassificationReference::Description() const { if(get_attribute_value(4).isNull()) { return std::nullopt; } std::string v = get_attribute_value(4); return v; } void Ifc4x3::IfcClassificationReference::setDescription(const std::optional< std::string >& v) { if (v) {set_attribute_value(4, *v);} else {unset_attribute_value(4);} } @@ -9158,7 +9158,7 @@ Ifc4x3::IfcClassificationReference Ifc4x3::IfcClassificationReference::initializ const ifcopenshell::entity& Ifc4x3::IfcClosedShell::Class() { return *((ifcopenshell::entity*)IFC4X3_types[173]); } -Ifc4x3::IfcClosedShell Ifc4x3::IfcClosedShell::initialize(std::vector< ::Ifc4x3::IfcFace > v1_CfsFaces) { set_attribute_value(0, cast_vector(v1_CfsFaces));; return *this; } +Ifc4x3::IfcClosedShell Ifc4x3::IfcClosedShell::initialize(std::vector< ::Ifc4x3::IfcFace > v1_CfsFaces) { set_attribute_value(0, cast_vector(v1_CfsFaces));; return *this; } // Function implementations for IfcClothoid double Ifc4x3::IfcClothoid::ClothoidConstant() const { double v = get_attribute_value(1); return v; } @@ -9182,7 +9182,7 @@ void Ifc4x3::IfcCoilType::setPredefinedType(const ::Ifc4x3::IfcCoilTypeEnum::Val const ifcopenshell::entity& Ifc4x3::IfcCoilType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[176]); } -Ifc4x3::IfcCoilType Ifc4x3::IfcCoilType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcCoilTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcCoilTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3::IfcCoilType Ifc4x3::IfcCoilType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcCoilTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcCoilTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcColourRgb double Ifc4x3::IfcColourRgb::Red() const { double v = get_attribute_value(1); return v; } @@ -9226,7 +9226,7 @@ void Ifc4x3::IfcColumnType::setPredefinedType(const ::Ifc4x3::IfcColumnTypeEnum: const ifcopenshell::entity& Ifc4x3::IfcColumnType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[184]); } -Ifc4x3::IfcColumnType Ifc4x3::IfcColumnType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcColumnTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcColumnTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3::IfcColumnType Ifc4x3::IfcColumnType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcColumnTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcColumnTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcCommunicationsAppliance std::optional< ::Ifc4x3::IfcCommunicationsApplianceTypeEnum::Value > Ifc4x3::IfcCommunicationsAppliance::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3::IfcCommunicationsApplianceTypeEnum::FromString(get_attribute_value(8)); } @@ -9242,50 +9242,50 @@ void Ifc4x3::IfcCommunicationsApplianceType::setPredefinedType(const ::Ifc4x3::I const ifcopenshell::entity& Ifc4x3::IfcCommunicationsApplianceType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[187]); } -Ifc4x3::IfcCommunicationsApplianceType Ifc4x3::IfcCommunicationsApplianceType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcCommunicationsApplianceTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcCommunicationsApplianceTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3::IfcCommunicationsApplianceType Ifc4x3::IfcCommunicationsApplianceType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcCommunicationsApplianceTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcCommunicationsApplianceTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcComplexProperty std::string Ifc4x3::IfcComplexProperty::UsageName() const { std::string v = get_attribute_value(2); return v; } void Ifc4x3::IfcComplexProperty::setUsageName(const std::string& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } -std::vector< ::Ifc4x3::IfcProperty > Ifc4x3::IfcComplexProperty::HasProperties() const { std::vector es = get_attribute_value(3); return cast_vector<::Ifc4x3::IfcProperty>(es); } -void Ifc4x3::IfcComplexProperty::setHasProperties(const std::vector< ::Ifc4x3::IfcProperty >& v) { set_attribute_value(3, cast_vector(v));if constexpr (false)unset_attribute_value(3); } +std::vector< ::Ifc4x3::IfcProperty > Ifc4x3::IfcComplexProperty::HasProperties() const { std::vector es = get_attribute_value(3); return cast_vector<::Ifc4x3::IfcProperty>(es); } +void Ifc4x3::IfcComplexProperty::setHasProperties(const std::vector< ::Ifc4x3::IfcProperty >& v) { set_attribute_value(3, cast_vector(v));if constexpr (false)unset_attribute_value(3); } const ifcopenshell::entity& Ifc4x3::IfcComplexProperty::Class() { return *((ifcopenshell::entity*)IFC4X3_types[190]); } -Ifc4x3::IfcComplexProperty Ifc4x3::IfcComplexProperty::initialize(std::string v1_Name, std::optional< std::string > v2_Specification, std::string v3_UsageName, std::vector< ::Ifc4x3::IfcProperty > v4_HasProperties) { set_attribute_value(0, (v1_Name)); if (v2_Specification) {set_attribute_value(1, (*v2_Specification)); }set_attribute_value(2, (v3_UsageName));set_attribute_value(3, cast_vector(v4_HasProperties));; return *this; } +Ifc4x3::IfcComplexProperty Ifc4x3::IfcComplexProperty::initialize(std::string v1_Name, std::optional< std::string > v2_Specification, std::string v3_UsageName, std::vector< ::Ifc4x3::IfcProperty > v4_HasProperties) { set_attribute_value(0, (v1_Name)); if (v2_Specification) {set_attribute_value(1, (*v2_Specification)); }set_attribute_value(2, (v3_UsageName));set_attribute_value(3, cast_vector(v4_HasProperties));; return *this; } // Function implementations for IfcComplexPropertyTemplate std::optional< std::string > Ifc4x3::IfcComplexPropertyTemplate::UsageName() const { if(get_attribute_value(4).isNull()) { return std::nullopt; } std::string v = get_attribute_value(4); return v; } void Ifc4x3::IfcComplexPropertyTemplate::setUsageName(const std::optional< std::string >& v) { if (v) {set_attribute_value(4, *v);} else {unset_attribute_value(4);} } std::optional< ::Ifc4x3::IfcComplexPropertyTemplateTypeEnum::Value > Ifc4x3::IfcComplexPropertyTemplate::TemplateType() const { if(get_attribute_value(5).isNull()) { return std::nullopt; } return ::Ifc4x3::IfcComplexPropertyTemplateTypeEnum::FromString(get_attribute_value(5)); } void Ifc4x3::IfcComplexPropertyTemplate::setTemplateType(const std::optional< ::Ifc4x3::IfcComplexPropertyTemplateTypeEnum::Value >& v) { if (v) {set_attribute_value(5, enumeration_reference(&::Ifc4x3::IfcComplexPropertyTemplateTypeEnum::Class(), (size_t) *v));} else {unset_attribute_value(5);} } -std::optional< std::vector< ::Ifc4x3::IfcPropertyTemplate > > Ifc4x3::IfcComplexPropertyTemplate::HasPropertyTemplates() const { if(get_attribute_value(6).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(6); return cast_vector<::Ifc4x3::IfcPropertyTemplate>(es); } -void Ifc4x3::IfcComplexPropertyTemplate::setHasPropertyTemplates(const std::optional< std::vector< ::Ifc4x3::IfcPropertyTemplate > >& v) { if (v) {set_attribute_value(6, cast_vector(*v));} else {unset_attribute_value(6);} } +std::optional< std::vector< ::Ifc4x3::IfcPropertyTemplate > > Ifc4x3::IfcComplexPropertyTemplate::HasPropertyTemplates() const { if(get_attribute_value(6).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(6); return cast_vector<::Ifc4x3::IfcPropertyTemplate>(es); } +void Ifc4x3::IfcComplexPropertyTemplate::setHasPropertyTemplates(const std::optional< std::vector< ::Ifc4x3::IfcPropertyTemplate > >& v) { if (v) {set_attribute_value(6, cast_vector(*v));} else {unset_attribute_value(6);} } const ifcopenshell::entity& Ifc4x3::IfcComplexPropertyTemplate::Class() { return *((ifcopenshell::entity*)IFC4X3_types[191]); } -Ifc4x3::IfcComplexPropertyTemplate Ifc4x3::IfcComplexPropertyTemplate::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_UsageName, std::optional< ::Ifc4x3::IfcComplexPropertyTemplateTypeEnum::Value > v6_TemplateType, std::optional< std::vector< ::Ifc4x3::IfcPropertyTemplate > > v7_HasPropertyTemplates) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_UsageName) {set_attribute_value(4, (*v5_UsageName)); } if (v6_TemplateType) {set_attribute_value(5, (enumeration_reference(&::Ifc4x3::IfcComplexPropertyTemplateTypeEnum::Class(),(size_t)*v6_TemplateType))); } if (v7_HasPropertyTemplates) {set_attribute_value(6, cast_vector(*v7_HasPropertyTemplates)); }; return *this; } +Ifc4x3::IfcComplexPropertyTemplate Ifc4x3::IfcComplexPropertyTemplate::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_UsageName, std::optional< ::Ifc4x3::IfcComplexPropertyTemplateTypeEnum::Value > v6_TemplateType, std::optional< std::vector< ::Ifc4x3::IfcPropertyTemplate > > v7_HasPropertyTemplates) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_UsageName) {set_attribute_value(4, (*v5_UsageName)); } if (v6_TemplateType) {set_attribute_value(5, (enumeration_reference(&::Ifc4x3::IfcComplexPropertyTemplateTypeEnum::Class(),(size_t)*v6_TemplateType))); } if (v7_HasPropertyTemplates) {set_attribute_value(6, cast_vector(*v7_HasPropertyTemplates)); }; return *this; } // Function implementations for IfcCompositeCurve -std::vector< ::Ifc4x3::IfcSegment > Ifc4x3::IfcCompositeCurve::Segments() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3::IfcSegment>(es); } -void Ifc4x3::IfcCompositeCurve::setSegments(const std::vector< ::Ifc4x3::IfcSegment >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } +std::vector< ::Ifc4x3::IfcSegment > Ifc4x3::IfcCompositeCurve::Segments() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3::IfcSegment>(es); } +void Ifc4x3::IfcCompositeCurve::setSegments(const std::vector< ::Ifc4x3::IfcSegment >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } boost::logic::tribool Ifc4x3::IfcCompositeCurve::SelfIntersect() const { boost::logic::tribool v = get_attribute_value(1); return v; } void Ifc4x3::IfcCompositeCurve::setSelfIntersect(const boost::logic::tribool& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } const ifcopenshell::entity& Ifc4x3::IfcCompositeCurve::Class() { return *((ifcopenshell::entity*)IFC4X3_types[193]); } -Ifc4x3::IfcCompositeCurve Ifc4x3::IfcCompositeCurve::initialize(std::vector< ::Ifc4x3::IfcSegment > v1_Segments, boost::logic::tribool v2_SelfIntersect) { set_attribute_value(0, cast_vector(v1_Segments));set_attribute_value(1, (v2_SelfIntersect));; return *this; } +Ifc4x3::IfcCompositeCurve Ifc4x3::IfcCompositeCurve::initialize(std::vector< ::Ifc4x3::IfcSegment > v1_Segments, boost::logic::tribool v2_SelfIntersect) { set_attribute_value(0, cast_vector(v1_Segments));set_attribute_value(1, (v2_SelfIntersect));; return *this; } // Function implementations for IfcCompositeCurveOnSurface const ifcopenshell::entity& Ifc4x3::IfcCompositeCurveOnSurface::Class() { return *((ifcopenshell::entity*)IFC4X3_types[194]); } -Ifc4x3::IfcCompositeCurveOnSurface Ifc4x3::IfcCompositeCurveOnSurface::initialize(std::vector< ::Ifc4x3::IfcSegment > v1_Segments, boost::logic::tribool v2_SelfIntersect) { set_attribute_value(0, cast_vector(v1_Segments));set_attribute_value(1, (v2_SelfIntersect));; return *this; } +Ifc4x3::IfcCompositeCurveOnSurface Ifc4x3::IfcCompositeCurveOnSurface::initialize(std::vector< ::Ifc4x3::IfcSegment > v1_Segments, boost::logic::tribool v2_SelfIntersect) { set_attribute_value(0, cast_vector(v1_Segments));set_attribute_value(1, (v2_SelfIntersect));; return *this; } // Function implementations for IfcCompositeCurveSegment bool Ifc4x3::IfcCompositeCurveSegment::SameSense() const { bool v = get_attribute_value(1); return v; } void Ifc4x3::IfcCompositeCurveSegment::setSameSense(const bool& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } -::Ifc4x3::IfcCurve Ifc4x3::IfcCompositeCurveSegment::ParentCurve() const { return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3::IfcCurve>(); } +::Ifc4x3::IfcCurve Ifc4x3::IfcCompositeCurveSegment::ParentCurve() const { return ((express::base)(get_attribute_value(2))).as<::Ifc4x3::IfcCurve>(); } void Ifc4x3::IfcCompositeCurveSegment::setParentCurve(const ::Ifc4x3::IfcCurve& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } @@ -9293,14 +9293,14 @@ const ifcopenshell::entity& Ifc4x3::IfcCompositeCurveSegment::Class() { return * Ifc4x3::IfcCompositeCurveSegment Ifc4x3::IfcCompositeCurveSegment::initialize(::Ifc4x3::IfcTransitionCode::Value v1_Transition, bool v2_SameSense, ::Ifc4x3::IfcCurve v3_ParentCurve) { set_attribute_value(0, (enumeration_reference(&::Ifc4x3::IfcTransitionCode::Class(),(size_t)v1_Transition)));set_attribute_value(1, (v2_SameSense));set_attribute_value(2, (v3_ParentCurve));; return *this; } // Function implementations for IfcCompositeProfileDef -std::vector< ::Ifc4x3::IfcProfileDef > Ifc4x3::IfcCompositeProfileDef::Profiles() const { std::vector es = get_attribute_value(2); return cast_vector<::Ifc4x3::IfcProfileDef>(es); } -void Ifc4x3::IfcCompositeProfileDef::setProfiles(const std::vector< ::Ifc4x3::IfcProfileDef >& v) { set_attribute_value(2, cast_vector(v));if constexpr (false)unset_attribute_value(2); } +std::vector< ::Ifc4x3::IfcProfileDef > Ifc4x3::IfcCompositeProfileDef::Profiles() const { std::vector es = get_attribute_value(2); return cast_vector<::Ifc4x3::IfcProfileDef>(es); } +void Ifc4x3::IfcCompositeProfileDef::setProfiles(const std::vector< ::Ifc4x3::IfcProfileDef >& v) { set_attribute_value(2, cast_vector(v));if constexpr (false)unset_attribute_value(2); } std::optional< std::string > Ifc4x3::IfcCompositeProfileDef::Label() const { if(get_attribute_value(3).isNull()) { return std::nullopt; } std::string v = get_attribute_value(3); return v; } void Ifc4x3::IfcCompositeProfileDef::setLabel(const std::optional< std::string >& v) { if (v) {set_attribute_value(3, *v);} else {unset_attribute_value(3);} } const ifcopenshell::entity& Ifc4x3::IfcCompositeProfileDef::Class() { return *((ifcopenshell::entity*)IFC4X3_types[196]); } -Ifc4x3::IfcCompositeProfileDef Ifc4x3::IfcCompositeProfileDef::initialize(::Ifc4x3::IfcProfileTypeEnum::Value v1_ProfileType, std::optional< std::string > v2_ProfileName, std::vector< ::Ifc4x3::IfcProfileDef > v3_Profiles, std::optional< std::string > v4_Label) { set_attribute_value(0, (enumeration_reference(&::Ifc4x3::IfcProfileTypeEnum::Class(),(size_t)v1_ProfileType))); if (v2_ProfileName) {set_attribute_value(1, (*v2_ProfileName)); }set_attribute_value(2, cast_vector(v3_Profiles)); if (v4_Label) {set_attribute_value(3, (*v4_Label)); }; return *this; } +Ifc4x3::IfcCompositeProfileDef Ifc4x3::IfcCompositeProfileDef::initialize(::Ifc4x3::IfcProfileTypeEnum::Value v1_ProfileType, std::optional< std::string > v2_ProfileName, std::vector< ::Ifc4x3::IfcProfileDef > v3_Profiles, std::optional< std::string > v4_Label) { set_attribute_value(0, (enumeration_reference(&::Ifc4x3::IfcProfileTypeEnum::Class(),(size_t)v1_ProfileType))); if (v2_ProfileName) {set_attribute_value(1, (*v2_ProfileName)); }set_attribute_value(2, cast_vector(v3_Profiles)); if (v4_Label) {set_attribute_value(3, (*v4_Label)); }; return *this; } // Function implementations for IfcCompressor std::optional< ::Ifc4x3::IfcCompressorTypeEnum::Value > Ifc4x3::IfcCompressor::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3::IfcCompressorTypeEnum::FromString(get_attribute_value(8)); } @@ -9316,7 +9316,7 @@ void Ifc4x3::IfcCompressorType::setPredefinedType(const ::Ifc4x3::IfcCompressorT const ifcopenshell::entity& Ifc4x3::IfcCompressorType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[199]); } -Ifc4x3::IfcCompressorType Ifc4x3::IfcCompressorType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcCompressorTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcCompressorTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3::IfcCompressorType Ifc4x3::IfcCompressorType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcCompressorTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcCompressorTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcCondenser std::optional< ::Ifc4x3::IfcCondenserTypeEnum::Value > Ifc4x3::IfcCondenser::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3::IfcCondenserTypeEnum::FromString(get_attribute_value(8)); } @@ -9332,10 +9332,10 @@ void Ifc4x3::IfcCondenserType::setPredefinedType(const ::Ifc4x3::IfcCondenserTyp const ifcopenshell::entity& Ifc4x3::IfcCondenserType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[202]); } -Ifc4x3::IfcCondenserType Ifc4x3::IfcCondenserType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcCondenserTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcCondenserTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3::IfcCondenserType Ifc4x3::IfcCondenserType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcCondenserTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcCondenserTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcConic -::Ifc4x3::IfcAxis2Placement Ifc4x3::IfcConic::Position() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3::IfcAxis2Placement>(); } +::Ifc4x3::IfcAxis2Placement Ifc4x3::IfcConic::Position() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3::IfcAxis2Placement>(); } void Ifc4x3::IfcConic::setPosition(const ::Ifc4x3::IfcAxis2Placement& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } @@ -9343,17 +9343,17 @@ const ifcopenshell::entity& Ifc4x3::IfcConic::Class() { return *((ifcopenshell:: Ifc4x3::IfcConic Ifc4x3::IfcConic::initialize(::Ifc4x3::IfcAxis2Placement v1_Position) { set_attribute_value(0, (v1_Position));; return *this; } // Function implementations for IfcConnectedFaceSet -std::vector< ::Ifc4x3::IfcFace > Ifc4x3::IfcConnectedFaceSet::CfsFaces() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3::IfcFace>(es); } -void Ifc4x3::IfcConnectedFaceSet::setCfsFaces(const std::vector< ::Ifc4x3::IfcFace >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } +std::vector< ::Ifc4x3::IfcFace > Ifc4x3::IfcConnectedFaceSet::CfsFaces() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3::IfcFace>(es); } +void Ifc4x3::IfcConnectedFaceSet::setCfsFaces(const std::vector< ::Ifc4x3::IfcFace >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } const ifcopenshell::entity& Ifc4x3::IfcConnectedFaceSet::Class() { return *((ifcopenshell::entity*)IFC4X3_types[205]); } -Ifc4x3::IfcConnectedFaceSet Ifc4x3::IfcConnectedFaceSet::initialize(std::vector< ::Ifc4x3::IfcFace > v1_CfsFaces) { set_attribute_value(0, cast_vector(v1_CfsFaces));; return *this; } +Ifc4x3::IfcConnectedFaceSet Ifc4x3::IfcConnectedFaceSet::initialize(std::vector< ::Ifc4x3::IfcFace > v1_CfsFaces) { set_attribute_value(0, cast_vector(v1_CfsFaces));; return *this; } // Function implementations for IfcConnectionCurveGeometry -::Ifc4x3::IfcCurveOrEdgeCurve Ifc4x3::IfcConnectionCurveGeometry::CurveOnRelatingElement() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3::IfcCurveOrEdgeCurve>(); } +::Ifc4x3::IfcCurveOrEdgeCurve Ifc4x3::IfcConnectionCurveGeometry::CurveOnRelatingElement() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3::IfcCurveOrEdgeCurve>(); } void Ifc4x3::IfcConnectionCurveGeometry::setCurveOnRelatingElement(const ::Ifc4x3::IfcCurveOrEdgeCurve& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } -::Ifc4x3::IfcCurveOrEdgeCurve Ifc4x3::IfcConnectionCurveGeometry::CurveOnRelatedElement() const { if(get_attribute_value(1).isNull()) { return ::Ifc4x3::IfcCurveOrEdgeCurve{}; } return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3::IfcCurveOrEdgeCurve>(); } +::Ifc4x3::IfcCurveOrEdgeCurve Ifc4x3::IfcConnectionCurveGeometry::CurveOnRelatedElement() const { if(get_attribute_value(1).isNull()) { return ::Ifc4x3::IfcCurveOrEdgeCurve{}; } return ((express::base)(get_attribute_value(1))).as<::Ifc4x3::IfcCurveOrEdgeCurve>(); } void Ifc4x3::IfcConnectionCurveGeometry::setCurveOnRelatedElement(const ::Ifc4x3::IfcCurveOrEdgeCurve& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } @@ -9379,9 +9379,9 @@ const ifcopenshell::entity& Ifc4x3::IfcConnectionPointEccentricity::Class() { re Ifc4x3::IfcConnectionPointEccentricity Ifc4x3::IfcConnectionPointEccentricity::initialize(::Ifc4x3::IfcPointOrVertexPoint v1_PointOnRelatingElement, ::Ifc4x3::IfcPointOrVertexPoint v2_PointOnRelatedElement, std::optional< double > v3_EccentricityInX, std::optional< double > v4_EccentricityInY, std::optional< double > v5_EccentricityInZ) { set_attribute_value(0, (v1_PointOnRelatingElement));set_attribute_value(1, (v2_PointOnRelatedElement)); if (v3_EccentricityInX) {set_attribute_value(2, (*v3_EccentricityInX)); } if (v4_EccentricityInY) {set_attribute_value(3, (*v4_EccentricityInY)); } if (v5_EccentricityInZ) {set_attribute_value(4, (*v5_EccentricityInZ)); }; return *this; } // Function implementations for IfcConnectionPointGeometry -::Ifc4x3::IfcPointOrVertexPoint Ifc4x3::IfcConnectionPointGeometry::PointOnRelatingElement() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3::IfcPointOrVertexPoint>(); } +::Ifc4x3::IfcPointOrVertexPoint Ifc4x3::IfcConnectionPointGeometry::PointOnRelatingElement() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3::IfcPointOrVertexPoint>(); } void Ifc4x3::IfcConnectionPointGeometry::setPointOnRelatingElement(const ::Ifc4x3::IfcPointOrVertexPoint& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } -::Ifc4x3::IfcPointOrVertexPoint Ifc4x3::IfcConnectionPointGeometry::PointOnRelatedElement() const { if(get_attribute_value(1).isNull()) { return ::Ifc4x3::IfcPointOrVertexPoint{}; } return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3::IfcPointOrVertexPoint>(); } +::Ifc4x3::IfcPointOrVertexPoint Ifc4x3::IfcConnectionPointGeometry::PointOnRelatedElement() const { if(get_attribute_value(1).isNull()) { return ::Ifc4x3::IfcPointOrVertexPoint{}; } return ((express::base)(get_attribute_value(1))).as<::Ifc4x3::IfcPointOrVertexPoint>(); } void Ifc4x3::IfcConnectionPointGeometry::setPointOnRelatedElement(const ::Ifc4x3::IfcPointOrVertexPoint& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } @@ -9389,9 +9389,9 @@ const ifcopenshell::entity& Ifc4x3::IfcConnectionPointGeometry::Class() { return Ifc4x3::IfcConnectionPointGeometry Ifc4x3::IfcConnectionPointGeometry::initialize(::Ifc4x3::IfcPointOrVertexPoint v1_PointOnRelatingElement, ::Ifc4x3::IfcPointOrVertexPoint v2_PointOnRelatedElement) { set_attribute_value(0, (v1_PointOnRelatingElement));set_attribute_value(1, (v2_PointOnRelatedElement));; return *this; } // Function implementations for IfcConnectionSurfaceGeometry -::Ifc4x3::IfcSurfaceOrFaceSurface Ifc4x3::IfcConnectionSurfaceGeometry::SurfaceOnRelatingElement() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3::IfcSurfaceOrFaceSurface>(); } +::Ifc4x3::IfcSurfaceOrFaceSurface Ifc4x3::IfcConnectionSurfaceGeometry::SurfaceOnRelatingElement() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3::IfcSurfaceOrFaceSurface>(); } void Ifc4x3::IfcConnectionSurfaceGeometry::setSurfaceOnRelatingElement(const ::Ifc4x3::IfcSurfaceOrFaceSurface& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } -::Ifc4x3::IfcSurfaceOrFaceSurface Ifc4x3::IfcConnectionSurfaceGeometry::SurfaceOnRelatedElement() const { if(get_attribute_value(1).isNull()) { return ::Ifc4x3::IfcSurfaceOrFaceSurface{}; } return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3::IfcSurfaceOrFaceSurface>(); } +::Ifc4x3::IfcSurfaceOrFaceSurface Ifc4x3::IfcConnectionSurfaceGeometry::SurfaceOnRelatedElement() const { if(get_attribute_value(1).isNull()) { return ::Ifc4x3::IfcSurfaceOrFaceSurface{}; } return ((express::base)(get_attribute_value(1))).as<::Ifc4x3::IfcSurfaceOrFaceSurface>(); } void Ifc4x3::IfcConnectionSurfaceGeometry::setSurfaceOnRelatedElement(const ::Ifc4x3::IfcSurfaceOrFaceSurface& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } @@ -9399,9 +9399,9 @@ const ifcopenshell::entity& Ifc4x3::IfcConnectionSurfaceGeometry::Class() { retu Ifc4x3::IfcConnectionSurfaceGeometry Ifc4x3::IfcConnectionSurfaceGeometry::initialize(::Ifc4x3::IfcSurfaceOrFaceSurface v1_SurfaceOnRelatingElement, ::Ifc4x3::IfcSurfaceOrFaceSurface v2_SurfaceOnRelatedElement) { set_attribute_value(0, (v1_SurfaceOnRelatingElement));set_attribute_value(1, (v2_SurfaceOnRelatedElement));; return *this; } // Function implementations for IfcConnectionVolumeGeometry -::Ifc4x3::IfcSolidOrShell Ifc4x3::IfcConnectionVolumeGeometry::VolumeOnRelatingElement() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3::IfcSolidOrShell>(); } +::Ifc4x3::IfcSolidOrShell Ifc4x3::IfcConnectionVolumeGeometry::VolumeOnRelatingElement() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3::IfcSolidOrShell>(); } void Ifc4x3::IfcConnectionVolumeGeometry::setVolumeOnRelatingElement(const ::Ifc4x3::IfcSolidOrShell& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } -::Ifc4x3::IfcSolidOrShell Ifc4x3::IfcConnectionVolumeGeometry::VolumeOnRelatedElement() const { if(get_attribute_value(1).isNull()) { return ::Ifc4x3::IfcSolidOrShell{}; } return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3::IfcSolidOrShell>(); } +::Ifc4x3::IfcSolidOrShell Ifc4x3::IfcConnectionVolumeGeometry::VolumeOnRelatedElement() const { if(get_attribute_value(1).isNull()) { return ::Ifc4x3::IfcSolidOrShell{}; } return ((express::base)(get_attribute_value(1))).as<::Ifc4x3::IfcSolidOrShell>(); } void Ifc4x3::IfcConnectionVolumeGeometry::setVolumeOnRelatedElement(const ::Ifc4x3::IfcSolidOrShell& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } @@ -9417,7 +9417,7 @@ void Ifc4x3::IfcConstraint::setDescription(const std::optional< std::string >& v void Ifc4x3::IfcConstraint::setConstraintGrade(const ::Ifc4x3::IfcConstraintEnum::Value& v) { set_attribute_value(2, enumeration_reference(&::Ifc4x3::IfcConstraintEnum::Class(), (size_t) v));if constexpr (false)unset_attribute_value(2); } std::optional< std::string > Ifc4x3::IfcConstraint::ConstraintSource() const { if(get_attribute_value(3).isNull()) { return std::nullopt; } std::string v = get_attribute_value(3); return v; } void Ifc4x3::IfcConstraint::setConstraintSource(const std::optional< std::string >& v) { if (v) {set_attribute_value(3, *v);} else {unset_attribute_value(3);} } -::Ifc4x3::IfcActorSelect Ifc4x3::IfcConstraint::CreatingActor() const { if(get_attribute_value(4).isNull()) { return ::Ifc4x3::IfcActorSelect{}; } return ((express::Base)(get_attribute_value(4))).as<::Ifc4x3::IfcActorSelect>(); } +::Ifc4x3::IfcActorSelect Ifc4x3::IfcConstraint::CreatingActor() const { if(get_attribute_value(4).isNull()) { return ::Ifc4x3::IfcActorSelect{}; } return ((express::base)(get_attribute_value(4))).as<::Ifc4x3::IfcActorSelect>(); } void Ifc4x3::IfcConstraint::setCreatingActor(const ::Ifc4x3::IfcActorSelect& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } std::optional< std::string > Ifc4x3::IfcConstraint::CreationTime() const { if(get_attribute_value(5).isNull()) { return std::nullopt; } std::string v = get_attribute_value(5); return v; } void Ifc4x3::IfcConstraint::setCreationTime(const std::optional< std::string >& v) { if (v) {set_attribute_value(5, *v);} else {unset_attribute_value(5);} } @@ -9436,7 +9436,7 @@ void Ifc4x3::IfcConstructionEquipmentResource::setPredefinedType(const std::opti const ifcopenshell::entity& Ifc4x3::IfcConstructionEquipmentResource::Class() { return *((ifcopenshell::entity*)IFC4X3_types[215]); } -Ifc4x3::IfcConstructionEquipmentResource Ifc4x3::IfcConstructionEquipmentResource::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, std::optional< std::string > v6_Identification, std::optional< std::string > v7_LongDescription, ::Ifc4x3::IfcResourceTime v8_Usage, std::optional< std::vector< ::Ifc4x3::IfcAppliedValue > > v9_BaseCosts, ::Ifc4x3::IfcPhysicalQuantity v10_BaseQuantity, std::optional< ::Ifc4x3::IfcConstructionEquipmentResourceTypeEnum::Value > v11_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); } if (v6_Identification) {set_attribute_value(5, (*v6_Identification)); } if (v7_LongDescription) {set_attribute_value(6, (*v7_LongDescription)); }set_attribute_value(7, (v8_Usage)); if (v9_BaseCosts) {set_attribute_value(8, cast_vector(*v9_BaseCosts)); }set_attribute_value(9, (v10_BaseQuantity)); if (v11_PredefinedType) {set_attribute_value(10, (enumeration_reference(&::Ifc4x3::IfcConstructionEquipmentResourceTypeEnum::Class(),(size_t)*v11_PredefinedType))); }; return *this; } +Ifc4x3::IfcConstructionEquipmentResource Ifc4x3::IfcConstructionEquipmentResource::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, std::optional< std::string > v6_Identification, std::optional< std::string > v7_LongDescription, ::Ifc4x3::IfcResourceTime v8_Usage, std::optional< std::vector< ::Ifc4x3::IfcAppliedValue > > v9_BaseCosts, ::Ifc4x3::IfcPhysicalQuantity v10_BaseQuantity, std::optional< ::Ifc4x3::IfcConstructionEquipmentResourceTypeEnum::Value > v11_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); } if (v6_Identification) {set_attribute_value(5, (*v6_Identification)); } if (v7_LongDescription) {set_attribute_value(6, (*v7_LongDescription)); }set_attribute_value(7, (v8_Usage)); if (v9_BaseCosts) {set_attribute_value(8, cast_vector(*v9_BaseCosts)); }set_attribute_value(9, (v10_BaseQuantity)); if (v11_PredefinedType) {set_attribute_value(10, (enumeration_reference(&::Ifc4x3::IfcConstructionEquipmentResourceTypeEnum::Class(),(size_t)*v11_PredefinedType))); }; return *this; } // Function implementations for IfcConstructionEquipmentResourceType ::Ifc4x3::IfcConstructionEquipmentResourceTypeEnum::Value Ifc4x3::IfcConstructionEquipmentResourceType::PredefinedType() const { return ::Ifc4x3::IfcConstructionEquipmentResourceTypeEnum::FromString(get_attribute_value(11)); } @@ -9444,7 +9444,7 @@ void Ifc4x3::IfcConstructionEquipmentResourceType::setPredefinedType(const ::Ifc const ifcopenshell::entity& Ifc4x3::IfcConstructionEquipmentResourceType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[216]); } -Ifc4x3::IfcConstructionEquipmentResourceType Ifc4x3::IfcConstructionEquipmentResourceType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::string > v7_Identification, std::optional< std::string > v8_LongDescription, std::optional< std::string > v9_ResourceType, std::optional< std::vector< ::Ifc4x3::IfcAppliedValue > > v10_BaseCosts, ::Ifc4x3::IfcPhysicalQuantity v11_BaseQuantity, ::Ifc4x3::IfcConstructionEquipmentResourceTypeEnum::Value v12_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_Identification) {set_attribute_value(6, (*v7_Identification)); } if (v8_LongDescription) {set_attribute_value(7, (*v8_LongDescription)); } if (v9_ResourceType) {set_attribute_value(8, (*v9_ResourceType)); } if (v10_BaseCosts) {set_attribute_value(9, cast_vector(*v10_BaseCosts)); }set_attribute_value(10, (v11_BaseQuantity));set_attribute_value(11, (enumeration_reference(&::Ifc4x3::IfcConstructionEquipmentResourceTypeEnum::Class(),(size_t)v12_PredefinedType)));; return *this; } +Ifc4x3::IfcConstructionEquipmentResourceType Ifc4x3::IfcConstructionEquipmentResourceType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::string > v7_Identification, std::optional< std::string > v8_LongDescription, std::optional< std::string > v9_ResourceType, std::optional< std::vector< ::Ifc4x3::IfcAppliedValue > > v10_BaseCosts, ::Ifc4x3::IfcPhysicalQuantity v11_BaseQuantity, ::Ifc4x3::IfcConstructionEquipmentResourceTypeEnum::Value v12_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_Identification) {set_attribute_value(6, (*v7_Identification)); } if (v8_LongDescription) {set_attribute_value(7, (*v8_LongDescription)); } if (v9_ResourceType) {set_attribute_value(8, (*v9_ResourceType)); } if (v10_BaseCosts) {set_attribute_value(9, cast_vector(*v10_BaseCosts)); }set_attribute_value(10, (v11_BaseQuantity));set_attribute_value(11, (enumeration_reference(&::Ifc4x3::IfcConstructionEquipmentResourceTypeEnum::Class(),(size_t)v12_PredefinedType)));; return *this; } // Function implementations for IfcConstructionMaterialResource std::optional< ::Ifc4x3::IfcConstructionMaterialResourceTypeEnum::Value > Ifc4x3::IfcConstructionMaterialResource::PredefinedType() const { if(get_attribute_value(10).isNull()) { return std::nullopt; } return ::Ifc4x3::IfcConstructionMaterialResourceTypeEnum::FromString(get_attribute_value(10)); } @@ -9452,7 +9452,7 @@ void Ifc4x3::IfcConstructionMaterialResource::setPredefinedType(const std::optio const ifcopenshell::entity& Ifc4x3::IfcConstructionMaterialResource::Class() { return *((ifcopenshell::entity*)IFC4X3_types[218]); } -Ifc4x3::IfcConstructionMaterialResource Ifc4x3::IfcConstructionMaterialResource::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, std::optional< std::string > v6_Identification, std::optional< std::string > v7_LongDescription, ::Ifc4x3::IfcResourceTime v8_Usage, std::optional< std::vector< ::Ifc4x3::IfcAppliedValue > > v9_BaseCosts, ::Ifc4x3::IfcPhysicalQuantity v10_BaseQuantity, std::optional< ::Ifc4x3::IfcConstructionMaterialResourceTypeEnum::Value > v11_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); } if (v6_Identification) {set_attribute_value(5, (*v6_Identification)); } if (v7_LongDescription) {set_attribute_value(6, (*v7_LongDescription)); }set_attribute_value(7, (v8_Usage)); if (v9_BaseCosts) {set_attribute_value(8, cast_vector(*v9_BaseCosts)); }set_attribute_value(9, (v10_BaseQuantity)); if (v11_PredefinedType) {set_attribute_value(10, (enumeration_reference(&::Ifc4x3::IfcConstructionMaterialResourceTypeEnum::Class(),(size_t)*v11_PredefinedType))); }; return *this; } +Ifc4x3::IfcConstructionMaterialResource Ifc4x3::IfcConstructionMaterialResource::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, std::optional< std::string > v6_Identification, std::optional< std::string > v7_LongDescription, ::Ifc4x3::IfcResourceTime v8_Usage, std::optional< std::vector< ::Ifc4x3::IfcAppliedValue > > v9_BaseCosts, ::Ifc4x3::IfcPhysicalQuantity v10_BaseQuantity, std::optional< ::Ifc4x3::IfcConstructionMaterialResourceTypeEnum::Value > v11_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); } if (v6_Identification) {set_attribute_value(5, (*v6_Identification)); } if (v7_LongDescription) {set_attribute_value(6, (*v7_LongDescription)); }set_attribute_value(7, (v8_Usage)); if (v9_BaseCosts) {set_attribute_value(8, cast_vector(*v9_BaseCosts)); }set_attribute_value(9, (v10_BaseQuantity)); if (v11_PredefinedType) {set_attribute_value(10, (enumeration_reference(&::Ifc4x3::IfcConstructionMaterialResourceTypeEnum::Class(),(size_t)*v11_PredefinedType))); }; return *this; } // Function implementations for IfcConstructionMaterialResourceType ::Ifc4x3::IfcConstructionMaterialResourceTypeEnum::Value Ifc4x3::IfcConstructionMaterialResourceType::PredefinedType() const { return ::Ifc4x3::IfcConstructionMaterialResourceTypeEnum::FromString(get_attribute_value(11)); } @@ -9460,7 +9460,7 @@ void Ifc4x3::IfcConstructionMaterialResourceType::setPredefinedType(const ::Ifc4 const ifcopenshell::entity& Ifc4x3::IfcConstructionMaterialResourceType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[219]); } -Ifc4x3::IfcConstructionMaterialResourceType Ifc4x3::IfcConstructionMaterialResourceType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::string > v7_Identification, std::optional< std::string > v8_LongDescription, std::optional< std::string > v9_ResourceType, std::optional< std::vector< ::Ifc4x3::IfcAppliedValue > > v10_BaseCosts, ::Ifc4x3::IfcPhysicalQuantity v11_BaseQuantity, ::Ifc4x3::IfcConstructionMaterialResourceTypeEnum::Value v12_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_Identification) {set_attribute_value(6, (*v7_Identification)); } if (v8_LongDescription) {set_attribute_value(7, (*v8_LongDescription)); } if (v9_ResourceType) {set_attribute_value(8, (*v9_ResourceType)); } if (v10_BaseCosts) {set_attribute_value(9, cast_vector(*v10_BaseCosts)); }set_attribute_value(10, (v11_BaseQuantity));set_attribute_value(11, (enumeration_reference(&::Ifc4x3::IfcConstructionMaterialResourceTypeEnum::Class(),(size_t)v12_PredefinedType)));; return *this; } +Ifc4x3::IfcConstructionMaterialResourceType Ifc4x3::IfcConstructionMaterialResourceType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::string > v7_Identification, std::optional< std::string > v8_LongDescription, std::optional< std::string > v9_ResourceType, std::optional< std::vector< ::Ifc4x3::IfcAppliedValue > > v10_BaseCosts, ::Ifc4x3::IfcPhysicalQuantity v11_BaseQuantity, ::Ifc4x3::IfcConstructionMaterialResourceTypeEnum::Value v12_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_Identification) {set_attribute_value(6, (*v7_Identification)); } if (v8_LongDescription) {set_attribute_value(7, (*v8_LongDescription)); } if (v9_ResourceType) {set_attribute_value(8, (*v9_ResourceType)); } if (v10_BaseCosts) {set_attribute_value(9, cast_vector(*v10_BaseCosts)); }set_attribute_value(10, (v11_BaseQuantity));set_attribute_value(11, (enumeration_reference(&::Ifc4x3::IfcConstructionMaterialResourceTypeEnum::Class(),(size_t)v12_PredefinedType)));; return *this; } // Function implementations for IfcConstructionProductResource std::optional< ::Ifc4x3::IfcConstructionProductResourceTypeEnum::Value > Ifc4x3::IfcConstructionProductResource::PredefinedType() const { if(get_attribute_value(10).isNull()) { return std::nullopt; } return ::Ifc4x3::IfcConstructionProductResourceTypeEnum::FromString(get_attribute_value(10)); } @@ -9468,7 +9468,7 @@ void Ifc4x3::IfcConstructionProductResource::setPredefinedType(const std::option const ifcopenshell::entity& Ifc4x3::IfcConstructionProductResource::Class() { return *((ifcopenshell::entity*)IFC4X3_types[221]); } -Ifc4x3::IfcConstructionProductResource Ifc4x3::IfcConstructionProductResource::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, std::optional< std::string > v6_Identification, std::optional< std::string > v7_LongDescription, ::Ifc4x3::IfcResourceTime v8_Usage, std::optional< std::vector< ::Ifc4x3::IfcAppliedValue > > v9_BaseCosts, ::Ifc4x3::IfcPhysicalQuantity v10_BaseQuantity, std::optional< ::Ifc4x3::IfcConstructionProductResourceTypeEnum::Value > v11_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); } if (v6_Identification) {set_attribute_value(5, (*v6_Identification)); } if (v7_LongDescription) {set_attribute_value(6, (*v7_LongDescription)); }set_attribute_value(7, (v8_Usage)); if (v9_BaseCosts) {set_attribute_value(8, cast_vector(*v9_BaseCosts)); }set_attribute_value(9, (v10_BaseQuantity)); if (v11_PredefinedType) {set_attribute_value(10, (enumeration_reference(&::Ifc4x3::IfcConstructionProductResourceTypeEnum::Class(),(size_t)*v11_PredefinedType))); }; return *this; } +Ifc4x3::IfcConstructionProductResource Ifc4x3::IfcConstructionProductResource::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, std::optional< std::string > v6_Identification, std::optional< std::string > v7_LongDescription, ::Ifc4x3::IfcResourceTime v8_Usage, std::optional< std::vector< ::Ifc4x3::IfcAppliedValue > > v9_BaseCosts, ::Ifc4x3::IfcPhysicalQuantity v10_BaseQuantity, std::optional< ::Ifc4x3::IfcConstructionProductResourceTypeEnum::Value > v11_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); } if (v6_Identification) {set_attribute_value(5, (*v6_Identification)); } if (v7_LongDescription) {set_attribute_value(6, (*v7_LongDescription)); }set_attribute_value(7, (v8_Usage)); if (v9_BaseCosts) {set_attribute_value(8, cast_vector(*v9_BaseCosts)); }set_attribute_value(9, (v10_BaseQuantity)); if (v11_PredefinedType) {set_attribute_value(10, (enumeration_reference(&::Ifc4x3::IfcConstructionProductResourceTypeEnum::Class(),(size_t)*v11_PredefinedType))); }; return *this; } // Function implementations for IfcConstructionProductResourceType ::Ifc4x3::IfcConstructionProductResourceTypeEnum::Value Ifc4x3::IfcConstructionProductResourceType::PredefinedType() const { return ::Ifc4x3::IfcConstructionProductResourceTypeEnum::FromString(get_attribute_value(11)); } @@ -9476,29 +9476,29 @@ void Ifc4x3::IfcConstructionProductResourceType::setPredefinedType(const ::Ifc4x const ifcopenshell::entity& Ifc4x3::IfcConstructionProductResourceType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[222]); } -Ifc4x3::IfcConstructionProductResourceType Ifc4x3::IfcConstructionProductResourceType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::string > v7_Identification, std::optional< std::string > v8_LongDescription, std::optional< std::string > v9_ResourceType, std::optional< std::vector< ::Ifc4x3::IfcAppliedValue > > v10_BaseCosts, ::Ifc4x3::IfcPhysicalQuantity v11_BaseQuantity, ::Ifc4x3::IfcConstructionProductResourceTypeEnum::Value v12_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_Identification) {set_attribute_value(6, (*v7_Identification)); } if (v8_LongDescription) {set_attribute_value(7, (*v8_LongDescription)); } if (v9_ResourceType) {set_attribute_value(8, (*v9_ResourceType)); } if (v10_BaseCosts) {set_attribute_value(9, cast_vector(*v10_BaseCosts)); }set_attribute_value(10, (v11_BaseQuantity));set_attribute_value(11, (enumeration_reference(&::Ifc4x3::IfcConstructionProductResourceTypeEnum::Class(),(size_t)v12_PredefinedType)));; return *this; } +Ifc4x3::IfcConstructionProductResourceType Ifc4x3::IfcConstructionProductResourceType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::string > v7_Identification, std::optional< std::string > v8_LongDescription, std::optional< std::string > v9_ResourceType, std::optional< std::vector< ::Ifc4x3::IfcAppliedValue > > v10_BaseCosts, ::Ifc4x3::IfcPhysicalQuantity v11_BaseQuantity, ::Ifc4x3::IfcConstructionProductResourceTypeEnum::Value v12_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_Identification) {set_attribute_value(6, (*v7_Identification)); } if (v8_LongDescription) {set_attribute_value(7, (*v8_LongDescription)); } if (v9_ResourceType) {set_attribute_value(8, (*v9_ResourceType)); } if (v10_BaseCosts) {set_attribute_value(9, cast_vector(*v10_BaseCosts)); }set_attribute_value(10, (v11_BaseQuantity));set_attribute_value(11, (enumeration_reference(&::Ifc4x3::IfcConstructionProductResourceTypeEnum::Class(),(size_t)v12_PredefinedType)));; return *this; } // Function implementations for IfcConstructionResource -::Ifc4x3::IfcResourceTime Ifc4x3::IfcConstructionResource::Usage() const { if(get_attribute_value(7).isNull()) { return ::Ifc4x3::IfcResourceTime{}; } return ((express::Base)(get_attribute_value(7))).as<::Ifc4x3::IfcResourceTime>(); } +::Ifc4x3::IfcResourceTime Ifc4x3::IfcConstructionResource::Usage() const { if(get_attribute_value(7).isNull()) { return ::Ifc4x3::IfcResourceTime{}; } return ((express::base)(get_attribute_value(7))).as<::Ifc4x3::IfcResourceTime>(); } void Ifc4x3::IfcConstructionResource::setUsage(const ::Ifc4x3::IfcResourceTime& v) { set_attribute_value(7, v);if constexpr (false)unset_attribute_value(7); } -std::optional< std::vector< ::Ifc4x3::IfcAppliedValue > > Ifc4x3::IfcConstructionResource::BaseCosts() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(8); return cast_vector<::Ifc4x3::IfcAppliedValue>(es); } -void Ifc4x3::IfcConstructionResource::setBaseCosts(const std::optional< std::vector< ::Ifc4x3::IfcAppliedValue > >& v) { if (v) {set_attribute_value(8, cast_vector(*v));} else {unset_attribute_value(8);} } -::Ifc4x3::IfcPhysicalQuantity Ifc4x3::IfcConstructionResource::BaseQuantity() const { if(get_attribute_value(9).isNull()) { return ::Ifc4x3::IfcPhysicalQuantity{}; } return ((express::Base)(get_attribute_value(9))).as<::Ifc4x3::IfcPhysicalQuantity>(); } +std::optional< std::vector< ::Ifc4x3::IfcAppliedValue > > Ifc4x3::IfcConstructionResource::BaseCosts() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(8); return cast_vector<::Ifc4x3::IfcAppliedValue>(es); } +void Ifc4x3::IfcConstructionResource::setBaseCosts(const std::optional< std::vector< ::Ifc4x3::IfcAppliedValue > >& v) { if (v) {set_attribute_value(8, cast_vector(*v));} else {unset_attribute_value(8);} } +::Ifc4x3::IfcPhysicalQuantity Ifc4x3::IfcConstructionResource::BaseQuantity() const { if(get_attribute_value(9).isNull()) { return ::Ifc4x3::IfcPhysicalQuantity{}; } return ((express::base)(get_attribute_value(9))).as<::Ifc4x3::IfcPhysicalQuantity>(); } void Ifc4x3::IfcConstructionResource::setBaseQuantity(const ::Ifc4x3::IfcPhysicalQuantity& v) { set_attribute_value(9, v);if constexpr (false)unset_attribute_value(9); } const ifcopenshell::entity& Ifc4x3::IfcConstructionResource::Class() { return *((ifcopenshell::entity*)IFC4X3_types[224]); } -Ifc4x3::IfcConstructionResource Ifc4x3::IfcConstructionResource::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, std::optional< std::string > v6_Identification, std::optional< std::string > v7_LongDescription, ::Ifc4x3::IfcResourceTime v8_Usage, std::optional< std::vector< ::Ifc4x3::IfcAppliedValue > > v9_BaseCosts, ::Ifc4x3::IfcPhysicalQuantity v10_BaseQuantity) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); } if (v6_Identification) {set_attribute_value(5, (*v6_Identification)); } if (v7_LongDescription) {set_attribute_value(6, (*v7_LongDescription)); }set_attribute_value(7, (v8_Usage)); if (v9_BaseCosts) {set_attribute_value(8, cast_vector(*v9_BaseCosts)); }set_attribute_value(9, (v10_BaseQuantity));; return *this; } +Ifc4x3::IfcConstructionResource Ifc4x3::IfcConstructionResource::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, std::optional< std::string > v6_Identification, std::optional< std::string > v7_LongDescription, ::Ifc4x3::IfcResourceTime v8_Usage, std::optional< std::vector< ::Ifc4x3::IfcAppliedValue > > v9_BaseCosts, ::Ifc4x3::IfcPhysicalQuantity v10_BaseQuantity) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); } if (v6_Identification) {set_attribute_value(5, (*v6_Identification)); } if (v7_LongDescription) {set_attribute_value(6, (*v7_LongDescription)); }set_attribute_value(7, (v8_Usage)); if (v9_BaseCosts) {set_attribute_value(8, cast_vector(*v9_BaseCosts)); }set_attribute_value(9, (v10_BaseQuantity));; return *this; } // Function implementations for IfcConstructionResourceType -std::optional< std::vector< ::Ifc4x3::IfcAppliedValue > > Ifc4x3::IfcConstructionResourceType::BaseCosts() const { if(get_attribute_value(9).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(9); return cast_vector<::Ifc4x3::IfcAppliedValue>(es); } -void Ifc4x3::IfcConstructionResourceType::setBaseCosts(const std::optional< std::vector< ::Ifc4x3::IfcAppliedValue > >& v) { if (v) {set_attribute_value(9, cast_vector(*v));} else {unset_attribute_value(9);} } -::Ifc4x3::IfcPhysicalQuantity Ifc4x3::IfcConstructionResourceType::BaseQuantity() const { if(get_attribute_value(10).isNull()) { return ::Ifc4x3::IfcPhysicalQuantity{}; } return ((express::Base)(get_attribute_value(10))).as<::Ifc4x3::IfcPhysicalQuantity>(); } +std::optional< std::vector< ::Ifc4x3::IfcAppliedValue > > Ifc4x3::IfcConstructionResourceType::BaseCosts() const { if(get_attribute_value(9).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(9); return cast_vector<::Ifc4x3::IfcAppliedValue>(es); } +void Ifc4x3::IfcConstructionResourceType::setBaseCosts(const std::optional< std::vector< ::Ifc4x3::IfcAppliedValue > >& v) { if (v) {set_attribute_value(9, cast_vector(*v));} else {unset_attribute_value(9);} } +::Ifc4x3::IfcPhysicalQuantity Ifc4x3::IfcConstructionResourceType::BaseQuantity() const { if(get_attribute_value(10).isNull()) { return ::Ifc4x3::IfcPhysicalQuantity{}; } return ((express::base)(get_attribute_value(10))).as<::Ifc4x3::IfcPhysicalQuantity>(); } void Ifc4x3::IfcConstructionResourceType::setBaseQuantity(const ::Ifc4x3::IfcPhysicalQuantity& v) { set_attribute_value(10, v);if constexpr (false)unset_attribute_value(10); } const ifcopenshell::entity& Ifc4x3::IfcConstructionResourceType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[225]); } -Ifc4x3::IfcConstructionResourceType Ifc4x3::IfcConstructionResourceType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::string > v7_Identification, std::optional< std::string > v8_LongDescription, std::optional< std::string > v9_ResourceType, std::optional< std::vector< ::Ifc4x3::IfcAppliedValue > > v10_BaseCosts, ::Ifc4x3::IfcPhysicalQuantity v11_BaseQuantity) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_Identification) {set_attribute_value(6, (*v7_Identification)); } if (v8_LongDescription) {set_attribute_value(7, (*v8_LongDescription)); } if (v9_ResourceType) {set_attribute_value(8, (*v9_ResourceType)); } if (v10_BaseCosts) {set_attribute_value(9, cast_vector(*v10_BaseCosts)); }set_attribute_value(10, (v11_BaseQuantity));; return *this; } +Ifc4x3::IfcConstructionResourceType Ifc4x3::IfcConstructionResourceType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::string > v7_Identification, std::optional< std::string > v8_LongDescription, std::optional< std::string > v9_ResourceType, std::optional< std::vector< ::Ifc4x3::IfcAppliedValue > > v10_BaseCosts, ::Ifc4x3::IfcPhysicalQuantity v11_BaseQuantity) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_Identification) {set_attribute_value(6, (*v7_Identification)); } if (v8_LongDescription) {set_attribute_value(7, (*v8_LongDescription)); } if (v9_ResourceType) {set_attribute_value(8, (*v9_ResourceType)); } if (v10_BaseCosts) {set_attribute_value(9, cast_vector(*v10_BaseCosts)); }set_attribute_value(10, (v11_BaseQuantity));; return *this; } // Function implementations for IfcContext std::optional< std::string > Ifc4x3::IfcContext::ObjectType() const { if(get_attribute_value(4).isNull()) { return std::nullopt; } std::string v = get_attribute_value(4); return v; } @@ -9507,16 +9507,16 @@ std::optional< std::string > Ifc4x3::IfcContext::LongName() const { if(get_attri void Ifc4x3::IfcContext::setLongName(const std::optional< std::string >& v) { if (v) {set_attribute_value(5, *v);} else {unset_attribute_value(5);} } std::optional< std::string > Ifc4x3::IfcContext::Phase() const { if(get_attribute_value(6).isNull()) { return std::nullopt; } std::string v = get_attribute_value(6); return v; } void Ifc4x3::IfcContext::setPhase(const std::optional< std::string >& v) { if (v) {set_attribute_value(6, *v);} else {unset_attribute_value(6);} } -std::optional< std::vector< ::Ifc4x3::IfcRepresentationContext > > Ifc4x3::IfcContext::RepresentationContexts() const { if(get_attribute_value(7).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(7); return cast_vector<::Ifc4x3::IfcRepresentationContext>(es); } -void Ifc4x3::IfcContext::setRepresentationContexts(const std::optional< std::vector< ::Ifc4x3::IfcRepresentationContext > >& v) { if (v) {set_attribute_value(7, cast_vector(*v));} else {unset_attribute_value(7);} } -::Ifc4x3::IfcUnitAssignment Ifc4x3::IfcContext::UnitsInContext() const { if(get_attribute_value(8).isNull()) { return ::Ifc4x3::IfcUnitAssignment{}; } return ((express::Base)(get_attribute_value(8))).as<::Ifc4x3::IfcUnitAssignment>(); } +std::optional< std::vector< ::Ifc4x3::IfcRepresentationContext > > Ifc4x3::IfcContext::RepresentationContexts() const { if(get_attribute_value(7).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(7); return cast_vector<::Ifc4x3::IfcRepresentationContext>(es); } +void Ifc4x3::IfcContext::setRepresentationContexts(const std::optional< std::vector< ::Ifc4x3::IfcRepresentationContext > >& v) { if (v) {set_attribute_value(7, cast_vector(*v));} else {unset_attribute_value(7);} } +::Ifc4x3::IfcUnitAssignment Ifc4x3::IfcContext::UnitsInContext() const { if(get_attribute_value(8).isNull()) { return ::Ifc4x3::IfcUnitAssignment{}; } return ((express::base)(get_attribute_value(8))).as<::Ifc4x3::IfcUnitAssignment>(); } void Ifc4x3::IfcContext::setUnitsInContext(const ::Ifc4x3::IfcUnitAssignment& v) { set_attribute_value(8, v);if constexpr (false)unset_attribute_value(8); } std::vector<::Ifc4x3::IfcRelDefinesByProperties> Ifc4x3::IfcContext::IsDefinedBy() const { return cast_vector(file()->get_inverse(data()->id(), IFC4X3_types[934], 4)); } std::vector<::Ifc4x3::IfcRelDeclares> Ifc4x3::IfcContext::Declares() const { return cast_vector(file()->get_inverse(data()->id(), IFC4X3_types[930], 4)); } const ifcopenshell::entity& Ifc4x3::IfcContext::Class() { return *((ifcopenshell::entity*)IFC4X3_types[226]); } -Ifc4x3::IfcContext Ifc4x3::IfcContext::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, std::optional< std::string > v6_LongName, std::optional< std::string > v7_Phase, std::optional< std::vector< ::Ifc4x3::IfcRepresentationContext > > v8_RepresentationContexts, ::Ifc4x3::IfcUnitAssignment v9_UnitsInContext) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); } if (v6_LongName) {set_attribute_value(5, (*v6_LongName)); } if (v7_Phase) {set_attribute_value(6, (*v7_Phase)); } if (v8_RepresentationContexts) {set_attribute_value(7, cast_vector(*v8_RepresentationContexts)); }set_attribute_value(8, (v9_UnitsInContext));; return *this; } +Ifc4x3::IfcContext Ifc4x3::IfcContext::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, std::optional< std::string > v6_LongName, std::optional< std::string > v7_Phase, std::optional< std::vector< ::Ifc4x3::IfcRepresentationContext > > v8_RepresentationContexts, ::Ifc4x3::IfcUnitAssignment v9_UnitsInContext) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); } if (v6_LongName) {set_attribute_value(5, (*v6_LongName)); } if (v7_Phase) {set_attribute_value(6, (*v7_Phase)); } if (v8_RepresentationContexts) {set_attribute_value(7, cast_vector(*v8_RepresentationContexts)); }set_attribute_value(8, (v9_UnitsInContext));; return *this; } // Function implementations for IfcContextDependentUnit std::string Ifc4x3::IfcContextDependentUnit::Name() const { std::string v = get_attribute_value(2); return v; } @@ -9550,12 +9550,12 @@ void Ifc4x3::IfcControllerType::setPredefinedType(const ::Ifc4x3::IfcControllerT const ifcopenshell::entity& Ifc4x3::IfcControllerType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[231]); } -Ifc4x3::IfcControllerType Ifc4x3::IfcControllerType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcControllerTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcControllerTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3::IfcControllerType Ifc4x3::IfcControllerType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcControllerTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcControllerTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcConversionBasedUnit std::string Ifc4x3::IfcConversionBasedUnit::Name() const { std::string v = get_attribute_value(2); return v; } void Ifc4x3::IfcConversionBasedUnit::setName(const std::string& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } -::Ifc4x3::IfcMeasureWithUnit Ifc4x3::IfcConversionBasedUnit::ConversionFactor() const { return ((express::Base)(get_attribute_value(3))).as<::Ifc4x3::IfcMeasureWithUnit>(); } +::Ifc4x3::IfcMeasureWithUnit Ifc4x3::IfcConversionBasedUnit::ConversionFactor() const { return ((express::base)(get_attribute_value(3))).as<::Ifc4x3::IfcMeasureWithUnit>(); } void Ifc4x3::IfcConversionBasedUnit::setConversionFactor(const ::Ifc4x3::IfcMeasureWithUnit& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } std::vector<::Ifc4x3::IfcExternalReferenceRelationship> Ifc4x3::IfcConversionBasedUnit::HasExternalReference() const { return cast_vector(file()->get_inverse(data()->id(), IFC4X3_types[430], 3)); } @@ -9585,7 +9585,7 @@ void Ifc4x3::IfcConveyorSegmentType::setPredefinedType(const ::Ifc4x3::IfcConvey const ifcopenshell::entity& Ifc4x3::IfcConveyorSegmentType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[236]); } -Ifc4x3::IfcConveyorSegmentType Ifc4x3::IfcConveyorSegmentType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcConveyorSegmentTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcConveyorSegmentTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3::IfcConveyorSegmentType Ifc4x3::IfcConveyorSegmentType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcConveyorSegmentTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcConveyorSegmentTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcCooledBeam std::optional< ::Ifc4x3::IfcCooledBeamTypeEnum::Value > Ifc4x3::IfcCooledBeam::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3::IfcCooledBeamTypeEnum::FromString(get_attribute_value(8)); } @@ -9601,7 +9601,7 @@ void Ifc4x3::IfcCooledBeamType::setPredefinedType(const ::Ifc4x3::IfcCooledBeamT const ifcopenshell::entity& Ifc4x3::IfcCooledBeamType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[239]); } -Ifc4x3::IfcCooledBeamType Ifc4x3::IfcCooledBeamType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcCooledBeamTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcCooledBeamTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3::IfcCooledBeamType Ifc4x3::IfcCooledBeamType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcCooledBeamTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcCooledBeamTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcCoolingTower std::optional< ::Ifc4x3::IfcCoolingTowerTypeEnum::Value > Ifc4x3::IfcCoolingTower::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3::IfcCoolingTowerTypeEnum::FromString(get_attribute_value(8)); } @@ -9617,12 +9617,12 @@ void Ifc4x3::IfcCoolingTowerType::setPredefinedType(const ::Ifc4x3::IfcCoolingTo const ifcopenshell::entity& Ifc4x3::IfcCoolingTowerType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[242]); } -Ifc4x3::IfcCoolingTowerType Ifc4x3::IfcCoolingTowerType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcCoolingTowerTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcCoolingTowerTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3::IfcCoolingTowerType Ifc4x3::IfcCoolingTowerType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcCoolingTowerTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcCoolingTowerTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcCoordinateOperation -::Ifc4x3::IfcCoordinateReferenceSystemSelect Ifc4x3::IfcCoordinateOperation::SourceCRS() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3::IfcCoordinateReferenceSystemSelect>(); } +::Ifc4x3::IfcCoordinateReferenceSystemSelect Ifc4x3::IfcCoordinateOperation::SourceCRS() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3::IfcCoordinateReferenceSystemSelect>(); } void Ifc4x3::IfcCoordinateOperation::setSourceCRS(const ::Ifc4x3::IfcCoordinateReferenceSystemSelect& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } -::Ifc4x3::IfcCoordinateReferenceSystem Ifc4x3::IfcCoordinateOperation::TargetCRS() const { return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3::IfcCoordinateReferenceSystem>(); } +::Ifc4x3::IfcCoordinateReferenceSystem Ifc4x3::IfcCoordinateOperation::TargetCRS() const { return ((express::base)(get_attribute_value(1))).as<::Ifc4x3::IfcCoordinateReferenceSystem>(); } void Ifc4x3::IfcCoordinateOperation::setTargetCRS(const ::Ifc4x3::IfcCoordinateReferenceSystem& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } @@ -9657,14 +9657,14 @@ Ifc4x3::IfcCosineSpiral Ifc4x3::IfcCosineSpiral::initialize(::Ifc4x3::IfcAxis2Pl // Function implementations for IfcCostItem std::optional< ::Ifc4x3::IfcCostItemTypeEnum::Value > Ifc4x3::IfcCostItem::PredefinedType() const { if(get_attribute_value(6).isNull()) { return std::nullopt; } return ::Ifc4x3::IfcCostItemTypeEnum::FromString(get_attribute_value(6)); } void Ifc4x3::IfcCostItem::setPredefinedType(const std::optional< ::Ifc4x3::IfcCostItemTypeEnum::Value >& v) { if (v) {set_attribute_value(6, enumeration_reference(&::Ifc4x3::IfcCostItemTypeEnum::Class(), (size_t) *v));} else {unset_attribute_value(6);} } -std::optional< std::vector< ::Ifc4x3::IfcCostValue > > Ifc4x3::IfcCostItem::CostValues() const { if(get_attribute_value(7).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(7); return cast_vector<::Ifc4x3::IfcCostValue>(es); } -void Ifc4x3::IfcCostItem::setCostValues(const std::optional< std::vector< ::Ifc4x3::IfcCostValue > >& v) { if (v) {set_attribute_value(7, cast_vector(*v));} else {unset_attribute_value(7);} } -std::optional< std::vector< ::Ifc4x3::IfcPhysicalQuantity > > Ifc4x3::IfcCostItem::CostQuantities() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(8); return cast_vector<::Ifc4x3::IfcPhysicalQuantity>(es); } -void Ifc4x3::IfcCostItem::setCostQuantities(const std::optional< std::vector< ::Ifc4x3::IfcPhysicalQuantity > >& v) { if (v) {set_attribute_value(8, cast_vector(*v));} else {unset_attribute_value(8);} } +std::optional< std::vector< ::Ifc4x3::IfcCostValue > > Ifc4x3::IfcCostItem::CostValues() const { if(get_attribute_value(7).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(7); return cast_vector<::Ifc4x3::IfcCostValue>(es); } +void Ifc4x3::IfcCostItem::setCostValues(const std::optional< std::vector< ::Ifc4x3::IfcCostValue > >& v) { if (v) {set_attribute_value(7, cast_vector(*v));} else {unset_attribute_value(7);} } +std::optional< std::vector< ::Ifc4x3::IfcPhysicalQuantity > > Ifc4x3::IfcCostItem::CostQuantities() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(8); return cast_vector<::Ifc4x3::IfcPhysicalQuantity>(es); } +void Ifc4x3::IfcCostItem::setCostQuantities(const std::optional< std::vector< ::Ifc4x3::IfcPhysicalQuantity > >& v) { if (v) {set_attribute_value(8, cast_vector(*v));} else {unset_attribute_value(8);} } const ifcopenshell::entity& Ifc4x3::IfcCostItem::Class() { return *((ifcopenshell::entity*)IFC4X3_types[248]); } -Ifc4x3::IfcCostItem Ifc4x3::IfcCostItem::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, std::optional< std::string > v6_Identification, std::optional< ::Ifc4x3::IfcCostItemTypeEnum::Value > v7_PredefinedType, std::optional< std::vector< ::Ifc4x3::IfcCostValue > > v8_CostValues, std::optional< std::vector< ::Ifc4x3::IfcPhysicalQuantity > > v9_CostQuantities) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); } if (v6_Identification) {set_attribute_value(5, (*v6_Identification)); } if (v7_PredefinedType) {set_attribute_value(6, (enumeration_reference(&::Ifc4x3::IfcCostItemTypeEnum::Class(),(size_t)*v7_PredefinedType))); } if (v8_CostValues) {set_attribute_value(7, cast_vector(*v8_CostValues)); } if (v9_CostQuantities) {set_attribute_value(8, cast_vector(*v9_CostQuantities)); }; return *this; } +Ifc4x3::IfcCostItem Ifc4x3::IfcCostItem::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, std::optional< std::string > v6_Identification, std::optional< ::Ifc4x3::IfcCostItemTypeEnum::Value > v7_PredefinedType, std::optional< std::vector< ::Ifc4x3::IfcCostValue > > v8_CostValues, std::optional< std::vector< ::Ifc4x3::IfcPhysicalQuantity > > v9_CostQuantities) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); } if (v6_Identification) {set_attribute_value(5, (*v6_Identification)); } if (v7_PredefinedType) {set_attribute_value(6, (enumeration_reference(&::Ifc4x3::IfcCostItemTypeEnum::Class(),(size_t)*v7_PredefinedType))); } if (v8_CostValues) {set_attribute_value(7, cast_vector(*v8_CostValues)); } if (v9_CostQuantities) {set_attribute_value(8, cast_vector(*v9_CostQuantities)); }; return *this; } // Function implementations for IfcCostSchedule std::optional< ::Ifc4x3::IfcCostScheduleTypeEnum::Value > Ifc4x3::IfcCostSchedule::PredefinedType() const { if(get_attribute_value(6).isNull()) { return std::nullopt; } return ::Ifc4x3::IfcCostScheduleTypeEnum::FromString(get_attribute_value(6)); } @@ -9684,7 +9684,7 @@ Ifc4x3::IfcCostSchedule Ifc4x3::IfcCostSchedule::initialize(std::string v1_Globa const ifcopenshell::entity& Ifc4x3::IfcCostValue::Class() { return *((ifcopenshell::entity*)IFC4X3_types[252]); } -Ifc4x3::IfcCostValue Ifc4x3::IfcCostValue::initialize(std::optional< std::string > v1_Name, std::optional< std::string > v2_Description, ::Ifc4x3::IfcAppliedValueSelect v3_AppliedValue, ::Ifc4x3::IfcMeasureWithUnit v4_UnitBasis, std::optional< std::string > v5_ApplicableDate, std::optional< std::string > v6_FixedUntilDate, std::optional< std::string > v7_Category, std::optional< std::string > v8_Condition, std::optional< ::Ifc4x3::IfcArithmeticOperatorEnum::Value > v9_ArithmeticOperator, std::optional< std::vector< ::Ifc4x3::IfcAppliedValue > > v10_Components) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); } if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, (v3_AppliedValue));set_attribute_value(3, (v4_UnitBasis)); if (v5_ApplicableDate) {set_attribute_value(4, (*v5_ApplicableDate)); } if (v6_FixedUntilDate) {set_attribute_value(5, (*v6_FixedUntilDate)); } if (v7_Category) {set_attribute_value(6, (*v7_Category)); } if (v8_Condition) {set_attribute_value(7, (*v8_Condition)); } if (v9_ArithmeticOperator) {set_attribute_value(8, (enumeration_reference(&::Ifc4x3::IfcArithmeticOperatorEnum::Class(),(size_t)*v9_ArithmeticOperator))); } if (v10_Components) {set_attribute_value(9, cast_vector(*v10_Components)); }; return *this; } +Ifc4x3::IfcCostValue Ifc4x3::IfcCostValue::initialize(std::optional< std::string > v1_Name, std::optional< std::string > v2_Description, ::Ifc4x3::IfcAppliedValueSelect v3_AppliedValue, ::Ifc4x3::IfcMeasureWithUnit v4_UnitBasis, std::optional< std::string > v5_ApplicableDate, std::optional< std::string > v6_FixedUntilDate, std::optional< std::string > v7_Category, std::optional< std::string > v8_Condition, std::optional< ::Ifc4x3::IfcArithmeticOperatorEnum::Value > v9_ArithmeticOperator, std::optional< std::vector< ::Ifc4x3::IfcAppliedValue > > v10_Components) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); } if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, (v3_AppliedValue));set_attribute_value(3, (v4_UnitBasis)); if (v5_ApplicableDate) {set_attribute_value(4, (*v5_ApplicableDate)); } if (v6_FixedUntilDate) {set_attribute_value(5, (*v6_FixedUntilDate)); } if (v7_Category) {set_attribute_value(6, (*v7_Category)); } if (v8_Condition) {set_attribute_value(7, (*v8_Condition)); } if (v9_ArithmeticOperator) {set_attribute_value(8, (enumeration_reference(&::Ifc4x3::IfcArithmeticOperatorEnum::Class(),(size_t)*v9_ArithmeticOperator))); } if (v10_Components) {set_attribute_value(9, cast_vector(*v10_Components)); }; return *this; } // Function implementations for IfcCourse std::optional< ::Ifc4x3::IfcCourseTypeEnum::Value > Ifc4x3::IfcCourse::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3::IfcCourseTypeEnum::FromString(get_attribute_value(8)); } @@ -9700,7 +9700,7 @@ void Ifc4x3::IfcCourseType::setPredefinedType(const ::Ifc4x3::IfcCourseTypeEnum: const ifcopenshell::entity& Ifc4x3::IfcCourseType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[255]); } -Ifc4x3::IfcCourseType Ifc4x3::IfcCourseType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcCourseTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcCourseTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3::IfcCourseType Ifc4x3::IfcCourseType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcCourseTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcCourseTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcCovering std::optional< ::Ifc4x3::IfcCoveringTypeEnum::Value > Ifc4x3::IfcCovering::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3::IfcCoveringTypeEnum::FromString(get_attribute_value(8)); } @@ -9718,7 +9718,7 @@ void Ifc4x3::IfcCoveringType::setPredefinedType(const ::Ifc4x3::IfcCoveringTypeE const ifcopenshell::entity& Ifc4x3::IfcCoveringType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[258]); } -Ifc4x3::IfcCoveringType Ifc4x3::IfcCoveringType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcCoveringTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcCoveringTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3::IfcCoveringType Ifc4x3::IfcCoveringType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcCoveringTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcCoveringTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcCrewResource std::optional< ::Ifc4x3::IfcCrewResourceTypeEnum::Value > Ifc4x3::IfcCrewResource::PredefinedType() const { if(get_attribute_value(10).isNull()) { return std::nullopt; } return ::Ifc4x3::IfcCrewResourceTypeEnum::FromString(get_attribute_value(10)); } @@ -9726,7 +9726,7 @@ void Ifc4x3::IfcCrewResource::setPredefinedType(const std::optional< ::Ifc4x3::I const ifcopenshell::entity& Ifc4x3::IfcCrewResource::Class() { return *((ifcopenshell::entity*)IFC4X3_types[260]); } -Ifc4x3::IfcCrewResource Ifc4x3::IfcCrewResource::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, std::optional< std::string > v6_Identification, std::optional< std::string > v7_LongDescription, ::Ifc4x3::IfcResourceTime v8_Usage, std::optional< std::vector< ::Ifc4x3::IfcAppliedValue > > v9_BaseCosts, ::Ifc4x3::IfcPhysicalQuantity v10_BaseQuantity, std::optional< ::Ifc4x3::IfcCrewResourceTypeEnum::Value > v11_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); } if (v6_Identification) {set_attribute_value(5, (*v6_Identification)); } if (v7_LongDescription) {set_attribute_value(6, (*v7_LongDescription)); }set_attribute_value(7, (v8_Usage)); if (v9_BaseCosts) {set_attribute_value(8, cast_vector(*v9_BaseCosts)); }set_attribute_value(9, (v10_BaseQuantity)); if (v11_PredefinedType) {set_attribute_value(10, (enumeration_reference(&::Ifc4x3::IfcCrewResourceTypeEnum::Class(),(size_t)*v11_PredefinedType))); }; return *this; } +Ifc4x3::IfcCrewResource Ifc4x3::IfcCrewResource::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, std::optional< std::string > v6_Identification, std::optional< std::string > v7_LongDescription, ::Ifc4x3::IfcResourceTime v8_Usage, std::optional< std::vector< ::Ifc4x3::IfcAppliedValue > > v9_BaseCosts, ::Ifc4x3::IfcPhysicalQuantity v10_BaseQuantity, std::optional< ::Ifc4x3::IfcCrewResourceTypeEnum::Value > v11_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); } if (v6_Identification) {set_attribute_value(5, (*v6_Identification)); } if (v7_LongDescription) {set_attribute_value(6, (*v7_LongDescription)); }set_attribute_value(7, (v8_Usage)); if (v9_BaseCosts) {set_attribute_value(8, cast_vector(*v9_BaseCosts)); }set_attribute_value(9, (v10_BaseQuantity)); if (v11_PredefinedType) {set_attribute_value(10, (enumeration_reference(&::Ifc4x3::IfcCrewResourceTypeEnum::Class(),(size_t)*v11_PredefinedType))); }; return *this; } // Function implementations for IfcCrewResourceType ::Ifc4x3::IfcCrewResourceTypeEnum::Value Ifc4x3::IfcCrewResourceType::PredefinedType() const { return ::Ifc4x3::IfcCrewResourceTypeEnum::FromString(get_attribute_value(11)); } @@ -9734,10 +9734,10 @@ void Ifc4x3::IfcCrewResourceType::setPredefinedType(const ::Ifc4x3::IfcCrewResou const ifcopenshell::entity& Ifc4x3::IfcCrewResourceType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[261]); } -Ifc4x3::IfcCrewResourceType Ifc4x3::IfcCrewResourceType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::string > v7_Identification, std::optional< std::string > v8_LongDescription, std::optional< std::string > v9_ResourceType, std::optional< std::vector< ::Ifc4x3::IfcAppliedValue > > v10_BaseCosts, ::Ifc4x3::IfcPhysicalQuantity v11_BaseQuantity, ::Ifc4x3::IfcCrewResourceTypeEnum::Value v12_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_Identification) {set_attribute_value(6, (*v7_Identification)); } if (v8_LongDescription) {set_attribute_value(7, (*v8_LongDescription)); } if (v9_ResourceType) {set_attribute_value(8, (*v9_ResourceType)); } if (v10_BaseCosts) {set_attribute_value(9, cast_vector(*v10_BaseCosts)); }set_attribute_value(10, (v11_BaseQuantity));set_attribute_value(11, (enumeration_reference(&::Ifc4x3::IfcCrewResourceTypeEnum::Class(),(size_t)v12_PredefinedType)));; return *this; } +Ifc4x3::IfcCrewResourceType Ifc4x3::IfcCrewResourceType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::string > v7_Identification, std::optional< std::string > v8_LongDescription, std::optional< std::string > v9_ResourceType, std::optional< std::vector< ::Ifc4x3::IfcAppliedValue > > v10_BaseCosts, ::Ifc4x3::IfcPhysicalQuantity v11_BaseQuantity, ::Ifc4x3::IfcCrewResourceTypeEnum::Value v12_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_Identification) {set_attribute_value(6, (*v7_Identification)); } if (v8_LongDescription) {set_attribute_value(7, (*v8_LongDescription)); } if (v9_ResourceType) {set_attribute_value(8, (*v9_ResourceType)); } if (v10_BaseCosts) {set_attribute_value(9, cast_vector(*v10_BaseCosts)); }set_attribute_value(10, (v11_BaseQuantity));set_attribute_value(11, (enumeration_reference(&::Ifc4x3::IfcCrewResourceTypeEnum::Class(),(size_t)v12_PredefinedType)));; return *this; } // Function implementations for IfcCsgPrimitive3D -::Ifc4x3::IfcAxis2Placement3D Ifc4x3::IfcCsgPrimitive3D::Position() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3::IfcAxis2Placement3D>(); } +::Ifc4x3::IfcAxis2Placement3D Ifc4x3::IfcCsgPrimitive3D::Position() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3::IfcAxis2Placement3D>(); } void Ifc4x3::IfcCsgPrimitive3D::setPosition(const ::Ifc4x3::IfcAxis2Placement3D& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } @@ -9745,7 +9745,7 @@ const ifcopenshell::entity& Ifc4x3::IfcCsgPrimitive3D::Class() { return *((ifcop Ifc4x3::IfcCsgPrimitive3D Ifc4x3::IfcCsgPrimitive3D::initialize(::Ifc4x3::IfcAxis2Placement3D v1_Position) { set_attribute_value(0, (v1_Position));; return *this; } // Function implementations for IfcCsgSolid -::Ifc4x3::IfcCsgSelect Ifc4x3::IfcCsgSolid::TreeRootExpression() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3::IfcCsgSelect>(); } +::Ifc4x3::IfcCsgSelect Ifc4x3::IfcCsgSolid::TreeRootExpression() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3::IfcCsgSelect>(); } void Ifc4x3::IfcCsgSolid::setTreeRootExpression(const ::Ifc4x3::IfcCsgSelect& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } @@ -9753,15 +9753,15 @@ const ifcopenshell::entity& Ifc4x3::IfcCsgSolid::Class() { return *((ifcopenshel Ifc4x3::IfcCsgSolid Ifc4x3::IfcCsgSolid::initialize(::Ifc4x3::IfcCsgSelect v1_TreeRootExpression) { set_attribute_value(0, (v1_TreeRootExpression));; return *this; } // Function implementations for IfcCurrencyRelationship -::Ifc4x3::IfcMonetaryUnit Ifc4x3::IfcCurrencyRelationship::RelatingMonetaryUnit() const { return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3::IfcMonetaryUnit>(); } +::Ifc4x3::IfcMonetaryUnit Ifc4x3::IfcCurrencyRelationship::RelatingMonetaryUnit() const { return ((express::base)(get_attribute_value(2))).as<::Ifc4x3::IfcMonetaryUnit>(); } void Ifc4x3::IfcCurrencyRelationship::setRelatingMonetaryUnit(const ::Ifc4x3::IfcMonetaryUnit& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } -::Ifc4x3::IfcMonetaryUnit Ifc4x3::IfcCurrencyRelationship::RelatedMonetaryUnit() const { return ((express::Base)(get_attribute_value(3))).as<::Ifc4x3::IfcMonetaryUnit>(); } +::Ifc4x3::IfcMonetaryUnit Ifc4x3::IfcCurrencyRelationship::RelatedMonetaryUnit() const { return ((express::base)(get_attribute_value(3))).as<::Ifc4x3::IfcMonetaryUnit>(); } void Ifc4x3::IfcCurrencyRelationship::setRelatedMonetaryUnit(const ::Ifc4x3::IfcMonetaryUnit& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } double Ifc4x3::IfcCurrencyRelationship::ExchangeRate() const { double v = get_attribute_value(4); return v; } void Ifc4x3::IfcCurrencyRelationship::setExchangeRate(const double& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } std::optional< std::string > Ifc4x3::IfcCurrencyRelationship::RateDateTime() const { if(get_attribute_value(5).isNull()) { return std::nullopt; } std::string v = get_attribute_value(5); return v; } void Ifc4x3::IfcCurrencyRelationship::setRateDateTime(const std::optional< std::string >& v) { if (v) {set_attribute_value(5, *v);} else {unset_attribute_value(5);} } -::Ifc4x3::IfcLibraryInformation Ifc4x3::IfcCurrencyRelationship::RateSource() const { if(get_attribute_value(6).isNull()) { return ::Ifc4x3::IfcLibraryInformation{}; } return ((express::Base)(get_attribute_value(6))).as<::Ifc4x3::IfcLibraryInformation>(); } +::Ifc4x3::IfcLibraryInformation Ifc4x3::IfcCurrencyRelationship::RateSource() const { if(get_attribute_value(6).isNull()) { return ::Ifc4x3::IfcLibraryInformation{}; } return ((express::base)(get_attribute_value(6))).as<::Ifc4x3::IfcLibraryInformation>(); } void Ifc4x3::IfcCurrencyRelationship::setRateSource(const ::Ifc4x3::IfcLibraryInformation& v) { set_attribute_value(6, v);if constexpr (false)unset_attribute_value(6); } @@ -9782,7 +9782,7 @@ void Ifc4x3::IfcCurtainWallType::setPredefinedType(const ::Ifc4x3::IfcCurtainWal const ifcopenshell::entity& Ifc4x3::IfcCurtainWallType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[269]); } -Ifc4x3::IfcCurtainWallType Ifc4x3::IfcCurtainWallType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcCurtainWallTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcCurtainWallTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3::IfcCurtainWallType Ifc4x3::IfcCurtainWallType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcCurtainWallTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcCurtainWallTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcCurve @@ -9791,37 +9791,37 @@ const ifcopenshell::entity& Ifc4x3::IfcCurve::Class() { return *((ifcopenshell:: Ifc4x3::IfcCurve Ifc4x3::IfcCurve::initialize() { ; return *this; } // Function implementations for IfcCurveBoundedPlane -::Ifc4x3::IfcPlane Ifc4x3::IfcCurveBoundedPlane::BasisSurface() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3::IfcPlane>(); } +::Ifc4x3::IfcPlane Ifc4x3::IfcCurveBoundedPlane::BasisSurface() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3::IfcPlane>(); } void Ifc4x3::IfcCurveBoundedPlane::setBasisSurface(const ::Ifc4x3::IfcPlane& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } -::Ifc4x3::IfcCurve Ifc4x3::IfcCurveBoundedPlane::OuterBoundary() const { return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3::IfcCurve>(); } +::Ifc4x3::IfcCurve Ifc4x3::IfcCurveBoundedPlane::OuterBoundary() const { return ((express::base)(get_attribute_value(1))).as<::Ifc4x3::IfcCurve>(); } void Ifc4x3::IfcCurveBoundedPlane::setOuterBoundary(const ::Ifc4x3::IfcCurve& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } -std::vector< ::Ifc4x3::IfcCurve > Ifc4x3::IfcCurveBoundedPlane::InnerBoundaries() const { std::vector es = get_attribute_value(2); return cast_vector<::Ifc4x3::IfcCurve>(es); } -void Ifc4x3::IfcCurveBoundedPlane::setInnerBoundaries(const std::vector< ::Ifc4x3::IfcCurve >& v) { set_attribute_value(2, cast_vector(v));if constexpr (false)unset_attribute_value(2); } +std::vector< ::Ifc4x3::IfcCurve > Ifc4x3::IfcCurveBoundedPlane::InnerBoundaries() const { std::vector es = get_attribute_value(2); return cast_vector<::Ifc4x3::IfcCurve>(es); } +void Ifc4x3::IfcCurveBoundedPlane::setInnerBoundaries(const std::vector< ::Ifc4x3::IfcCurve >& v) { set_attribute_value(2, cast_vector(v));if constexpr (false)unset_attribute_value(2); } const ifcopenshell::entity& Ifc4x3::IfcCurveBoundedPlane::Class() { return *((ifcopenshell::entity*)IFC4X3_types[273]); } -Ifc4x3::IfcCurveBoundedPlane Ifc4x3::IfcCurveBoundedPlane::initialize(::Ifc4x3::IfcPlane v1_BasisSurface, ::Ifc4x3::IfcCurve v2_OuterBoundary, std::vector< ::Ifc4x3::IfcCurve > v3_InnerBoundaries) { set_attribute_value(0, (v1_BasisSurface));set_attribute_value(1, (v2_OuterBoundary));set_attribute_value(2, cast_vector(v3_InnerBoundaries));; return *this; } +Ifc4x3::IfcCurveBoundedPlane Ifc4x3::IfcCurveBoundedPlane::initialize(::Ifc4x3::IfcPlane v1_BasisSurface, ::Ifc4x3::IfcCurve v2_OuterBoundary, std::vector< ::Ifc4x3::IfcCurve > v3_InnerBoundaries) { set_attribute_value(0, (v1_BasisSurface));set_attribute_value(1, (v2_OuterBoundary));set_attribute_value(2, cast_vector(v3_InnerBoundaries));; return *this; } // Function implementations for IfcCurveBoundedSurface -::Ifc4x3::IfcSurface Ifc4x3::IfcCurveBoundedSurface::BasisSurface() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3::IfcSurface>(); } +::Ifc4x3::IfcSurface Ifc4x3::IfcCurveBoundedSurface::BasisSurface() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3::IfcSurface>(); } void Ifc4x3::IfcCurveBoundedSurface::setBasisSurface(const ::Ifc4x3::IfcSurface& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } -std::vector< ::Ifc4x3::IfcBoundaryCurve > Ifc4x3::IfcCurveBoundedSurface::Boundaries() const { std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3::IfcBoundaryCurve>(es); } -void Ifc4x3::IfcCurveBoundedSurface::setBoundaries(const std::vector< ::Ifc4x3::IfcBoundaryCurve >& v) { set_attribute_value(1, cast_vector(v));if constexpr (false)unset_attribute_value(1); } +std::vector< ::Ifc4x3::IfcBoundaryCurve > Ifc4x3::IfcCurveBoundedSurface::Boundaries() const { std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3::IfcBoundaryCurve>(es); } +void Ifc4x3::IfcCurveBoundedSurface::setBoundaries(const std::vector< ::Ifc4x3::IfcBoundaryCurve >& v) { set_attribute_value(1, cast_vector(v));if constexpr (false)unset_attribute_value(1); } bool Ifc4x3::IfcCurveBoundedSurface::ImplicitOuter() const { bool v = get_attribute_value(2); return v; } void Ifc4x3::IfcCurveBoundedSurface::setImplicitOuter(const bool& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } const ifcopenshell::entity& Ifc4x3::IfcCurveBoundedSurface::Class() { return *((ifcopenshell::entity*)IFC4X3_types[274]); } -Ifc4x3::IfcCurveBoundedSurface Ifc4x3::IfcCurveBoundedSurface::initialize(::Ifc4x3::IfcSurface v1_BasisSurface, std::vector< ::Ifc4x3::IfcBoundaryCurve > v2_Boundaries, bool v3_ImplicitOuter) { set_attribute_value(0, (v1_BasisSurface));set_attribute_value(1, cast_vector(v2_Boundaries));set_attribute_value(2, (v3_ImplicitOuter));; return *this; } +Ifc4x3::IfcCurveBoundedSurface Ifc4x3::IfcCurveBoundedSurface::initialize(::Ifc4x3::IfcSurface v1_BasisSurface, std::vector< ::Ifc4x3::IfcBoundaryCurve > v2_Boundaries, bool v3_ImplicitOuter) { set_attribute_value(0, (v1_BasisSurface));set_attribute_value(1, cast_vector(v2_Boundaries));set_attribute_value(2, (v3_ImplicitOuter));; return *this; } // Function implementations for IfcCurveSegment -::Ifc4x3::IfcPlacement Ifc4x3::IfcCurveSegment::Placement() const { return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3::IfcPlacement>(); } +::Ifc4x3::IfcPlacement Ifc4x3::IfcCurveSegment::Placement() const { return ((express::base)(get_attribute_value(1))).as<::Ifc4x3::IfcPlacement>(); } void Ifc4x3::IfcCurveSegment::setPlacement(const ::Ifc4x3::IfcPlacement& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } -::Ifc4x3::IfcCurveMeasureSelect Ifc4x3::IfcCurveSegment::SegmentStart() const { return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3::IfcCurveMeasureSelect>(); } +::Ifc4x3::IfcCurveMeasureSelect Ifc4x3::IfcCurveSegment::SegmentStart() const { return ((express::base)(get_attribute_value(2))).as<::Ifc4x3::IfcCurveMeasureSelect>(); } void Ifc4x3::IfcCurveSegment::setSegmentStart(const ::Ifc4x3::IfcCurveMeasureSelect& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } -::Ifc4x3::IfcCurveMeasureSelect Ifc4x3::IfcCurveSegment::SegmentLength() const { return ((express::Base)(get_attribute_value(3))).as<::Ifc4x3::IfcCurveMeasureSelect>(); } +::Ifc4x3::IfcCurveMeasureSelect Ifc4x3::IfcCurveSegment::SegmentLength() const { return ((express::base)(get_attribute_value(3))).as<::Ifc4x3::IfcCurveMeasureSelect>(); } void Ifc4x3::IfcCurveSegment::setSegmentLength(const ::Ifc4x3::IfcCurveMeasureSelect& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } -::Ifc4x3::IfcCurve Ifc4x3::IfcCurveSegment::ParentCurve() const { return ((express::Base)(get_attribute_value(4))).as<::Ifc4x3::IfcCurve>(); } +::Ifc4x3::IfcCurve Ifc4x3::IfcCurveSegment::ParentCurve() const { return ((express::base)(get_attribute_value(4))).as<::Ifc4x3::IfcCurve>(); } void Ifc4x3::IfcCurveSegment::setParentCurve(const ::Ifc4x3::IfcCurve& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } @@ -9829,11 +9829,11 @@ const ifcopenshell::entity& Ifc4x3::IfcCurveSegment::Class() { return *((ifcopen Ifc4x3::IfcCurveSegment Ifc4x3::IfcCurveSegment::initialize(::Ifc4x3::IfcTransitionCode::Value v1_Transition, ::Ifc4x3::IfcPlacement v2_Placement, ::Ifc4x3::IfcCurveMeasureSelect v3_SegmentStart, ::Ifc4x3::IfcCurveMeasureSelect v4_SegmentLength, ::Ifc4x3::IfcCurve v5_ParentCurve) { set_attribute_value(0, (enumeration_reference(&::Ifc4x3::IfcTransitionCode::Class(),(size_t)v1_Transition)));set_attribute_value(1, (v2_Placement));set_attribute_value(2, (v3_SegmentStart));set_attribute_value(3, (v4_SegmentLength));set_attribute_value(4, (v5_ParentCurve));; return *this; } // Function implementations for IfcCurveStyle -::Ifc4x3::IfcCurveFontOrScaledCurveFontSelect Ifc4x3::IfcCurveStyle::CurveFont() const { if(get_attribute_value(1).isNull()) { return ::Ifc4x3::IfcCurveFontOrScaledCurveFontSelect{}; } return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3::IfcCurveFontOrScaledCurveFontSelect>(); } +::Ifc4x3::IfcCurveFontOrScaledCurveFontSelect Ifc4x3::IfcCurveStyle::CurveFont() const { if(get_attribute_value(1).isNull()) { return ::Ifc4x3::IfcCurveFontOrScaledCurveFontSelect{}; } return ((express::base)(get_attribute_value(1))).as<::Ifc4x3::IfcCurveFontOrScaledCurveFontSelect>(); } void Ifc4x3::IfcCurveStyle::setCurveFont(const ::Ifc4x3::IfcCurveFontOrScaledCurveFontSelect& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } -::Ifc4x3::IfcSizeSelect Ifc4x3::IfcCurveStyle::CurveWidth() const { if(get_attribute_value(2).isNull()) { return ::Ifc4x3::IfcSizeSelect{}; } return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3::IfcSizeSelect>(); } +::Ifc4x3::IfcSizeSelect Ifc4x3::IfcCurveStyle::CurveWidth() const { if(get_attribute_value(2).isNull()) { return ::Ifc4x3::IfcSizeSelect{}; } return ((express::base)(get_attribute_value(2))).as<::Ifc4x3::IfcSizeSelect>(); } void Ifc4x3::IfcCurveStyle::setCurveWidth(const ::Ifc4x3::IfcSizeSelect& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } -::Ifc4x3::IfcColour Ifc4x3::IfcCurveStyle::CurveColour() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3::IfcColour{}; } return ((express::Base)(get_attribute_value(3))).as<::Ifc4x3::IfcColour>(); } +::Ifc4x3::IfcColour Ifc4x3::IfcCurveStyle::CurveColour() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3::IfcColour{}; } return ((express::base)(get_attribute_value(3))).as<::Ifc4x3::IfcColour>(); } void Ifc4x3::IfcCurveStyle::setCurveColour(const ::Ifc4x3::IfcColour& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } std::optional< bool > Ifc4x3::IfcCurveStyle::ModelOrDraughting() const { if(get_attribute_value(4).isNull()) { return std::nullopt; } bool v = get_attribute_value(4); return v; } void Ifc4x3::IfcCurveStyle::setModelOrDraughting(const std::optional< bool >& v) { if (v) {set_attribute_value(4, *v);} else {unset_attribute_value(4);} } @@ -9845,17 +9845,17 @@ Ifc4x3::IfcCurveStyle Ifc4x3::IfcCurveStyle::initialize(std::optional< std::stri // Function implementations for IfcCurveStyleFont std::optional< std::string > Ifc4x3::IfcCurveStyleFont::Name() const { if(get_attribute_value(0).isNull()) { return std::nullopt; } std::string v = get_attribute_value(0); return v; } void Ifc4x3::IfcCurveStyleFont::setName(const std::optional< std::string >& v) { if (v) {set_attribute_value(0, *v);} else {unset_attribute_value(0);} } -std::vector< ::Ifc4x3::IfcCurveStyleFontPattern > Ifc4x3::IfcCurveStyleFont::PatternList() const { std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3::IfcCurveStyleFontPattern>(es); } -void Ifc4x3::IfcCurveStyleFont::setPatternList(const std::vector< ::Ifc4x3::IfcCurveStyleFontPattern >& v) { set_attribute_value(1, cast_vector(v));if constexpr (false)unset_attribute_value(1); } +std::vector< ::Ifc4x3::IfcCurveStyleFontPattern > Ifc4x3::IfcCurveStyleFont::PatternList() const { std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3::IfcCurveStyleFontPattern>(es); } +void Ifc4x3::IfcCurveStyleFont::setPatternList(const std::vector< ::Ifc4x3::IfcCurveStyleFontPattern >& v) { set_attribute_value(1, cast_vector(v));if constexpr (false)unset_attribute_value(1); } const ifcopenshell::entity& Ifc4x3::IfcCurveStyleFont::Class() { return *((ifcopenshell::entity*)IFC4X3_types[282]); } -Ifc4x3::IfcCurveStyleFont Ifc4x3::IfcCurveStyleFont::initialize(std::optional< std::string > v1_Name, std::vector< ::Ifc4x3::IfcCurveStyleFontPattern > v2_PatternList) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); }set_attribute_value(1, cast_vector(v2_PatternList));; return *this; } +Ifc4x3::IfcCurveStyleFont Ifc4x3::IfcCurveStyleFont::initialize(std::optional< std::string > v1_Name, std::vector< ::Ifc4x3::IfcCurveStyleFontPattern > v2_PatternList) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); }set_attribute_value(1, cast_vector(v2_PatternList));; return *this; } // Function implementations for IfcCurveStyleFontAndScaling std::optional< std::string > Ifc4x3::IfcCurveStyleFontAndScaling::Name() const { if(get_attribute_value(0).isNull()) { return std::nullopt; } std::string v = get_attribute_value(0); return v; } void Ifc4x3::IfcCurveStyleFontAndScaling::setName(const std::optional< std::string >& v) { if (v) {set_attribute_value(0, *v);} else {unset_attribute_value(0);} } -::Ifc4x3::IfcCurveStyleFontSelect Ifc4x3::IfcCurveStyleFontAndScaling::CurveStyleFont() const { return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3::IfcCurveStyleFontSelect>(); } +::Ifc4x3::IfcCurveStyleFontSelect Ifc4x3::IfcCurveStyleFontAndScaling::CurveStyleFont() const { return ((express::base)(get_attribute_value(1))).as<::Ifc4x3::IfcCurveStyleFontSelect>(); } void Ifc4x3::IfcCurveStyleFontAndScaling::setCurveStyleFont(const ::Ifc4x3::IfcCurveStyleFontSelect& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } double Ifc4x3::IfcCurveStyleFontAndScaling::CurveFontScaling() const { double v = get_attribute_value(2); return v; } void Ifc4x3::IfcCurveStyleFontAndScaling::setCurveFontScaling(const double& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } @@ -9896,7 +9896,7 @@ void Ifc4x3::IfcDamperType::setPredefinedType(const ::Ifc4x3::IfcDamperTypeEnum: const ifcopenshell::entity& Ifc4x3::IfcDamperType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[288]); } -Ifc4x3::IfcDamperType Ifc4x3::IfcDamperType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcDamperTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcDamperTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3::IfcDamperType Ifc4x3::IfcDamperType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcDamperTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcDamperTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcDeepFoundation @@ -9908,12 +9908,12 @@ Ifc4x3::IfcDeepFoundation Ifc4x3::IfcDeepFoundation::initialize(std::string v1_G const ifcopenshell::entity& Ifc4x3::IfcDeepFoundationType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[296]); } -Ifc4x3::IfcDeepFoundationType Ifc4x3::IfcDeepFoundationType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } +Ifc4x3::IfcDeepFoundationType Ifc4x3::IfcDeepFoundationType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } // Function implementations for IfcDerivedProfileDef -::Ifc4x3::IfcProfileDef Ifc4x3::IfcDerivedProfileDef::ParentProfile() const { return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3::IfcProfileDef>(); } +::Ifc4x3::IfcProfileDef Ifc4x3::IfcDerivedProfileDef::ParentProfile() const { return ((express::base)(get_attribute_value(2))).as<::Ifc4x3::IfcProfileDef>(); } void Ifc4x3::IfcDerivedProfileDef::setParentProfile(const ::Ifc4x3::IfcProfileDef& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } -::Ifc4x3::IfcCartesianTransformationOperator2D Ifc4x3::IfcDerivedProfileDef::Operator() const { return ((express::Base)(get_attribute_value(3))).as<::Ifc4x3::IfcCartesianTransformationOperator2D>(); } +::Ifc4x3::IfcCartesianTransformationOperator2D Ifc4x3::IfcDerivedProfileDef::Operator() const { return ((express::base)(get_attribute_value(3))).as<::Ifc4x3::IfcCartesianTransformationOperator2D>(); } void Ifc4x3::IfcDerivedProfileDef::setOperator(const ::Ifc4x3::IfcCartesianTransformationOperator2D& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } std::optional< std::string > Ifc4x3::IfcDerivedProfileDef::Label() const { if(get_attribute_value(4).isNull()) { return std::nullopt; } std::string v = get_attribute_value(4); return v; } void Ifc4x3::IfcDerivedProfileDef::setLabel(const std::optional< std::string >& v) { if (v) {set_attribute_value(4, *v);} else {unset_attribute_value(4);} } @@ -9923,8 +9923,8 @@ const ifcopenshell::entity& Ifc4x3::IfcDerivedProfileDef::Class() { return *((if Ifc4x3::IfcDerivedProfileDef Ifc4x3::IfcDerivedProfileDef::initialize(::Ifc4x3::IfcProfileTypeEnum::Value v1_ProfileType, std::optional< std::string > v2_ProfileName, ::Ifc4x3::IfcProfileDef v3_ParentProfile, ::Ifc4x3::IfcCartesianTransformationOperator2D v4_Operator, std::optional< std::string > v5_Label) { set_attribute_value(0, (enumeration_reference(&::Ifc4x3::IfcProfileTypeEnum::Class(),(size_t)v1_ProfileType))); if (v2_ProfileName) {set_attribute_value(1, (*v2_ProfileName)); }set_attribute_value(2, (v3_ParentProfile));set_attribute_value(3, (v4_Operator)); if (v5_Label) {set_attribute_value(4, (*v5_Label)); }; return *this; } // Function implementations for IfcDerivedUnit -std::vector< ::Ifc4x3::IfcDerivedUnitElement > Ifc4x3::IfcDerivedUnit::Elements() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3::IfcDerivedUnitElement>(es); } -void Ifc4x3::IfcDerivedUnit::setElements(const std::vector< ::Ifc4x3::IfcDerivedUnitElement >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } +std::vector< ::Ifc4x3::IfcDerivedUnitElement > Ifc4x3::IfcDerivedUnit::Elements() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3::IfcDerivedUnitElement>(es); } +void Ifc4x3::IfcDerivedUnit::setElements(const std::vector< ::Ifc4x3::IfcDerivedUnitElement >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } ::Ifc4x3::IfcDerivedUnitEnum::Value Ifc4x3::IfcDerivedUnit::UnitType() const { return ::Ifc4x3::IfcDerivedUnitEnum::FromString(get_attribute_value(1)); } void Ifc4x3::IfcDerivedUnit::setUnitType(const ::Ifc4x3::IfcDerivedUnitEnum::Value& v) { set_attribute_value(1, enumeration_reference(&::Ifc4x3::IfcDerivedUnitEnum::Class(), (size_t) v));if constexpr (false)unset_attribute_value(1); } std::optional< std::string > Ifc4x3::IfcDerivedUnit::UserDefinedType() const { if(get_attribute_value(2).isNull()) { return std::nullopt; } std::string v = get_attribute_value(2); return v; } @@ -9934,10 +9934,10 @@ void Ifc4x3::IfcDerivedUnit::setName(const std::optional< std::string >& v) { if const ifcopenshell::entity& Ifc4x3::IfcDerivedUnit::Class() { return *((ifcopenshell::entity*)IFC4X3_types[300]); } -Ifc4x3::IfcDerivedUnit Ifc4x3::IfcDerivedUnit::initialize(std::vector< ::Ifc4x3::IfcDerivedUnitElement > v1_Elements, ::Ifc4x3::IfcDerivedUnitEnum::Value v2_UnitType, std::optional< std::string > v3_UserDefinedType, std::optional< std::string > v4_Name) { set_attribute_value(0, cast_vector(v1_Elements));set_attribute_value(1, (enumeration_reference(&::Ifc4x3::IfcDerivedUnitEnum::Class(),(size_t)v2_UnitType))); if (v3_UserDefinedType) {set_attribute_value(2, (*v3_UserDefinedType)); } if (v4_Name) {set_attribute_value(3, (*v4_Name)); }; return *this; } +Ifc4x3::IfcDerivedUnit Ifc4x3::IfcDerivedUnit::initialize(std::vector< ::Ifc4x3::IfcDerivedUnitElement > v1_Elements, ::Ifc4x3::IfcDerivedUnitEnum::Value v2_UnitType, std::optional< std::string > v3_UserDefinedType, std::optional< std::string > v4_Name) { set_attribute_value(0, cast_vector(v1_Elements));set_attribute_value(1, (enumeration_reference(&::Ifc4x3::IfcDerivedUnitEnum::Class(),(size_t)v2_UnitType))); if (v3_UserDefinedType) {set_attribute_value(2, (*v3_UserDefinedType)); } if (v4_Name) {set_attribute_value(3, (*v4_Name)); }; return *this; } // Function implementations for IfcDerivedUnitElement -::Ifc4x3::IfcNamedUnit Ifc4x3::IfcDerivedUnitElement::Unit() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3::IfcNamedUnit>(); } +::Ifc4x3::IfcNamedUnit Ifc4x3::IfcDerivedUnitElement::Unit() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3::IfcNamedUnit>(); } void Ifc4x3::IfcDerivedUnitElement::setUnit(const ::Ifc4x3::IfcNamedUnit& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } int64_t Ifc4x3::IfcDerivedUnitElement::Exponent() const { int64_t v = get_attribute_value(1); return v; } void Ifc4x3::IfcDerivedUnitElement::setExponent(const int64_t& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } @@ -9975,11 +9975,11 @@ const ifcopenshell::entity& Ifc4x3::IfcDirection::Class() { return *((ifcopenshe Ifc4x3::IfcDirection Ifc4x3::IfcDirection::initialize(std::vector< double > /*[2:3]*/ v1_DirectionRatios) { set_attribute_value(0, (v1_DirectionRatios));; return *this; } // Function implementations for IfcDirectrixCurveSweptAreaSolid -::Ifc4x3::IfcCurve Ifc4x3::IfcDirectrixCurveSweptAreaSolid::Directrix() const { return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3::IfcCurve>(); } +::Ifc4x3::IfcCurve Ifc4x3::IfcDirectrixCurveSweptAreaSolid::Directrix() const { return ((express::base)(get_attribute_value(2))).as<::Ifc4x3::IfcCurve>(); } void Ifc4x3::IfcDirectrixCurveSweptAreaSolid::setDirectrix(const ::Ifc4x3::IfcCurve& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } -::Ifc4x3::IfcCurveMeasureSelect Ifc4x3::IfcDirectrixCurveSweptAreaSolid::StartParam() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3::IfcCurveMeasureSelect{}; } return ((express::Base)(get_attribute_value(3))).as<::Ifc4x3::IfcCurveMeasureSelect>(); } +::Ifc4x3::IfcCurveMeasureSelect Ifc4x3::IfcDirectrixCurveSweptAreaSolid::StartParam() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3::IfcCurveMeasureSelect{}; } return ((express::base)(get_attribute_value(3))).as<::Ifc4x3::IfcCurveMeasureSelect>(); } void Ifc4x3::IfcDirectrixCurveSweptAreaSolid::setStartParam(const ::Ifc4x3::IfcCurveMeasureSelect& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } -::Ifc4x3::IfcCurveMeasureSelect Ifc4x3::IfcDirectrixCurveSweptAreaSolid::EndParam() const { if(get_attribute_value(4).isNull()) { return ::Ifc4x3::IfcCurveMeasureSelect{}; } return ((express::Base)(get_attribute_value(4))).as<::Ifc4x3::IfcCurveMeasureSelect>(); } +::Ifc4x3::IfcCurveMeasureSelect Ifc4x3::IfcDirectrixCurveSweptAreaSolid::EndParam() const { if(get_attribute_value(4).isNull()) { return ::Ifc4x3::IfcCurveMeasureSelect{}; } return ((express::base)(get_attribute_value(4))).as<::Ifc4x3::IfcCurveMeasureSelect>(); } void Ifc4x3::IfcDirectrixCurveSweptAreaSolid::setEndParam(const ::Ifc4x3::IfcCurveMeasureSelect& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } @@ -10006,7 +10006,7 @@ void Ifc4x3::IfcDiscreteAccessoryType::setPredefinedType(const ::Ifc4x3::IfcDisc const ifcopenshell::entity& Ifc4x3::IfcDiscreteAccessoryType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[311]); } -Ifc4x3::IfcDiscreteAccessoryType Ifc4x3::IfcDiscreteAccessoryType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcDiscreteAccessoryTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcDiscreteAccessoryTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3::IfcDiscreteAccessoryType Ifc4x3::IfcDiscreteAccessoryType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcDiscreteAccessoryTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcDiscreteAccessoryTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcDistributionBoard std::optional< ::Ifc4x3::IfcDistributionBoardTypeEnum::Value > Ifc4x3::IfcDistributionBoard::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3::IfcDistributionBoardTypeEnum::FromString(get_attribute_value(8)); } @@ -10022,7 +10022,7 @@ void Ifc4x3::IfcDistributionBoardType::setPredefinedType(const ::Ifc4x3::IfcDist const ifcopenshell::entity& Ifc4x3::IfcDistributionBoardType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[314]); } -Ifc4x3::IfcDistributionBoardType Ifc4x3::IfcDistributionBoardType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcDistributionBoardTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcDistributionBoardTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3::IfcDistributionBoardType Ifc4x3::IfcDistributionBoardType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcDistributionBoardTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcDistributionBoardTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcDistributionChamberElement std::optional< ::Ifc4x3::IfcDistributionChamberElementTypeEnum::Value > Ifc4x3::IfcDistributionChamberElement::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3::IfcDistributionChamberElementTypeEnum::FromString(get_attribute_value(8)); } @@ -10038,7 +10038,7 @@ void Ifc4x3::IfcDistributionChamberElementType::setPredefinedType(const ::Ifc4x3 const ifcopenshell::entity& Ifc4x3::IfcDistributionChamberElementType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[317]); } -Ifc4x3::IfcDistributionChamberElementType Ifc4x3::IfcDistributionChamberElementType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcDistributionChamberElementTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcDistributionChamberElementTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3::IfcDistributionChamberElementType Ifc4x3::IfcDistributionChamberElementType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcDistributionChamberElementTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcDistributionChamberElementTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcDistributionCircuit @@ -10057,7 +10057,7 @@ Ifc4x3::IfcDistributionControlElement Ifc4x3::IfcDistributionControlElement::ini const ifcopenshell::entity& Ifc4x3::IfcDistributionControlElementType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[321]); } -Ifc4x3::IfcDistributionControlElementType Ifc4x3::IfcDistributionControlElementType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } +Ifc4x3::IfcDistributionControlElementType Ifc4x3::IfcDistributionControlElementType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } // Function implementations for IfcDistributionElement @@ -10070,7 +10070,7 @@ Ifc4x3::IfcDistributionElement Ifc4x3::IfcDistributionElement::initialize(std::s const ifcopenshell::entity& Ifc4x3::IfcDistributionElementType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[323]); } -Ifc4x3::IfcDistributionElementType Ifc4x3::IfcDistributionElementType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } +Ifc4x3::IfcDistributionElementType Ifc4x3::IfcDistributionElementType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } // Function implementations for IfcDistributionFlowElement @@ -10083,7 +10083,7 @@ Ifc4x3::IfcDistributionFlowElement Ifc4x3::IfcDistributionFlowElement::initializ const ifcopenshell::entity& Ifc4x3::IfcDistributionFlowElementType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[325]); } -Ifc4x3::IfcDistributionFlowElementType Ifc4x3::IfcDistributionFlowElementType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } +Ifc4x3::IfcDistributionFlowElementType Ifc4x3::IfcDistributionFlowElementType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } // Function implementations for IfcDistributionPort std::optional< ::Ifc4x3::IfcFlowDirectionEnum::Value > Ifc4x3::IfcDistributionPort::FlowDirection() const { if(get_attribute_value(7).isNull()) { return std::nullopt; } return ::Ifc4x3::IfcFlowDirectionEnum::FromString(get_attribute_value(7)); } @@ -10124,10 +10124,10 @@ std::optional< std::string > Ifc4x3::IfcDocumentInformation::Scope() const { if( void Ifc4x3::IfcDocumentInformation::setScope(const std::optional< std::string >& v) { if (v) {set_attribute_value(6, *v);} else {unset_attribute_value(6);} } std::optional< std::string > Ifc4x3::IfcDocumentInformation::Revision() const { if(get_attribute_value(7).isNull()) { return std::nullopt; } std::string v = get_attribute_value(7); return v; } void Ifc4x3::IfcDocumentInformation::setRevision(const std::optional< std::string >& v) { if (v) {set_attribute_value(7, *v);} else {unset_attribute_value(7);} } -::Ifc4x3::IfcActorSelect Ifc4x3::IfcDocumentInformation::DocumentOwner() const { if(get_attribute_value(8).isNull()) { return ::Ifc4x3::IfcActorSelect{}; } return ((express::Base)(get_attribute_value(8))).as<::Ifc4x3::IfcActorSelect>(); } +::Ifc4x3::IfcActorSelect Ifc4x3::IfcDocumentInformation::DocumentOwner() const { if(get_attribute_value(8).isNull()) { return ::Ifc4x3::IfcActorSelect{}; } return ((express::base)(get_attribute_value(8))).as<::Ifc4x3::IfcActorSelect>(); } void Ifc4x3::IfcDocumentInformation::setDocumentOwner(const ::Ifc4x3::IfcActorSelect& v) { set_attribute_value(8, v);if constexpr (false)unset_attribute_value(8); } -std::optional< std::vector< ::Ifc4x3::IfcActorSelect > > Ifc4x3::IfcDocumentInformation::Editors() const { if(get_attribute_value(9).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(9); return cast_vector<::Ifc4x3::IfcActorSelect>(es); } -void Ifc4x3::IfcDocumentInformation::setEditors(const std::optional< std::vector< ::Ifc4x3::IfcActorSelect > >& v) { if (v) {set_attribute_value(9, cast_vector(*v));} else {unset_attribute_value(9);} } +std::optional< std::vector< ::Ifc4x3::IfcActorSelect > > Ifc4x3::IfcDocumentInformation::Editors() const { if(get_attribute_value(9).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(9); return cast_vector<::Ifc4x3::IfcActorSelect>(es); } +void Ifc4x3::IfcDocumentInformation::setEditors(const std::optional< std::vector< ::Ifc4x3::IfcActorSelect > >& v) { if (v) {set_attribute_value(9, cast_vector(*v));} else {unset_attribute_value(9);} } std::optional< std::string > Ifc4x3::IfcDocumentInformation::CreationTime() const { if(get_attribute_value(10).isNull()) { return std::nullopt; } std::string v = get_attribute_value(10); return v; } void Ifc4x3::IfcDocumentInformation::setCreationTime(const std::optional< std::string >& v) { if (v) {set_attribute_value(10, *v);} else {unset_attribute_value(10);} } std::optional< std::string > Ifc4x3::IfcDocumentInformation::LastRevisionTime() const { if(get_attribute_value(11).isNull()) { return std::nullopt; } std::string v = get_attribute_value(11); return v; } @@ -10149,24 +10149,24 @@ std::vector<::Ifc4x3::IfcDocumentInformationRelationship> Ifc4x3::IfcDocumentInf std::vector<::Ifc4x3::IfcDocumentInformationRelationship> Ifc4x3::IfcDocumentInformation::IsPointer() const { return cast_vector(file()->get_inverse(data()->id(), IFC4X3_types[332], 2)); } const ifcopenshell::entity& Ifc4x3::IfcDocumentInformation::Class() { return *((ifcopenshell::entity*)IFC4X3_types[331]); } -Ifc4x3::IfcDocumentInformation Ifc4x3::IfcDocumentInformation::initialize(std::string v1_Identification, std::string v2_Name, std::optional< std::string > v3_Description, std::optional< std::string > v4_Location, std::optional< std::string > v5_Purpose, std::optional< std::string > v6_IntendedUse, std::optional< std::string > v7_Scope, std::optional< std::string > v8_Revision, ::Ifc4x3::IfcActorSelect v9_DocumentOwner, std::optional< std::vector< ::Ifc4x3::IfcActorSelect > > v10_Editors, std::optional< std::string > v11_CreationTime, std::optional< std::string > v12_LastRevisionTime, std::optional< std::string > v13_ElectronicFormat, std::optional< std::string > v14_ValidFrom, std::optional< std::string > v15_ValidUntil, std::optional< ::Ifc4x3::IfcDocumentConfidentialityEnum::Value > v16_Confidentiality, std::optional< ::Ifc4x3::IfcDocumentStatusEnum::Value > v17_Status) { set_attribute_value(0, (v1_Identification));set_attribute_value(1, (v2_Name)); if (v3_Description) {set_attribute_value(2, (*v3_Description)); } if (v4_Location) {set_attribute_value(3, (*v4_Location)); } if (v5_Purpose) {set_attribute_value(4, (*v5_Purpose)); } if (v6_IntendedUse) {set_attribute_value(5, (*v6_IntendedUse)); } if (v7_Scope) {set_attribute_value(6, (*v7_Scope)); } if (v8_Revision) {set_attribute_value(7, (*v8_Revision)); }set_attribute_value(8, (v9_DocumentOwner)); if (v10_Editors) {set_attribute_value(9, cast_vector(*v10_Editors)); } if (v11_CreationTime) {set_attribute_value(10, (*v11_CreationTime)); } if (v12_LastRevisionTime) {set_attribute_value(11, (*v12_LastRevisionTime)); } if (v13_ElectronicFormat) {set_attribute_value(12, (*v13_ElectronicFormat)); } if (v14_ValidFrom) {set_attribute_value(13, (*v14_ValidFrom)); } if (v15_ValidUntil) {set_attribute_value(14, (*v15_ValidUntil)); } if (v16_Confidentiality) {set_attribute_value(15, (enumeration_reference(&::Ifc4x3::IfcDocumentConfidentialityEnum::Class(),(size_t)*v16_Confidentiality))); } if (v17_Status) {set_attribute_value(16, (enumeration_reference(&::Ifc4x3::IfcDocumentStatusEnum::Class(),(size_t)*v17_Status))); }; return *this; } +Ifc4x3::IfcDocumentInformation Ifc4x3::IfcDocumentInformation::initialize(std::string v1_Identification, std::string v2_Name, std::optional< std::string > v3_Description, std::optional< std::string > v4_Location, std::optional< std::string > v5_Purpose, std::optional< std::string > v6_IntendedUse, std::optional< std::string > v7_Scope, std::optional< std::string > v8_Revision, ::Ifc4x3::IfcActorSelect v9_DocumentOwner, std::optional< std::vector< ::Ifc4x3::IfcActorSelect > > v10_Editors, std::optional< std::string > v11_CreationTime, std::optional< std::string > v12_LastRevisionTime, std::optional< std::string > v13_ElectronicFormat, std::optional< std::string > v14_ValidFrom, std::optional< std::string > v15_ValidUntil, std::optional< ::Ifc4x3::IfcDocumentConfidentialityEnum::Value > v16_Confidentiality, std::optional< ::Ifc4x3::IfcDocumentStatusEnum::Value > v17_Status) { set_attribute_value(0, (v1_Identification));set_attribute_value(1, (v2_Name)); if (v3_Description) {set_attribute_value(2, (*v3_Description)); } if (v4_Location) {set_attribute_value(3, (*v4_Location)); } if (v5_Purpose) {set_attribute_value(4, (*v5_Purpose)); } if (v6_IntendedUse) {set_attribute_value(5, (*v6_IntendedUse)); } if (v7_Scope) {set_attribute_value(6, (*v7_Scope)); } if (v8_Revision) {set_attribute_value(7, (*v8_Revision)); }set_attribute_value(8, (v9_DocumentOwner)); if (v10_Editors) {set_attribute_value(9, cast_vector(*v10_Editors)); } if (v11_CreationTime) {set_attribute_value(10, (*v11_CreationTime)); } if (v12_LastRevisionTime) {set_attribute_value(11, (*v12_LastRevisionTime)); } if (v13_ElectronicFormat) {set_attribute_value(12, (*v13_ElectronicFormat)); } if (v14_ValidFrom) {set_attribute_value(13, (*v14_ValidFrom)); } if (v15_ValidUntil) {set_attribute_value(14, (*v15_ValidUntil)); } if (v16_Confidentiality) {set_attribute_value(15, (enumeration_reference(&::Ifc4x3::IfcDocumentConfidentialityEnum::Class(),(size_t)*v16_Confidentiality))); } if (v17_Status) {set_attribute_value(16, (enumeration_reference(&::Ifc4x3::IfcDocumentStatusEnum::Class(),(size_t)*v17_Status))); }; return *this; } // Function implementations for IfcDocumentInformationRelationship -::Ifc4x3::IfcDocumentInformation Ifc4x3::IfcDocumentInformationRelationship::RelatingDocument() const { return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3::IfcDocumentInformation>(); } +::Ifc4x3::IfcDocumentInformation Ifc4x3::IfcDocumentInformationRelationship::RelatingDocument() const { return ((express::base)(get_attribute_value(2))).as<::Ifc4x3::IfcDocumentInformation>(); } void Ifc4x3::IfcDocumentInformationRelationship::setRelatingDocument(const ::Ifc4x3::IfcDocumentInformation& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } -std::vector< ::Ifc4x3::IfcDocumentInformation > Ifc4x3::IfcDocumentInformationRelationship::RelatedDocuments() const { std::vector es = get_attribute_value(3); return cast_vector<::Ifc4x3::IfcDocumentInformation>(es); } -void Ifc4x3::IfcDocumentInformationRelationship::setRelatedDocuments(const std::vector< ::Ifc4x3::IfcDocumentInformation >& v) { set_attribute_value(3, cast_vector(v));if constexpr (false)unset_attribute_value(3); } +std::vector< ::Ifc4x3::IfcDocumentInformation > Ifc4x3::IfcDocumentInformationRelationship::RelatedDocuments() const { std::vector es = get_attribute_value(3); return cast_vector<::Ifc4x3::IfcDocumentInformation>(es); } +void Ifc4x3::IfcDocumentInformationRelationship::setRelatedDocuments(const std::vector< ::Ifc4x3::IfcDocumentInformation >& v) { set_attribute_value(3, cast_vector(v));if constexpr (false)unset_attribute_value(3); } std::optional< std::string > Ifc4x3::IfcDocumentInformationRelationship::RelationshipType() const { if(get_attribute_value(4).isNull()) { return std::nullopt; } std::string v = get_attribute_value(4); return v; } void Ifc4x3::IfcDocumentInformationRelationship::setRelationshipType(const std::optional< std::string >& v) { if (v) {set_attribute_value(4, *v);} else {unset_attribute_value(4);} } const ifcopenshell::entity& Ifc4x3::IfcDocumentInformationRelationship::Class() { return *((ifcopenshell::entity*)IFC4X3_types[332]); } -Ifc4x3::IfcDocumentInformationRelationship Ifc4x3::IfcDocumentInformationRelationship::initialize(std::optional< std::string > v1_Name, std::optional< std::string > v2_Description, ::Ifc4x3::IfcDocumentInformation v3_RelatingDocument, std::vector< ::Ifc4x3::IfcDocumentInformation > v4_RelatedDocuments, std::optional< std::string > v5_RelationshipType) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); } if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, (v3_RelatingDocument));set_attribute_value(3, cast_vector(v4_RelatedDocuments)); if (v5_RelationshipType) {set_attribute_value(4, (*v5_RelationshipType)); }; return *this; } +Ifc4x3::IfcDocumentInformationRelationship Ifc4x3::IfcDocumentInformationRelationship::initialize(std::optional< std::string > v1_Name, std::optional< std::string > v2_Description, ::Ifc4x3::IfcDocumentInformation v3_RelatingDocument, std::vector< ::Ifc4x3::IfcDocumentInformation > v4_RelatedDocuments, std::optional< std::string > v5_RelationshipType) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); } if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, (v3_RelatingDocument));set_attribute_value(3, cast_vector(v4_RelatedDocuments)); if (v5_RelationshipType) {set_attribute_value(4, (*v5_RelationshipType)); }; return *this; } // Function implementations for IfcDocumentReference std::optional< std::string > Ifc4x3::IfcDocumentReference::Description() const { if(get_attribute_value(3).isNull()) { return std::nullopt; } std::string v = get_attribute_value(3); return v; } void Ifc4x3::IfcDocumentReference::setDescription(const std::optional< std::string >& v) { if (v) {set_attribute_value(3, *v);} else {unset_attribute_value(3);} } -::Ifc4x3::IfcDocumentInformation Ifc4x3::IfcDocumentReference::ReferencedDocument() const { if(get_attribute_value(4).isNull()) { return ::Ifc4x3::IfcDocumentInformation{}; } return ((express::Base)(get_attribute_value(4))).as<::Ifc4x3::IfcDocumentInformation>(); } +::Ifc4x3::IfcDocumentInformation Ifc4x3::IfcDocumentReference::ReferencedDocument() const { if(get_attribute_value(4).isNull()) { return ::Ifc4x3::IfcDocumentInformation{}; } return ((express::base)(get_attribute_value(4))).as<::Ifc4x3::IfcDocumentInformation>(); } void Ifc4x3::IfcDocumentReference::setReferencedDocument(const ::Ifc4x3::IfcDocumentInformation& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } std::vector<::Ifc4x3::IfcRelAssociatesDocument> Ifc4x3::IfcDocumentReference::DocumentRefForObjects() const { return cast_vector(file()->get_inverse(data()->id(), IFC4X3_types[913], 5)); } @@ -10211,7 +10211,7 @@ std::optional< double > Ifc4x3::IfcDoorLiningProperties::CasingThickness() const void Ifc4x3::IfcDoorLiningProperties::setCasingThickness(const std::optional< double >& v) { if (v) {set_attribute_value(12, *v);} else {unset_attribute_value(12);} } std::optional< double > Ifc4x3::IfcDoorLiningProperties::CasingDepth() const { if(get_attribute_value(13).isNull()) { return std::nullopt; } double v = get_attribute_value(13); return v; } void Ifc4x3::IfcDoorLiningProperties::setCasingDepth(const std::optional< double >& v) { if (v) {set_attribute_value(13, *v);} else {unset_attribute_value(13);} } -::Ifc4x3::IfcShapeAspect Ifc4x3::IfcDoorLiningProperties::ShapeAspectStyle() const { if(get_attribute_value(14).isNull()) { return ::Ifc4x3::IfcShapeAspect{}; } return ((express::Base)(get_attribute_value(14))).as<::Ifc4x3::IfcShapeAspect>(); } +::Ifc4x3::IfcShapeAspect Ifc4x3::IfcDoorLiningProperties::ShapeAspectStyle() const { if(get_attribute_value(14).isNull()) { return ::Ifc4x3::IfcShapeAspect{}; } return ((express::base)(get_attribute_value(14))).as<::Ifc4x3::IfcShapeAspect>(); } void Ifc4x3::IfcDoorLiningProperties::setShapeAspectStyle(const ::Ifc4x3::IfcShapeAspect& v) { set_attribute_value(14, v);if constexpr (false)unset_attribute_value(14); } std::optional< double > Ifc4x3::IfcDoorLiningProperties::LiningToPanelOffsetX() const { if(get_attribute_value(15).isNull()) { return std::nullopt; } double v = get_attribute_value(15); return v; } void Ifc4x3::IfcDoorLiningProperties::setLiningToPanelOffsetX(const std::optional< double >& v) { if (v) {set_attribute_value(15, *v);} else {unset_attribute_value(15);} } @@ -10231,7 +10231,7 @@ std::optional< double > Ifc4x3::IfcDoorPanelProperties::PanelWidth() const { if( void Ifc4x3::IfcDoorPanelProperties::setPanelWidth(const std::optional< double >& v) { if (v) {set_attribute_value(6, *v);} else {unset_attribute_value(6);} } ::Ifc4x3::IfcDoorPanelPositionEnum::Value Ifc4x3::IfcDoorPanelProperties::PanelPosition() const { return ::Ifc4x3::IfcDoorPanelPositionEnum::FromString(get_attribute_value(7)); } void Ifc4x3::IfcDoorPanelProperties::setPanelPosition(const ::Ifc4x3::IfcDoorPanelPositionEnum::Value& v) { set_attribute_value(7, enumeration_reference(&::Ifc4x3::IfcDoorPanelPositionEnum::Class(), (size_t) v));if constexpr (false)unset_attribute_value(7); } -::Ifc4x3::IfcShapeAspect Ifc4x3::IfcDoorPanelProperties::ShapeAspectStyle() const { if(get_attribute_value(8).isNull()) { return ::Ifc4x3::IfcShapeAspect{}; } return ((express::Base)(get_attribute_value(8))).as<::Ifc4x3::IfcShapeAspect>(); } +::Ifc4x3::IfcShapeAspect Ifc4x3::IfcDoorPanelProperties::ShapeAspectStyle() const { if(get_attribute_value(8).isNull()) { return ::Ifc4x3::IfcShapeAspect{}; } return ((express::base)(get_attribute_value(8))).as<::Ifc4x3::IfcShapeAspect>(); } void Ifc4x3::IfcDoorPanelProperties::setShapeAspectStyle(const ::Ifc4x3::IfcShapeAspect& v) { set_attribute_value(8, v);if constexpr (false)unset_attribute_value(8); } @@ -10250,7 +10250,7 @@ void Ifc4x3::IfcDoorType::setUserDefinedOperationType(const std::optional< std:: const ifcopenshell::entity& Ifc4x3::IfcDoorType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[343]); } -Ifc4x3::IfcDoorType Ifc4x3::IfcDoorType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcDoorTypeEnum::Value v10_PredefinedType, ::Ifc4x3::IfcDoorTypeOperationEnum::Value v11_OperationType, std::optional< bool > v12_ParameterTakesPrecedence, std::optional< std::string > v13_UserDefinedOperationType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcDoorTypeEnum::Class(),(size_t)v10_PredefinedType)));set_attribute_value(10, (enumeration_reference(&::Ifc4x3::IfcDoorTypeOperationEnum::Class(),(size_t)v11_OperationType))); if (v12_ParameterTakesPrecedence) {set_attribute_value(11, (*v12_ParameterTakesPrecedence)); } if (v13_UserDefinedOperationType) {set_attribute_value(12, (*v13_UserDefinedOperationType)); }; return *this; } +Ifc4x3::IfcDoorType Ifc4x3::IfcDoorType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcDoorTypeEnum::Value v10_PredefinedType, ::Ifc4x3::IfcDoorTypeOperationEnum::Value v11_OperationType, std::optional< bool > v12_ParameterTakesPrecedence, std::optional< std::string > v13_UserDefinedOperationType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcDoorTypeEnum::Class(),(size_t)v10_PredefinedType)));set_attribute_value(10, (enumeration_reference(&::Ifc4x3::IfcDoorTypeOperationEnum::Class(),(size_t)v11_OperationType))); if (v12_ParameterTakesPrecedence) {set_attribute_value(11, (*v12_ParameterTakesPrecedence)); } if (v13_UserDefinedOperationType) {set_attribute_value(12, (*v13_UserDefinedOperationType)); }; return *this; } // Function implementations for IfcDraughtingPreDefinedColour @@ -10278,7 +10278,7 @@ void Ifc4x3::IfcDuctFittingType::setPredefinedType(const ::Ifc4x3::IfcDuctFittin const ifcopenshell::entity& Ifc4x3::IfcDuctFittingType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[350]); } -Ifc4x3::IfcDuctFittingType Ifc4x3::IfcDuctFittingType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcDuctFittingTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcDuctFittingTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3::IfcDuctFittingType Ifc4x3::IfcDuctFittingType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcDuctFittingTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcDuctFittingTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcDuctSegment std::optional< ::Ifc4x3::IfcDuctSegmentTypeEnum::Value > Ifc4x3::IfcDuctSegment::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3::IfcDuctSegmentTypeEnum::FromString(get_attribute_value(8)); } @@ -10294,7 +10294,7 @@ void Ifc4x3::IfcDuctSegmentType::setPredefinedType(const ::Ifc4x3::IfcDuctSegmen const ifcopenshell::entity& Ifc4x3::IfcDuctSegmentType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[353]); } -Ifc4x3::IfcDuctSegmentType Ifc4x3::IfcDuctSegmentType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcDuctSegmentTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcDuctSegmentTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3::IfcDuctSegmentType Ifc4x3::IfcDuctSegmentType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcDuctSegmentTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcDuctSegmentTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcDuctSilencer std::optional< ::Ifc4x3::IfcDuctSilencerTypeEnum::Value > Ifc4x3::IfcDuctSilencer::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3::IfcDuctSilencerTypeEnum::FromString(get_attribute_value(8)); } @@ -10310,7 +10310,7 @@ void Ifc4x3::IfcDuctSilencerType::setPredefinedType(const ::Ifc4x3::IfcDuctSilen const ifcopenshell::entity& Ifc4x3::IfcDuctSilencerType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[356]); } -Ifc4x3::IfcDuctSilencerType Ifc4x3::IfcDuctSilencerType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcDuctSilencerTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcDuctSilencerTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3::IfcDuctSilencerType Ifc4x3::IfcDuctSilencerType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcDuctSilencerTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcDuctSilencerTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcEarthworksCut std::optional< ::Ifc4x3::IfcEarthworksCutTypeEnum::Value > Ifc4x3::IfcEarthworksCut::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3::IfcEarthworksCutTypeEnum::FromString(get_attribute_value(8)); } @@ -10335,9 +10335,9 @@ const ifcopenshell::entity& Ifc4x3::IfcEarthworksFill::Class() { return *((ifcop Ifc4x3::IfcEarthworksFill Ifc4x3::IfcEarthworksFill::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, ::Ifc4x3::IfcObjectPlacement v6_ObjectPlacement, ::Ifc4x3::IfcProductRepresentation v7_Representation, std::optional< std::string > v8_Tag, std::optional< ::Ifc4x3::IfcEarthworksFillTypeEnum::Value > v9_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); }set_attribute_value(5, (v6_ObjectPlacement));set_attribute_value(6, (v7_Representation)); if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_PredefinedType) {set_attribute_value(8, (enumeration_reference(&::Ifc4x3::IfcEarthworksFillTypeEnum::Class(),(size_t)*v9_PredefinedType))); }; return *this; } // Function implementations for IfcEdge -::Ifc4x3::IfcVertex Ifc4x3::IfcEdge::EdgeStart() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3::IfcVertex>(); } +::Ifc4x3::IfcVertex Ifc4x3::IfcEdge::EdgeStart() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3::IfcVertex>(); } void Ifc4x3::IfcEdge::setEdgeStart(const ::Ifc4x3::IfcVertex& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } -::Ifc4x3::IfcVertex Ifc4x3::IfcEdge::EdgeEnd() const { return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3::IfcVertex>(); } +::Ifc4x3::IfcVertex Ifc4x3::IfcEdge::EdgeEnd() const { return ((express::base)(get_attribute_value(1))).as<::Ifc4x3::IfcVertex>(); } void Ifc4x3::IfcEdge::setEdgeEnd(const ::Ifc4x3::IfcVertex& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } @@ -10345,7 +10345,7 @@ const ifcopenshell::entity& Ifc4x3::IfcEdge::Class() { return *((ifcopenshell::e Ifc4x3::IfcEdge Ifc4x3::IfcEdge::initialize(::Ifc4x3::IfcVertex v1_EdgeStart, ::Ifc4x3::IfcVertex v2_EdgeEnd) { set_attribute_value(0, (v1_EdgeStart));set_attribute_value(1, (v2_EdgeEnd));; return *this; } // Function implementations for IfcEdgeCurve -::Ifc4x3::IfcCurve Ifc4x3::IfcEdgeCurve::EdgeGeometry() const { return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3::IfcCurve>(); } +::Ifc4x3::IfcCurve Ifc4x3::IfcEdgeCurve::EdgeGeometry() const { return ((express::base)(get_attribute_value(2))).as<::Ifc4x3::IfcCurve>(); } void Ifc4x3::IfcEdgeCurve::setEdgeGeometry(const ::Ifc4x3::IfcCurve& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } bool Ifc4x3::IfcEdgeCurve::SameSense() const { bool v = get_attribute_value(3); return v; } void Ifc4x3::IfcEdgeCurve::setSameSense(const bool& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } @@ -10355,12 +10355,12 @@ const ifcopenshell::entity& Ifc4x3::IfcEdgeCurve::Class() { return *((ifcopenshe Ifc4x3::IfcEdgeCurve Ifc4x3::IfcEdgeCurve::initialize(::Ifc4x3::IfcVertex v1_EdgeStart, ::Ifc4x3::IfcVertex v2_EdgeEnd, ::Ifc4x3::IfcCurve v3_EdgeGeometry, bool v4_SameSense) { set_attribute_value(0, (v1_EdgeStart));set_attribute_value(1, (v2_EdgeEnd));set_attribute_value(2, (v3_EdgeGeometry));set_attribute_value(3, (v4_SameSense));; return *this; } // Function implementations for IfcEdgeLoop -std::vector< ::Ifc4x3::IfcOrientedEdge > Ifc4x3::IfcEdgeLoop::EdgeList() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3::IfcOrientedEdge>(es); } -void Ifc4x3::IfcEdgeLoop::setEdgeList(const std::vector< ::Ifc4x3::IfcOrientedEdge >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } +std::vector< ::Ifc4x3::IfcOrientedEdge > Ifc4x3::IfcEdgeLoop::EdgeList() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3::IfcOrientedEdge>(es); } +void Ifc4x3::IfcEdgeLoop::setEdgeList(const std::vector< ::Ifc4x3::IfcOrientedEdge >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } const ifcopenshell::entity& Ifc4x3::IfcEdgeLoop::Class() { return *((ifcopenshell::entity*)IFC4X3_types[367]); } -Ifc4x3::IfcEdgeLoop Ifc4x3::IfcEdgeLoop::initialize(std::vector< ::Ifc4x3::IfcOrientedEdge > v1_EdgeList) { set_attribute_value(0, cast_vector(v1_EdgeList));; return *this; } +Ifc4x3::IfcEdgeLoop Ifc4x3::IfcEdgeLoop::initialize(std::vector< ::Ifc4x3::IfcOrientedEdge > v1_EdgeList) { set_attribute_value(0, cast_vector(v1_EdgeList));; return *this; } // Function implementations for IfcElectricAppliance std::optional< ::Ifc4x3::IfcElectricApplianceTypeEnum::Value > Ifc4x3::IfcElectricAppliance::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3::IfcElectricApplianceTypeEnum::FromString(get_attribute_value(8)); } @@ -10376,7 +10376,7 @@ void Ifc4x3::IfcElectricApplianceType::setPredefinedType(const ::Ifc4x3::IfcElec const ifcopenshell::entity& Ifc4x3::IfcElectricApplianceType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[369]); } -Ifc4x3::IfcElectricApplianceType Ifc4x3::IfcElectricApplianceType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcElectricApplianceTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcElectricApplianceTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3::IfcElectricApplianceType Ifc4x3::IfcElectricApplianceType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcElectricApplianceTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcElectricApplianceTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcElectricDistributionBoard std::optional< ::Ifc4x3::IfcElectricDistributionBoardTypeEnum::Value > Ifc4x3::IfcElectricDistributionBoard::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3::IfcElectricDistributionBoardTypeEnum::FromString(get_attribute_value(8)); } @@ -10392,7 +10392,7 @@ void Ifc4x3::IfcElectricDistributionBoardType::setPredefinedType(const ::Ifc4x3: const ifcopenshell::entity& Ifc4x3::IfcElectricDistributionBoardType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[376]); } -Ifc4x3::IfcElectricDistributionBoardType Ifc4x3::IfcElectricDistributionBoardType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcElectricDistributionBoardTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcElectricDistributionBoardTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3::IfcElectricDistributionBoardType Ifc4x3::IfcElectricDistributionBoardType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcElectricDistributionBoardTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcElectricDistributionBoardTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcElectricFlowStorageDevice std::optional< ::Ifc4x3::IfcElectricFlowStorageDeviceTypeEnum::Value > Ifc4x3::IfcElectricFlowStorageDevice::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3::IfcElectricFlowStorageDeviceTypeEnum::FromString(get_attribute_value(8)); } @@ -10408,7 +10408,7 @@ void Ifc4x3::IfcElectricFlowStorageDeviceType::setPredefinedType(const ::Ifc4x3: const ifcopenshell::entity& Ifc4x3::IfcElectricFlowStorageDeviceType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[379]); } -Ifc4x3::IfcElectricFlowStorageDeviceType Ifc4x3::IfcElectricFlowStorageDeviceType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcElectricFlowStorageDeviceTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcElectricFlowStorageDeviceTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3::IfcElectricFlowStorageDeviceType Ifc4x3::IfcElectricFlowStorageDeviceType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcElectricFlowStorageDeviceTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcElectricFlowStorageDeviceTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcElectricFlowTreatmentDevice std::optional< ::Ifc4x3::IfcElectricFlowTreatmentDeviceTypeEnum::Value > Ifc4x3::IfcElectricFlowTreatmentDevice::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3::IfcElectricFlowTreatmentDeviceTypeEnum::FromString(get_attribute_value(8)); } @@ -10424,7 +10424,7 @@ void Ifc4x3::IfcElectricFlowTreatmentDeviceType::setPredefinedType(const ::Ifc4x const ifcopenshell::entity& Ifc4x3::IfcElectricFlowTreatmentDeviceType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[382]); } -Ifc4x3::IfcElectricFlowTreatmentDeviceType Ifc4x3::IfcElectricFlowTreatmentDeviceType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcElectricFlowTreatmentDeviceTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcElectricFlowTreatmentDeviceTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3::IfcElectricFlowTreatmentDeviceType Ifc4x3::IfcElectricFlowTreatmentDeviceType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcElectricFlowTreatmentDeviceTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcElectricFlowTreatmentDeviceTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcElectricGenerator std::optional< ::Ifc4x3::IfcElectricGeneratorTypeEnum::Value > Ifc4x3::IfcElectricGenerator::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3::IfcElectricGeneratorTypeEnum::FromString(get_attribute_value(8)); } @@ -10440,7 +10440,7 @@ void Ifc4x3::IfcElectricGeneratorType::setPredefinedType(const ::Ifc4x3::IfcElec const ifcopenshell::entity& Ifc4x3::IfcElectricGeneratorType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[385]); } -Ifc4x3::IfcElectricGeneratorType Ifc4x3::IfcElectricGeneratorType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcElectricGeneratorTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcElectricGeneratorTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3::IfcElectricGeneratorType Ifc4x3::IfcElectricGeneratorType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcElectricGeneratorTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcElectricGeneratorTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcElectricMotor std::optional< ::Ifc4x3::IfcElectricMotorTypeEnum::Value > Ifc4x3::IfcElectricMotor::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3::IfcElectricMotorTypeEnum::FromString(get_attribute_value(8)); } @@ -10456,7 +10456,7 @@ void Ifc4x3::IfcElectricMotorType::setPredefinedType(const ::Ifc4x3::IfcElectric const ifcopenshell::entity& Ifc4x3::IfcElectricMotorType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[388]); } -Ifc4x3::IfcElectricMotorType Ifc4x3::IfcElectricMotorType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcElectricMotorTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcElectricMotorTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3::IfcElectricMotorType Ifc4x3::IfcElectricMotorType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcElectricMotorTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcElectricMotorTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcElectricTimeControl std::optional< ::Ifc4x3::IfcElectricTimeControlTypeEnum::Value > Ifc4x3::IfcElectricTimeControl::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3::IfcElectricTimeControlTypeEnum::FromString(get_attribute_value(8)); } @@ -10472,7 +10472,7 @@ void Ifc4x3::IfcElectricTimeControlType::setPredefinedType(const ::Ifc4x3::IfcEl const ifcopenshell::entity& Ifc4x3::IfcElectricTimeControlType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[392]); } -Ifc4x3::IfcElectricTimeControlType Ifc4x3::IfcElectricTimeControlType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcElectricTimeControlTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcElectricTimeControlTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3::IfcElectricTimeControlType Ifc4x3::IfcElectricTimeControlType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcElectricTimeControlTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcElectricTimeControlTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcElement std::optional< std::string > Ifc4x3::IfcElement::Tag() const { if(get_attribute_value(7).isNull()) { return std::nullopt; } std::string v = get_attribute_value(7); return v; } @@ -10510,7 +10510,7 @@ void Ifc4x3::IfcElementAssemblyType::setPredefinedType(const ::Ifc4x3::IfcElemen const ifcopenshell::entity& Ifc4x3::IfcElementAssemblyType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[398]); } -Ifc4x3::IfcElementAssemblyType Ifc4x3::IfcElementAssemblyType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcElementAssemblyTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcElementAssemblyTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3::IfcElementAssemblyType Ifc4x3::IfcElementAssemblyType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcElementAssemblyTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcElementAssemblyTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcElementComponent @@ -10522,17 +10522,17 @@ Ifc4x3::IfcElementComponent Ifc4x3::IfcElementComponent::initialize(std::string const ifcopenshell::entity& Ifc4x3::IfcElementComponentType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[401]); } -Ifc4x3::IfcElementComponentType Ifc4x3::IfcElementComponentType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } +Ifc4x3::IfcElementComponentType Ifc4x3::IfcElementComponentType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } // Function implementations for IfcElementQuantity std::optional< std::string > Ifc4x3::IfcElementQuantity::MethodOfMeasurement() const { if(get_attribute_value(4).isNull()) { return std::nullopt; } std::string v = get_attribute_value(4); return v; } void Ifc4x3::IfcElementQuantity::setMethodOfMeasurement(const std::optional< std::string >& v) { if (v) {set_attribute_value(4, *v);} else {unset_attribute_value(4);} } -std::vector< ::Ifc4x3::IfcPhysicalQuantity > Ifc4x3::IfcElementQuantity::Quantities() const { std::vector es = get_attribute_value(5); return cast_vector<::Ifc4x3::IfcPhysicalQuantity>(es); } -void Ifc4x3::IfcElementQuantity::setQuantities(const std::vector< ::Ifc4x3::IfcPhysicalQuantity >& v) { set_attribute_value(5, cast_vector(v));if constexpr (false)unset_attribute_value(5); } +std::vector< ::Ifc4x3::IfcPhysicalQuantity > Ifc4x3::IfcElementQuantity::Quantities() const { std::vector es = get_attribute_value(5); return cast_vector<::Ifc4x3::IfcPhysicalQuantity>(es); } +void Ifc4x3::IfcElementQuantity::setQuantities(const std::vector< ::Ifc4x3::IfcPhysicalQuantity >& v) { set_attribute_value(5, cast_vector(v));if constexpr (false)unset_attribute_value(5); } const ifcopenshell::entity& Ifc4x3::IfcElementQuantity::Class() { return *((ifcopenshell::entity*)IFC4X3_types[403]); } -Ifc4x3::IfcElementQuantity Ifc4x3::IfcElementQuantity::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_MethodOfMeasurement, std::vector< ::Ifc4x3::IfcPhysicalQuantity > v6_Quantities) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_MethodOfMeasurement) {set_attribute_value(4, (*v5_MethodOfMeasurement)); }set_attribute_value(5, cast_vector(v6_Quantities));; return *this; } +Ifc4x3::IfcElementQuantity Ifc4x3::IfcElementQuantity::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_MethodOfMeasurement, std::vector< ::Ifc4x3::IfcPhysicalQuantity > v6_Quantities) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_MethodOfMeasurement) {set_attribute_value(4, (*v5_MethodOfMeasurement)); }set_attribute_value(5, cast_vector(v6_Quantities));; return *this; } // Function implementations for IfcElementType std::optional< std::string > Ifc4x3::IfcElementType::ElementType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } std::string v = get_attribute_value(8); return v; } @@ -10540,10 +10540,10 @@ void Ifc4x3::IfcElementType::setElementType(const std::optional< std::string >& const ifcopenshell::entity& Ifc4x3::IfcElementType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[404]); } -Ifc4x3::IfcElementType Ifc4x3::IfcElementType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } +Ifc4x3::IfcElementType Ifc4x3::IfcElementType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } // Function implementations for IfcElementarySurface -::Ifc4x3::IfcAxis2Placement3D Ifc4x3::IfcElementarySurface::Position() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3::IfcAxis2Placement3D>(); } +::Ifc4x3::IfcAxis2Placement3D Ifc4x3::IfcElementarySurface::Position() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3::IfcAxis2Placement3D>(); } void Ifc4x3::IfcElementarySurface::setPosition(const ::Ifc4x3::IfcAxis2Placement3D& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } @@ -10580,7 +10580,7 @@ Ifc4x3::IfcEnergyConversionDevice Ifc4x3::IfcEnergyConversionDevice::initialize( const ifcopenshell::entity& Ifc4x3::IfcEnergyConversionDeviceType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[408]); } -Ifc4x3::IfcEnergyConversionDeviceType Ifc4x3::IfcEnergyConversionDeviceType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } +Ifc4x3::IfcEnergyConversionDeviceType Ifc4x3::IfcEnergyConversionDeviceType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } // Function implementations for IfcEngine std::optional< ::Ifc4x3::IfcEngineTypeEnum::Value > Ifc4x3::IfcEngine::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3::IfcEngineTypeEnum::FromString(get_attribute_value(8)); } @@ -10596,7 +10596,7 @@ void Ifc4x3::IfcEngineType::setPredefinedType(const ::Ifc4x3::IfcEngineTypeEnum: const ifcopenshell::entity& Ifc4x3::IfcEngineType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[411]); } -Ifc4x3::IfcEngineType Ifc4x3::IfcEngineType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcEngineTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcEngineTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3::IfcEngineType Ifc4x3::IfcEngineType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcEngineTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcEngineTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcEvaporativeCooler std::optional< ::Ifc4x3::IfcEvaporativeCoolerTypeEnum::Value > Ifc4x3::IfcEvaporativeCooler::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3::IfcEvaporativeCoolerTypeEnum::FromString(get_attribute_value(8)); } @@ -10612,7 +10612,7 @@ void Ifc4x3::IfcEvaporativeCoolerType::setPredefinedType(const ::Ifc4x3::IfcEvap const ifcopenshell::entity& Ifc4x3::IfcEvaporativeCoolerType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[414]); } -Ifc4x3::IfcEvaporativeCoolerType Ifc4x3::IfcEvaporativeCoolerType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcEvaporativeCoolerTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcEvaporativeCoolerTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3::IfcEvaporativeCoolerType Ifc4x3::IfcEvaporativeCoolerType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcEvaporativeCoolerTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcEvaporativeCoolerTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcEvaporator std::optional< ::Ifc4x3::IfcEvaporatorTypeEnum::Value > Ifc4x3::IfcEvaporator::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3::IfcEvaporatorTypeEnum::FromString(get_attribute_value(8)); } @@ -10628,7 +10628,7 @@ void Ifc4x3::IfcEvaporatorType::setPredefinedType(const ::Ifc4x3::IfcEvaporatorT const ifcopenshell::entity& Ifc4x3::IfcEvaporatorType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[417]); } -Ifc4x3::IfcEvaporatorType Ifc4x3::IfcEvaporatorType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcEvaporatorTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcEvaporatorTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3::IfcEvaporatorType Ifc4x3::IfcEvaporatorType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcEvaporatorTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcEvaporatorTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcEvent std::optional< ::Ifc4x3::IfcEventTypeEnum::Value > Ifc4x3::IfcEvent::PredefinedType() const { if(get_attribute_value(7).isNull()) { return std::nullopt; } return ::Ifc4x3::IfcEventTypeEnum::FromString(get_attribute_value(7)); } @@ -10637,7 +10637,7 @@ std::optional< ::Ifc4x3::IfcEventTriggerTypeEnum::Value > Ifc4x3::IfcEvent::Even void Ifc4x3::IfcEvent::setEventTriggerType(const std::optional< ::Ifc4x3::IfcEventTriggerTypeEnum::Value >& v) { if (v) {set_attribute_value(8, enumeration_reference(&::Ifc4x3::IfcEventTriggerTypeEnum::Class(), (size_t) *v));} else {unset_attribute_value(8);} } std::optional< std::string > Ifc4x3::IfcEvent::UserDefinedEventTriggerType() const { if(get_attribute_value(9).isNull()) { return std::nullopt; } std::string v = get_attribute_value(9); return v; } void Ifc4x3::IfcEvent::setUserDefinedEventTriggerType(const std::optional< std::string >& v) { if (v) {set_attribute_value(9, *v);} else {unset_attribute_value(9);} } -::Ifc4x3::IfcEventTime Ifc4x3::IfcEvent::EventOccurenceTime() const { if(get_attribute_value(10).isNull()) { return ::Ifc4x3::IfcEventTime{}; } return ((express::Base)(get_attribute_value(10))).as<::Ifc4x3::IfcEventTime>(); } +::Ifc4x3::IfcEventTime Ifc4x3::IfcEvent::EventOccurenceTime() const { if(get_attribute_value(10).isNull()) { return ::Ifc4x3::IfcEventTime{}; } return ((express::base)(get_attribute_value(10))).as<::Ifc4x3::IfcEventTime>(); } void Ifc4x3::IfcEvent::setEventOccurenceTime(const ::Ifc4x3::IfcEventTime& v) { set_attribute_value(10, v);if constexpr (false)unset_attribute_value(10); } @@ -10668,19 +10668,19 @@ void Ifc4x3::IfcEventType::setUserDefinedEventTriggerType(const std::optional< s const ifcopenshell::entity& Ifc4x3::IfcEventType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[422]); } -Ifc4x3::IfcEventType Ifc4x3::IfcEventType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::string > v7_Identification, std::optional< std::string > v8_LongDescription, std::optional< std::string > v9_ProcessType, ::Ifc4x3::IfcEventTypeEnum::Value v10_PredefinedType, ::Ifc4x3::IfcEventTriggerTypeEnum::Value v11_EventTriggerType, std::optional< std::string > v12_UserDefinedEventTriggerType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_Identification) {set_attribute_value(6, (*v7_Identification)); } if (v8_LongDescription) {set_attribute_value(7, (*v8_LongDescription)); } if (v9_ProcessType) {set_attribute_value(8, (*v9_ProcessType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcEventTypeEnum::Class(),(size_t)v10_PredefinedType)));set_attribute_value(10, (enumeration_reference(&::Ifc4x3::IfcEventTriggerTypeEnum::Class(),(size_t)v11_EventTriggerType))); if (v12_UserDefinedEventTriggerType) {set_attribute_value(11, (*v12_UserDefinedEventTriggerType)); }; return *this; } +Ifc4x3::IfcEventType Ifc4x3::IfcEventType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::string > v7_Identification, std::optional< std::string > v8_LongDescription, std::optional< std::string > v9_ProcessType, ::Ifc4x3::IfcEventTypeEnum::Value v10_PredefinedType, ::Ifc4x3::IfcEventTriggerTypeEnum::Value v11_EventTriggerType, std::optional< std::string > v12_UserDefinedEventTriggerType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_Identification) {set_attribute_value(6, (*v7_Identification)); } if (v8_LongDescription) {set_attribute_value(7, (*v8_LongDescription)); } if (v9_ProcessType) {set_attribute_value(8, (*v9_ProcessType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcEventTypeEnum::Class(),(size_t)v10_PredefinedType)));set_attribute_value(10, (enumeration_reference(&::Ifc4x3::IfcEventTriggerTypeEnum::Class(),(size_t)v11_EventTriggerType))); if (v12_UserDefinedEventTriggerType) {set_attribute_value(11, (*v12_UserDefinedEventTriggerType)); }; return *this; } // Function implementations for IfcExtendedProperties std::optional< std::string > Ifc4x3::IfcExtendedProperties::Name() const { if(get_attribute_value(0).isNull()) { return std::nullopt; } std::string v = get_attribute_value(0); return v; } void Ifc4x3::IfcExtendedProperties::setName(const std::optional< std::string >& v) { if (v) {set_attribute_value(0, *v);} else {unset_attribute_value(0);} } std::optional< std::string > Ifc4x3::IfcExtendedProperties::Description() const { if(get_attribute_value(1).isNull()) { return std::nullopt; } std::string v = get_attribute_value(1); return v; } void Ifc4x3::IfcExtendedProperties::setDescription(const std::optional< std::string >& v) { if (v) {set_attribute_value(1, *v);} else {unset_attribute_value(1);} } -std::vector< ::Ifc4x3::IfcProperty > Ifc4x3::IfcExtendedProperties::Properties() const { std::vector es = get_attribute_value(2); return cast_vector<::Ifc4x3::IfcProperty>(es); } -void Ifc4x3::IfcExtendedProperties::setProperties(const std::vector< ::Ifc4x3::IfcProperty >& v) { set_attribute_value(2, cast_vector(v));if constexpr (false)unset_attribute_value(2); } +std::vector< ::Ifc4x3::IfcProperty > Ifc4x3::IfcExtendedProperties::Properties() const { std::vector es = get_attribute_value(2); return cast_vector<::Ifc4x3::IfcProperty>(es); } +void Ifc4x3::IfcExtendedProperties::setProperties(const std::vector< ::Ifc4x3::IfcProperty >& v) { set_attribute_value(2, cast_vector(v));if constexpr (false)unset_attribute_value(2); } const ifcopenshell::entity& Ifc4x3::IfcExtendedProperties::Class() { return *((ifcopenshell::entity*)IFC4X3_types[424]); } -Ifc4x3::IfcExtendedProperties Ifc4x3::IfcExtendedProperties::initialize(std::optional< std::string > v1_Name, std::optional< std::string > v2_Description, std::vector< ::Ifc4x3::IfcProperty > v3_Properties) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); } if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, cast_vector(v3_Properties));; return *this; } +Ifc4x3::IfcExtendedProperties Ifc4x3::IfcExtendedProperties::initialize(std::optional< std::string > v1_Name, std::optional< std::string > v2_Description, std::vector< ::Ifc4x3::IfcProperty > v3_Properties) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); } if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, cast_vector(v3_Properties));; return *this; } // Function implementations for IfcExternalInformation @@ -10702,14 +10702,14 @@ const ifcopenshell::entity& Ifc4x3::IfcExternalReference::Class() { return *((if Ifc4x3::IfcExternalReference Ifc4x3::IfcExternalReference::initialize(std::optional< std::string > v1_Location, std::optional< std::string > v2_Identification, std::optional< std::string > v3_Name) { if (v1_Location) {set_attribute_value(0, (*v1_Location)); } if (v2_Identification) {set_attribute_value(1, (*v2_Identification)); } if (v3_Name) {set_attribute_value(2, (*v3_Name)); }; return *this; } // Function implementations for IfcExternalReferenceRelationship -::Ifc4x3::IfcExternalReference Ifc4x3::IfcExternalReferenceRelationship::RelatingReference() const { return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3::IfcExternalReference>(); } +::Ifc4x3::IfcExternalReference Ifc4x3::IfcExternalReferenceRelationship::RelatingReference() const { return ((express::base)(get_attribute_value(2))).as<::Ifc4x3::IfcExternalReference>(); } void Ifc4x3::IfcExternalReferenceRelationship::setRelatingReference(const ::Ifc4x3::IfcExternalReference& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } -std::vector< ::Ifc4x3::IfcResourceObjectSelect > Ifc4x3::IfcExternalReferenceRelationship::RelatedResourceObjects() const { std::vector es = get_attribute_value(3); return cast_vector<::Ifc4x3::IfcResourceObjectSelect>(es); } -void Ifc4x3::IfcExternalReferenceRelationship::setRelatedResourceObjects(const std::vector< ::Ifc4x3::IfcResourceObjectSelect >& v) { set_attribute_value(3, cast_vector(v));if constexpr (false)unset_attribute_value(3); } +std::vector< ::Ifc4x3::IfcResourceObjectSelect > Ifc4x3::IfcExternalReferenceRelationship::RelatedResourceObjects() const { std::vector es = get_attribute_value(3); return cast_vector<::Ifc4x3::IfcResourceObjectSelect>(es); } +void Ifc4x3::IfcExternalReferenceRelationship::setRelatedResourceObjects(const std::vector< ::Ifc4x3::IfcResourceObjectSelect >& v) { set_attribute_value(3, cast_vector(v));if constexpr (false)unset_attribute_value(3); } const ifcopenshell::entity& Ifc4x3::IfcExternalReferenceRelationship::Class() { return *((ifcopenshell::entity*)IFC4X3_types[430]); } -Ifc4x3::IfcExternalReferenceRelationship Ifc4x3::IfcExternalReferenceRelationship::initialize(std::optional< std::string > v1_Name, std::optional< std::string > v2_Description, ::Ifc4x3::IfcExternalReference v3_RelatingReference, std::vector< ::Ifc4x3::IfcResourceObjectSelect > v4_RelatedResourceObjects) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); } if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, (v3_RelatingReference));set_attribute_value(3, cast_vector(v4_RelatedResourceObjects));; return *this; } +Ifc4x3::IfcExternalReferenceRelationship Ifc4x3::IfcExternalReferenceRelationship::initialize(std::optional< std::string > v1_Name, std::optional< std::string > v2_Description, ::Ifc4x3::IfcExternalReference v3_RelatingReference, std::vector< ::Ifc4x3::IfcResourceObjectSelect > v4_RelatedResourceObjects) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); } if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, (v3_RelatingReference));set_attribute_value(3, cast_vector(v4_RelatedResourceObjects));; return *this; } // Function implementations for IfcExternalSpatialElement std::optional< ::Ifc4x3::IfcExternalSpatialElementTypeEnum::Value > Ifc4x3::IfcExternalSpatialElement::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3::IfcExternalSpatialElementTypeEnum::FromString(get_attribute_value(8)); } @@ -10745,7 +10745,7 @@ const ifcopenshell::entity& Ifc4x3::IfcExternallyDefinedTextFont::Class() { retu Ifc4x3::IfcExternallyDefinedTextFont Ifc4x3::IfcExternallyDefinedTextFont::initialize(std::optional< std::string > v1_Location, std::optional< std::string > v2_Identification, std::optional< std::string > v3_Name) { if (v1_Location) {set_attribute_value(0, (*v1_Location)); } if (v2_Identification) {set_attribute_value(1, (*v2_Identification)); } if (v3_Name) {set_attribute_value(2, (*v3_Name)); }; return *this; } // Function implementations for IfcExtrudedAreaSolid -::Ifc4x3::IfcDirection Ifc4x3::IfcExtrudedAreaSolid::ExtrudedDirection() const { return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3::IfcDirection>(); } +::Ifc4x3::IfcDirection Ifc4x3::IfcExtrudedAreaSolid::ExtrudedDirection() const { return ((express::base)(get_attribute_value(2))).as<::Ifc4x3::IfcDirection>(); } void Ifc4x3::IfcExtrudedAreaSolid::setExtrudedDirection(const ::Ifc4x3::IfcDirection& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } double Ifc4x3::IfcExtrudedAreaSolid::Depth() const { double v = get_attribute_value(3); return v; } void Ifc4x3::IfcExtrudedAreaSolid::setDepth(const double& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } @@ -10755,7 +10755,7 @@ const ifcopenshell::entity& Ifc4x3::IfcExtrudedAreaSolid::Class() { return *((if Ifc4x3::IfcExtrudedAreaSolid Ifc4x3::IfcExtrudedAreaSolid::initialize(::Ifc4x3::IfcProfileDef v1_SweptArea, ::Ifc4x3::IfcAxis2Placement3D v2_Position, ::Ifc4x3::IfcDirection v3_ExtrudedDirection, double v4_Depth) { set_attribute_value(0, (v1_SweptArea));set_attribute_value(1, (v2_Position));set_attribute_value(2, (v3_ExtrudedDirection));set_attribute_value(3, (v4_Depth));; return *this; } // Function implementations for IfcExtrudedAreaSolidTapered -::Ifc4x3::IfcProfileDef Ifc4x3::IfcExtrudedAreaSolidTapered::EndSweptArea() const { return ((express::Base)(get_attribute_value(4))).as<::Ifc4x3::IfcProfileDef>(); } +::Ifc4x3::IfcProfileDef Ifc4x3::IfcExtrudedAreaSolidTapered::EndSweptArea() const { return ((express::base)(get_attribute_value(4))).as<::Ifc4x3::IfcProfileDef>(); } void Ifc4x3::IfcExtrudedAreaSolidTapered::setEndSweptArea(const ::Ifc4x3::IfcProfileDef& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } @@ -10763,24 +10763,24 @@ const ifcopenshell::entity& Ifc4x3::IfcExtrudedAreaSolidTapered::Class() { retur Ifc4x3::IfcExtrudedAreaSolidTapered Ifc4x3::IfcExtrudedAreaSolidTapered::initialize(::Ifc4x3::IfcProfileDef v1_SweptArea, ::Ifc4x3::IfcAxis2Placement3D v2_Position, ::Ifc4x3::IfcDirection v3_ExtrudedDirection, double v4_Depth, ::Ifc4x3::IfcProfileDef v5_EndSweptArea) { set_attribute_value(0, (v1_SweptArea));set_attribute_value(1, (v2_Position));set_attribute_value(2, (v3_ExtrudedDirection));set_attribute_value(3, (v4_Depth));set_attribute_value(4, (v5_EndSweptArea));; return *this; } // Function implementations for IfcFace -std::vector< ::Ifc4x3::IfcFaceBound > Ifc4x3::IfcFace::Bounds() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3::IfcFaceBound>(es); } -void Ifc4x3::IfcFace::setBounds(const std::vector< ::Ifc4x3::IfcFaceBound >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } +std::vector< ::Ifc4x3::IfcFaceBound > Ifc4x3::IfcFace::Bounds() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3::IfcFaceBound>(es); } +void Ifc4x3::IfcFace::setBounds(const std::vector< ::Ifc4x3::IfcFaceBound >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } std::vector<::Ifc4x3::IfcTextureMap> Ifc4x3::IfcFace::HasTextureMaps() const { return cast_vector(file()->get_inverse(data()->id(), IFC4X3_types[1195], 2)); } const ifcopenshell::entity& Ifc4x3::IfcFace::Class() { return *((ifcopenshell::entity*)IFC4X3_types[436]); } -Ifc4x3::IfcFace Ifc4x3::IfcFace::initialize(std::vector< ::Ifc4x3::IfcFaceBound > v1_Bounds) { set_attribute_value(0, cast_vector(v1_Bounds));; return *this; } +Ifc4x3::IfcFace Ifc4x3::IfcFace::initialize(std::vector< ::Ifc4x3::IfcFaceBound > v1_Bounds) { set_attribute_value(0, cast_vector(v1_Bounds));; return *this; } // Function implementations for IfcFaceBasedSurfaceModel -std::vector< ::Ifc4x3::IfcConnectedFaceSet > Ifc4x3::IfcFaceBasedSurfaceModel::FbsmFaces() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3::IfcConnectedFaceSet>(es); } -void Ifc4x3::IfcFaceBasedSurfaceModel::setFbsmFaces(const std::vector< ::Ifc4x3::IfcConnectedFaceSet >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } +std::vector< ::Ifc4x3::IfcConnectedFaceSet > Ifc4x3::IfcFaceBasedSurfaceModel::FbsmFaces() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3::IfcConnectedFaceSet>(es); } +void Ifc4x3::IfcFaceBasedSurfaceModel::setFbsmFaces(const std::vector< ::Ifc4x3::IfcConnectedFaceSet >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } const ifcopenshell::entity& Ifc4x3::IfcFaceBasedSurfaceModel::Class() { return *((ifcopenshell::entity*)IFC4X3_types[437]); } -Ifc4x3::IfcFaceBasedSurfaceModel Ifc4x3::IfcFaceBasedSurfaceModel::initialize(std::vector< ::Ifc4x3::IfcConnectedFaceSet > v1_FbsmFaces) { set_attribute_value(0, cast_vector(v1_FbsmFaces));; return *this; } +Ifc4x3::IfcFaceBasedSurfaceModel Ifc4x3::IfcFaceBasedSurfaceModel::initialize(std::vector< ::Ifc4x3::IfcConnectedFaceSet > v1_FbsmFaces) { set_attribute_value(0, cast_vector(v1_FbsmFaces));; return *this; } // Function implementations for IfcFaceBound -::Ifc4x3::IfcLoop Ifc4x3::IfcFaceBound::Bound() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3::IfcLoop>(); } +::Ifc4x3::IfcLoop Ifc4x3::IfcFaceBound::Bound() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3::IfcLoop>(); } void Ifc4x3::IfcFaceBound::setBound(const ::Ifc4x3::IfcLoop& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } bool Ifc4x3::IfcFaceBound::Orientation() const { bool v = get_attribute_value(1); return v; } void Ifc4x3::IfcFaceBound::setOrientation(const bool& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } @@ -10796,14 +10796,14 @@ const ifcopenshell::entity& Ifc4x3::IfcFaceOuterBound::Class() { return *((ifcop Ifc4x3::IfcFaceOuterBound Ifc4x3::IfcFaceOuterBound::initialize(::Ifc4x3::IfcLoop v1_Bound, bool v2_Orientation) { set_attribute_value(0, (v1_Bound));set_attribute_value(1, (v2_Orientation));; return *this; } // Function implementations for IfcFaceSurface -::Ifc4x3::IfcSurface Ifc4x3::IfcFaceSurface::FaceSurface() const { return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3::IfcSurface>(); } +::Ifc4x3::IfcSurface Ifc4x3::IfcFaceSurface::FaceSurface() const { return ((express::base)(get_attribute_value(1))).as<::Ifc4x3::IfcSurface>(); } void Ifc4x3::IfcFaceSurface::setFaceSurface(const ::Ifc4x3::IfcSurface& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } bool Ifc4x3::IfcFaceSurface::SameSense() const { bool v = get_attribute_value(2); return v; } void Ifc4x3::IfcFaceSurface::setSameSense(const bool& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } const ifcopenshell::entity& Ifc4x3::IfcFaceSurface::Class() { return *((ifcopenshell::entity*)IFC4X3_types[440]); } -Ifc4x3::IfcFaceSurface Ifc4x3::IfcFaceSurface::initialize(std::vector< ::Ifc4x3::IfcFaceBound > v1_Bounds, ::Ifc4x3::IfcSurface v2_FaceSurface, bool v3_SameSense) { set_attribute_value(0, cast_vector(v1_Bounds));set_attribute_value(1, (v2_FaceSurface));set_attribute_value(2, (v3_SameSense));; return *this; } +Ifc4x3::IfcFaceSurface Ifc4x3::IfcFaceSurface::initialize(std::vector< ::Ifc4x3::IfcFaceBound > v1_Bounds, ::Ifc4x3::IfcSurface v2_FaceSurface, bool v3_SameSense) { set_attribute_value(0, cast_vector(v1_Bounds));set_attribute_value(1, (v2_FaceSurface));set_attribute_value(2, (v3_SameSense));; return *this; } // Function implementations for IfcFacetedBrep @@ -10812,12 +10812,12 @@ const ifcopenshell::entity& Ifc4x3::IfcFacetedBrep::Class() { return *((ifcopens Ifc4x3::IfcFacetedBrep Ifc4x3::IfcFacetedBrep::initialize(::Ifc4x3::IfcClosedShell v1_Outer) { set_attribute_value(0, (v1_Outer));; return *this; } // Function implementations for IfcFacetedBrepWithVoids -std::vector< ::Ifc4x3::IfcClosedShell > Ifc4x3::IfcFacetedBrepWithVoids::Voids() const { std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3::IfcClosedShell>(es); } -void Ifc4x3::IfcFacetedBrepWithVoids::setVoids(const std::vector< ::Ifc4x3::IfcClosedShell >& v) { set_attribute_value(1, cast_vector(v));if constexpr (false)unset_attribute_value(1); } +std::vector< ::Ifc4x3::IfcClosedShell > Ifc4x3::IfcFacetedBrepWithVoids::Voids() const { std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3::IfcClosedShell>(es); } +void Ifc4x3::IfcFacetedBrepWithVoids::setVoids(const std::vector< ::Ifc4x3::IfcClosedShell >& v) { set_attribute_value(1, cast_vector(v));if constexpr (false)unset_attribute_value(1); } const ifcopenshell::entity& Ifc4x3::IfcFacetedBrepWithVoids::Class() { return *((ifcopenshell::entity*)IFC4X3_types[442]); } -Ifc4x3::IfcFacetedBrepWithVoids Ifc4x3::IfcFacetedBrepWithVoids::initialize(::Ifc4x3::IfcClosedShell v1_Outer, std::vector< ::Ifc4x3::IfcClosedShell > v2_Voids) { set_attribute_value(0, (v1_Outer));set_attribute_value(1, cast_vector(v2_Voids));; return *this; } +Ifc4x3::IfcFacetedBrepWithVoids Ifc4x3::IfcFacetedBrepWithVoids::initialize(::Ifc4x3::IfcClosedShell v1_Outer, std::vector< ::Ifc4x3::IfcClosedShell > v2_Voids) { set_attribute_value(0, (v1_Outer));set_attribute_value(1, cast_vector(v2_Voids));; return *this; } // Function implementations for IfcFacility @@ -10873,7 +10873,7 @@ void Ifc4x3::IfcFanType::setPredefinedType(const ::Ifc4x3::IfcFanTypeEnum::Value const ifcopenshell::entity& Ifc4x3::IfcFanType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[450]); } -Ifc4x3::IfcFanType Ifc4x3::IfcFanType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcFanTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcFanTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3::IfcFanType Ifc4x3::IfcFanType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcFanTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcFanTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcFastener std::optional< ::Ifc4x3::IfcFastenerTypeEnum::Value > Ifc4x3::IfcFastener::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3::IfcFastenerTypeEnum::FromString(get_attribute_value(8)); } @@ -10889,7 +10889,7 @@ void Ifc4x3::IfcFastenerType::setPredefinedType(const ::Ifc4x3::IfcFastenerTypeE const ifcopenshell::entity& Ifc4x3::IfcFastenerType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[453]); } -Ifc4x3::IfcFastenerType Ifc4x3::IfcFastenerType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcFastenerTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcFastenerTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3::IfcFastenerType Ifc4x3::IfcFastenerType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcFastenerTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcFastenerTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcFeatureElement @@ -10912,23 +10912,23 @@ const ifcopenshell::entity& Ifc4x3::IfcFeatureElementSubtraction::Class() { retu Ifc4x3::IfcFeatureElementSubtraction Ifc4x3::IfcFeatureElementSubtraction::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, ::Ifc4x3::IfcObjectPlacement v6_ObjectPlacement, ::Ifc4x3::IfcProductRepresentation v7_Representation, std::optional< std::string > v8_Tag) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); }set_attribute_value(5, (v6_ObjectPlacement));set_attribute_value(6, (v7_Representation)); if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); }; return *this; } // Function implementations for IfcFillAreaStyle -std::vector< ::Ifc4x3::IfcFillStyleSelect > Ifc4x3::IfcFillAreaStyle::FillStyles() const { std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3::IfcFillStyleSelect>(es); } -void Ifc4x3::IfcFillAreaStyle::setFillStyles(const std::vector< ::Ifc4x3::IfcFillStyleSelect >& v) { set_attribute_value(1, cast_vector(v));if constexpr (false)unset_attribute_value(1); } +std::vector< ::Ifc4x3::IfcFillStyleSelect > Ifc4x3::IfcFillAreaStyle::FillStyles() const { std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3::IfcFillStyleSelect>(es); } +void Ifc4x3::IfcFillAreaStyle::setFillStyles(const std::vector< ::Ifc4x3::IfcFillStyleSelect >& v) { set_attribute_value(1, cast_vector(v));if constexpr (false)unset_attribute_value(1); } std::optional< bool > Ifc4x3::IfcFillAreaStyle::ModelOrDraughting() const { if(get_attribute_value(2).isNull()) { return std::nullopt; } bool v = get_attribute_value(2); return v; } void Ifc4x3::IfcFillAreaStyle::setModelOrDraughting(const std::optional< bool >& v) { if (v) {set_attribute_value(2, *v);} else {unset_attribute_value(2);} } const ifcopenshell::entity& Ifc4x3::IfcFillAreaStyle::Class() { return *((ifcopenshell::entity*)IFC4X3_types[458]); } -Ifc4x3::IfcFillAreaStyle Ifc4x3::IfcFillAreaStyle::initialize(std::optional< std::string > v1_Name, std::vector< ::Ifc4x3::IfcFillStyleSelect > v2_FillStyles, std::optional< bool > v3_ModelOrDraughting) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); }set_attribute_value(1, cast_vector(v2_FillStyles)); if (v3_ModelOrDraughting) {set_attribute_value(2, (*v3_ModelOrDraughting)); }; return *this; } +Ifc4x3::IfcFillAreaStyle Ifc4x3::IfcFillAreaStyle::initialize(std::optional< std::string > v1_Name, std::vector< ::Ifc4x3::IfcFillStyleSelect > v2_FillStyles, std::optional< bool > v3_ModelOrDraughting) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); }set_attribute_value(1, cast_vector(v2_FillStyles)); if (v3_ModelOrDraughting) {set_attribute_value(2, (*v3_ModelOrDraughting)); }; return *this; } // Function implementations for IfcFillAreaStyleHatching -::Ifc4x3::IfcCurveStyle Ifc4x3::IfcFillAreaStyleHatching::HatchLineAppearance() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3::IfcCurveStyle>(); } +::Ifc4x3::IfcCurveStyle Ifc4x3::IfcFillAreaStyleHatching::HatchLineAppearance() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3::IfcCurveStyle>(); } void Ifc4x3::IfcFillAreaStyleHatching::setHatchLineAppearance(const ::Ifc4x3::IfcCurveStyle& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } -::Ifc4x3::IfcHatchLineDistanceSelect Ifc4x3::IfcFillAreaStyleHatching::StartOfNextHatchLine() const { return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3::IfcHatchLineDistanceSelect>(); } +::Ifc4x3::IfcHatchLineDistanceSelect Ifc4x3::IfcFillAreaStyleHatching::StartOfNextHatchLine() const { return ((express::base)(get_attribute_value(1))).as<::Ifc4x3::IfcHatchLineDistanceSelect>(); } void Ifc4x3::IfcFillAreaStyleHatching::setStartOfNextHatchLine(const ::Ifc4x3::IfcHatchLineDistanceSelect& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } -::Ifc4x3::IfcCartesianPoint Ifc4x3::IfcFillAreaStyleHatching::PointOfReferenceHatchLine() const { if(get_attribute_value(2).isNull()) { return ::Ifc4x3::IfcCartesianPoint{}; } return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3::IfcCartesianPoint>(); } +::Ifc4x3::IfcCartesianPoint Ifc4x3::IfcFillAreaStyleHatching::PointOfReferenceHatchLine() const { if(get_attribute_value(2).isNull()) { return ::Ifc4x3::IfcCartesianPoint{}; } return ((express::base)(get_attribute_value(2))).as<::Ifc4x3::IfcCartesianPoint>(); } void Ifc4x3::IfcFillAreaStyleHatching::setPointOfReferenceHatchLine(const ::Ifc4x3::IfcCartesianPoint& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } -::Ifc4x3::IfcCartesianPoint Ifc4x3::IfcFillAreaStyleHatching::PatternStart() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3::IfcCartesianPoint{}; } return ((express::Base)(get_attribute_value(3))).as<::Ifc4x3::IfcCartesianPoint>(); } +::Ifc4x3::IfcCartesianPoint Ifc4x3::IfcFillAreaStyleHatching::PatternStart() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3::IfcCartesianPoint{}; } return ((express::base)(get_attribute_value(3))).as<::Ifc4x3::IfcCartesianPoint>(); } void Ifc4x3::IfcFillAreaStyleHatching::setPatternStart(const ::Ifc4x3::IfcCartesianPoint& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } double Ifc4x3::IfcFillAreaStyleHatching::HatchLineAngle() const { double v = get_attribute_value(4); return v; } void Ifc4x3::IfcFillAreaStyleHatching::setHatchLineAngle(const double& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } @@ -10938,16 +10938,16 @@ const ifcopenshell::entity& Ifc4x3::IfcFillAreaStyleHatching::Class() { return * Ifc4x3::IfcFillAreaStyleHatching Ifc4x3::IfcFillAreaStyleHatching::initialize(::Ifc4x3::IfcCurveStyle v1_HatchLineAppearance, ::Ifc4x3::IfcHatchLineDistanceSelect v2_StartOfNextHatchLine, ::Ifc4x3::IfcCartesianPoint v3_PointOfReferenceHatchLine, ::Ifc4x3::IfcCartesianPoint v4_PatternStart, double v5_HatchLineAngle) { set_attribute_value(0, (v1_HatchLineAppearance));set_attribute_value(1, (v2_StartOfNextHatchLine));set_attribute_value(2, (v3_PointOfReferenceHatchLine));set_attribute_value(3, (v4_PatternStart));set_attribute_value(4, (v5_HatchLineAngle));; return *this; } // Function implementations for IfcFillAreaStyleTiles -std::vector< ::Ifc4x3::IfcVector > Ifc4x3::IfcFillAreaStyleTiles::TilingPattern() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3::IfcVector>(es); } -void Ifc4x3::IfcFillAreaStyleTiles::setTilingPattern(const std::vector< ::Ifc4x3::IfcVector >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } -std::vector< ::Ifc4x3::IfcStyledItem > Ifc4x3::IfcFillAreaStyleTiles::Tiles() const { std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3::IfcStyledItem>(es); } -void Ifc4x3::IfcFillAreaStyleTiles::setTiles(const std::vector< ::Ifc4x3::IfcStyledItem >& v) { set_attribute_value(1, cast_vector(v));if constexpr (false)unset_attribute_value(1); } +std::vector< ::Ifc4x3::IfcVector > Ifc4x3::IfcFillAreaStyleTiles::TilingPattern() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3::IfcVector>(es); } +void Ifc4x3::IfcFillAreaStyleTiles::setTilingPattern(const std::vector< ::Ifc4x3::IfcVector >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } +std::vector< ::Ifc4x3::IfcStyledItem > Ifc4x3::IfcFillAreaStyleTiles::Tiles() const { std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3::IfcStyledItem>(es); } +void Ifc4x3::IfcFillAreaStyleTiles::setTiles(const std::vector< ::Ifc4x3::IfcStyledItem >& v) { set_attribute_value(1, cast_vector(v));if constexpr (false)unset_attribute_value(1); } double Ifc4x3::IfcFillAreaStyleTiles::TilingScale() const { double v = get_attribute_value(2); return v; } void Ifc4x3::IfcFillAreaStyleTiles::setTilingScale(const double& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } const ifcopenshell::entity& Ifc4x3::IfcFillAreaStyleTiles::Class() { return *((ifcopenshell::entity*)IFC4X3_types[460]); } -Ifc4x3::IfcFillAreaStyleTiles Ifc4x3::IfcFillAreaStyleTiles::initialize(std::vector< ::Ifc4x3::IfcVector > v1_TilingPattern, std::vector< ::Ifc4x3::IfcStyledItem > v2_Tiles, double v3_TilingScale) { set_attribute_value(0, cast_vector(v1_TilingPattern));set_attribute_value(1, cast_vector(v2_Tiles));set_attribute_value(2, (v3_TilingScale));; return *this; } +Ifc4x3::IfcFillAreaStyleTiles Ifc4x3::IfcFillAreaStyleTiles::initialize(std::vector< ::Ifc4x3::IfcVector > v1_TilingPattern, std::vector< ::Ifc4x3::IfcStyledItem > v2_Tiles, double v3_TilingScale) { set_attribute_value(0, cast_vector(v1_TilingPattern));set_attribute_value(1, cast_vector(v2_Tiles));set_attribute_value(2, (v3_TilingScale));; return *this; } // Function implementations for IfcFilter std::optional< ::Ifc4x3::IfcFilterTypeEnum::Value > Ifc4x3::IfcFilter::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3::IfcFilterTypeEnum::FromString(get_attribute_value(8)); } @@ -10963,7 +10963,7 @@ void Ifc4x3::IfcFilterType::setPredefinedType(const ::Ifc4x3::IfcFilterTypeEnum: const ifcopenshell::entity& Ifc4x3::IfcFilterType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[463]); } -Ifc4x3::IfcFilterType Ifc4x3::IfcFilterType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcFilterTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcFilterTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3::IfcFilterType Ifc4x3::IfcFilterType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcFilterTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcFilterTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcFireSuppressionTerminal std::optional< ::Ifc4x3::IfcFireSuppressionTerminalTypeEnum::Value > Ifc4x3::IfcFireSuppressionTerminal::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3::IfcFireSuppressionTerminalTypeEnum::FromString(get_attribute_value(8)); } @@ -10979,10 +10979,10 @@ void Ifc4x3::IfcFireSuppressionTerminalType::setPredefinedType(const ::Ifc4x3::I const ifcopenshell::entity& Ifc4x3::IfcFireSuppressionTerminalType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[466]); } -Ifc4x3::IfcFireSuppressionTerminalType Ifc4x3::IfcFireSuppressionTerminalType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcFireSuppressionTerminalTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcFireSuppressionTerminalTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3::IfcFireSuppressionTerminalType Ifc4x3::IfcFireSuppressionTerminalType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcFireSuppressionTerminalTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcFireSuppressionTerminalTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcFixedReferenceSweptAreaSolid -::Ifc4x3::IfcDirection Ifc4x3::IfcFixedReferenceSweptAreaSolid::FixedReference() const { return ((express::Base)(get_attribute_value(5))).as<::Ifc4x3::IfcDirection>(); } +::Ifc4x3::IfcDirection Ifc4x3::IfcFixedReferenceSweptAreaSolid::FixedReference() const { return ((express::base)(get_attribute_value(5))).as<::Ifc4x3::IfcDirection>(); } void Ifc4x3::IfcFixedReferenceSweptAreaSolid::setFixedReference(const ::Ifc4x3::IfcDirection& v) { set_attribute_value(5, v);if constexpr (false)unset_attribute_value(5); } @@ -10999,7 +10999,7 @@ Ifc4x3::IfcFlowController Ifc4x3::IfcFlowController::initialize(std::string v1_G const ifcopenshell::entity& Ifc4x3::IfcFlowControllerType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[470]); } -Ifc4x3::IfcFlowControllerType Ifc4x3::IfcFlowControllerType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } +Ifc4x3::IfcFlowControllerType Ifc4x3::IfcFlowControllerType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } // Function implementations for IfcFlowFitting @@ -11011,7 +11011,7 @@ Ifc4x3::IfcFlowFitting Ifc4x3::IfcFlowFitting::initialize(std::string v1_GlobalI const ifcopenshell::entity& Ifc4x3::IfcFlowFittingType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[473]); } -Ifc4x3::IfcFlowFittingType Ifc4x3::IfcFlowFittingType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } +Ifc4x3::IfcFlowFittingType Ifc4x3::IfcFlowFittingType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } // Function implementations for IfcFlowInstrument std::optional< ::Ifc4x3::IfcFlowInstrumentTypeEnum::Value > Ifc4x3::IfcFlowInstrument::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3::IfcFlowInstrumentTypeEnum::FromString(get_attribute_value(8)); } @@ -11027,7 +11027,7 @@ void Ifc4x3::IfcFlowInstrumentType::setPredefinedType(const ::Ifc4x3::IfcFlowIns const ifcopenshell::entity& Ifc4x3::IfcFlowInstrumentType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[475]); } -Ifc4x3::IfcFlowInstrumentType Ifc4x3::IfcFlowInstrumentType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcFlowInstrumentTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcFlowInstrumentTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3::IfcFlowInstrumentType Ifc4x3::IfcFlowInstrumentType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcFlowInstrumentTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcFlowInstrumentTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcFlowMeter std::optional< ::Ifc4x3::IfcFlowMeterTypeEnum::Value > Ifc4x3::IfcFlowMeter::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3::IfcFlowMeterTypeEnum::FromString(get_attribute_value(8)); } @@ -11043,7 +11043,7 @@ void Ifc4x3::IfcFlowMeterType::setPredefinedType(const ::Ifc4x3::IfcFlowMeterTyp const ifcopenshell::entity& Ifc4x3::IfcFlowMeterType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[478]); } -Ifc4x3::IfcFlowMeterType Ifc4x3::IfcFlowMeterType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcFlowMeterTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcFlowMeterTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3::IfcFlowMeterType Ifc4x3::IfcFlowMeterType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcFlowMeterTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcFlowMeterTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcFlowMovingDevice @@ -11055,7 +11055,7 @@ Ifc4x3::IfcFlowMovingDevice Ifc4x3::IfcFlowMovingDevice::initialize(std::string const ifcopenshell::entity& Ifc4x3::IfcFlowMovingDeviceType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[481]); } -Ifc4x3::IfcFlowMovingDeviceType Ifc4x3::IfcFlowMovingDeviceType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } +Ifc4x3::IfcFlowMovingDeviceType Ifc4x3::IfcFlowMovingDeviceType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } // Function implementations for IfcFlowSegment @@ -11067,7 +11067,7 @@ Ifc4x3::IfcFlowSegment Ifc4x3::IfcFlowSegment::initialize(std::string v1_GlobalI const ifcopenshell::entity& Ifc4x3::IfcFlowSegmentType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[483]); } -Ifc4x3::IfcFlowSegmentType Ifc4x3::IfcFlowSegmentType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } +Ifc4x3::IfcFlowSegmentType Ifc4x3::IfcFlowSegmentType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } // Function implementations for IfcFlowStorageDevice @@ -11079,7 +11079,7 @@ Ifc4x3::IfcFlowStorageDevice Ifc4x3::IfcFlowStorageDevice::initialize(std::strin const ifcopenshell::entity& Ifc4x3::IfcFlowStorageDeviceType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[485]); } -Ifc4x3::IfcFlowStorageDeviceType Ifc4x3::IfcFlowStorageDeviceType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } +Ifc4x3::IfcFlowStorageDeviceType Ifc4x3::IfcFlowStorageDeviceType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } // Function implementations for IfcFlowTerminal @@ -11091,7 +11091,7 @@ Ifc4x3::IfcFlowTerminal Ifc4x3::IfcFlowTerminal::initialize(std::string v1_Globa const ifcopenshell::entity& Ifc4x3::IfcFlowTerminalType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[487]); } -Ifc4x3::IfcFlowTerminalType Ifc4x3::IfcFlowTerminalType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } +Ifc4x3::IfcFlowTerminalType Ifc4x3::IfcFlowTerminalType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } // Function implementations for IfcFlowTreatmentDevice @@ -11103,7 +11103,7 @@ Ifc4x3::IfcFlowTreatmentDevice Ifc4x3::IfcFlowTreatmentDevice::initialize(std::s const ifcopenshell::entity& Ifc4x3::IfcFlowTreatmentDeviceType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[489]); } -Ifc4x3::IfcFlowTreatmentDeviceType Ifc4x3::IfcFlowTreatmentDeviceType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } +Ifc4x3::IfcFlowTreatmentDeviceType Ifc4x3::IfcFlowTreatmentDeviceType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } // Function implementations for IfcFooting std::optional< ::Ifc4x3::IfcFootingTypeEnum::Value > Ifc4x3::IfcFooting::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3::IfcFootingTypeEnum::FromString(get_attribute_value(8)); } @@ -11119,7 +11119,7 @@ void Ifc4x3::IfcFootingType::setPredefinedType(const ::Ifc4x3::IfcFootingTypeEnu const ifcopenshell::entity& Ifc4x3::IfcFootingType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[494]); } -Ifc4x3::IfcFootingType Ifc4x3::IfcFootingType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcFootingTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcFootingTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3::IfcFootingType Ifc4x3::IfcFootingType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcFootingTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcFootingTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcFurnishingElement @@ -11131,7 +11131,7 @@ Ifc4x3::IfcFurnishingElement Ifc4x3::IfcFurnishingElement::initialize(std::strin const ifcopenshell::entity& Ifc4x3::IfcFurnishingElementType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[499]); } -Ifc4x3::IfcFurnishingElementType Ifc4x3::IfcFurnishingElementType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } +Ifc4x3::IfcFurnishingElementType Ifc4x3::IfcFurnishingElementType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } // Function implementations for IfcFurniture std::optional< ::Ifc4x3::IfcFurnitureTypeEnum::Value > Ifc4x3::IfcFurniture::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3::IfcFurnitureTypeEnum::FromString(get_attribute_value(8)); } @@ -11149,7 +11149,7 @@ void Ifc4x3::IfcFurnitureType::setPredefinedType(const std::optional< ::Ifc4x3:: const ifcopenshell::entity& Ifc4x3::IfcFurnitureType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[501]); } -Ifc4x3::IfcFurnitureType Ifc4x3::IfcFurnitureType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcAssemblyPlaceEnum::Value v10_AssemblyPlace, std::optional< ::Ifc4x3::IfcFurnitureTypeEnum::Value > v11_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcAssemblyPlaceEnum::Class(),(size_t)v10_AssemblyPlace))); if (v11_PredefinedType) {set_attribute_value(10, (enumeration_reference(&::Ifc4x3::IfcFurnitureTypeEnum::Class(),(size_t)*v11_PredefinedType))); }; return *this; } +Ifc4x3::IfcFurnitureType Ifc4x3::IfcFurnitureType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcAssemblyPlaceEnum::Value v10_AssemblyPlace, std::optional< ::Ifc4x3::IfcFurnitureTypeEnum::Value > v11_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcAssemblyPlaceEnum::Class(),(size_t)v10_AssemblyPlace))); if (v11_PredefinedType) {set_attribute_value(10, (enumeration_reference(&::Ifc4x3::IfcFurnitureTypeEnum::Class(),(size_t)*v11_PredefinedType))); }; return *this; } // Function implementations for IfcGeographicElement std::optional< ::Ifc4x3::IfcGeographicElementTypeEnum::Value > Ifc4x3::IfcGeographicElement::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3::IfcGeographicElementTypeEnum::FromString(get_attribute_value(8)); } @@ -11165,22 +11165,22 @@ void Ifc4x3::IfcGeographicElementType::setPredefinedType(const ::Ifc4x3::IfcGeog const ifcopenshell::entity& Ifc4x3::IfcGeographicElementType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[504]); } -Ifc4x3::IfcGeographicElementType Ifc4x3::IfcGeographicElementType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcGeographicElementTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcGeographicElementTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3::IfcGeographicElementType Ifc4x3::IfcGeographicElementType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcGeographicElementTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcGeographicElementTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcGeometricCurveSet const ifcopenshell::entity& Ifc4x3::IfcGeometricCurveSet::Class() { return *((ifcopenshell::entity*)IFC4X3_types[506]); } -Ifc4x3::IfcGeometricCurveSet Ifc4x3::IfcGeometricCurveSet::initialize(std::vector< ::Ifc4x3::IfcGeometricSetSelect > v1_Elements) { set_attribute_value(0, cast_vector(v1_Elements));; return *this; } +Ifc4x3::IfcGeometricCurveSet Ifc4x3::IfcGeometricCurveSet::initialize(std::vector< ::Ifc4x3::IfcGeometricSetSelect > v1_Elements) { set_attribute_value(0, cast_vector(v1_Elements));; return *this; } // Function implementations for IfcGeometricRepresentationContext int64_t Ifc4x3::IfcGeometricRepresentationContext::CoordinateSpaceDimension() const { int64_t v = get_attribute_value(2); return v; } void Ifc4x3::IfcGeometricRepresentationContext::setCoordinateSpaceDimension(const int64_t& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } std::optional< double > Ifc4x3::IfcGeometricRepresentationContext::Precision() const { if(get_attribute_value(3).isNull()) { return std::nullopt; } double v = get_attribute_value(3); return v; } void Ifc4x3::IfcGeometricRepresentationContext::setPrecision(const std::optional< double >& v) { if (v) {set_attribute_value(3, *v);} else {unset_attribute_value(3);} } -::Ifc4x3::IfcAxis2Placement Ifc4x3::IfcGeometricRepresentationContext::WorldCoordinateSystem() const { return ((express::Base)(get_attribute_value(4))).as<::Ifc4x3::IfcAxis2Placement>(); } +::Ifc4x3::IfcAxis2Placement Ifc4x3::IfcGeometricRepresentationContext::WorldCoordinateSystem() const { return ((express::base)(get_attribute_value(4))).as<::Ifc4x3::IfcAxis2Placement>(); } void Ifc4x3::IfcGeometricRepresentationContext::setWorldCoordinateSystem(const ::Ifc4x3::IfcAxis2Placement& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } -::Ifc4x3::IfcDirection Ifc4x3::IfcGeometricRepresentationContext::TrueNorth() const { if(get_attribute_value(5).isNull()) { return ::Ifc4x3::IfcDirection{}; } return ((express::Base)(get_attribute_value(5))).as<::Ifc4x3::IfcDirection>(); } +::Ifc4x3::IfcDirection Ifc4x3::IfcGeometricRepresentationContext::TrueNorth() const { if(get_attribute_value(5).isNull()) { return ::Ifc4x3::IfcDirection{}; } return ((express::base)(get_attribute_value(5))).as<::Ifc4x3::IfcDirection>(); } void Ifc4x3::IfcGeometricRepresentationContext::setTrueNorth(const ::Ifc4x3::IfcDirection& v) { set_attribute_value(5, v);if constexpr (false)unset_attribute_value(5); } std::vector<::Ifc4x3::IfcGeometricRepresentationSubContext> Ifc4x3::IfcGeometricRepresentationContext::HasSubContexts() const { return cast_vector(file()->get_inverse(data()->id(), IFC4X3_types[510], 6)); } @@ -11196,7 +11196,7 @@ const ifcopenshell::entity& Ifc4x3::IfcGeometricRepresentationItem::Class() { re Ifc4x3::IfcGeometricRepresentationItem Ifc4x3::IfcGeometricRepresentationItem::initialize() { ; return *this; } // Function implementations for IfcGeometricRepresentationSubContext -::Ifc4x3::IfcGeometricRepresentationContext Ifc4x3::IfcGeometricRepresentationSubContext::ParentContext() const { return ((express::Base)(get_attribute_value(6))).as<::Ifc4x3::IfcGeometricRepresentationContext>(); } +::Ifc4x3::IfcGeometricRepresentationContext Ifc4x3::IfcGeometricRepresentationSubContext::ParentContext() const { return ((express::base)(get_attribute_value(6))).as<::Ifc4x3::IfcGeometricRepresentationContext>(); } void Ifc4x3::IfcGeometricRepresentationSubContext::setParentContext(const ::Ifc4x3::IfcGeometricRepresentationContext& v) { set_attribute_value(6, v);if constexpr (false)unset_attribute_value(6); } std::optional< double > Ifc4x3::IfcGeometricRepresentationSubContext::TargetScale() const { if(get_attribute_value(7).isNull()) { return std::nullopt; } double v = get_attribute_value(7); return v; } void Ifc4x3::IfcGeometricRepresentationSubContext::setTargetScale(const std::optional< double >& v) { if (v) {set_attribute_value(7, *v);} else {unset_attribute_value(7);} } @@ -11210,12 +11210,12 @@ const ifcopenshell::entity& Ifc4x3::IfcGeometricRepresentationSubContext::Class( Ifc4x3::IfcGeometricRepresentationSubContext Ifc4x3::IfcGeometricRepresentationSubContext::initialize(std::optional< std::string > v1_ContextIdentifier, std::optional< std::string > v2_ContextType, ::Ifc4x3::IfcGeometricRepresentationContext v7_ParentContext, std::optional< double > v8_TargetScale, ::Ifc4x3::IfcGeometricProjectionEnum::Value v9_TargetView, std::optional< std::string > v10_UserDefinedTargetView) { if (v1_ContextIdentifier) {set_attribute_value(0, (*v1_ContextIdentifier)); } if (v2_ContextType) {set_attribute_value(1, (*v2_ContextType)); }set_attribute_value(6, (v7_ParentContext)); if (v8_TargetScale) {set_attribute_value(7, (*v8_TargetScale)); }set_attribute_value(8, (enumeration_reference(&::Ifc4x3::IfcGeometricProjectionEnum::Class(),(size_t)v9_TargetView))); if (v10_UserDefinedTargetView) {set_attribute_value(9, (*v10_UserDefinedTargetView)); }; return *this; } // Function implementations for IfcGeometricSet -std::vector< ::Ifc4x3::IfcGeometricSetSelect > Ifc4x3::IfcGeometricSet::Elements() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3::IfcGeometricSetSelect>(es); } -void Ifc4x3::IfcGeometricSet::setElements(const std::vector< ::Ifc4x3::IfcGeometricSetSelect >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } +std::vector< ::Ifc4x3::IfcGeometricSetSelect > Ifc4x3::IfcGeometricSet::Elements() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3::IfcGeometricSetSelect>(es); } +void Ifc4x3::IfcGeometricSet::setElements(const std::vector< ::Ifc4x3::IfcGeometricSetSelect >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } const ifcopenshell::entity& Ifc4x3::IfcGeometricSet::Class() { return *((ifcopenshell::entity*)IFC4X3_types[511]); } -Ifc4x3::IfcGeometricSet Ifc4x3::IfcGeometricSet::initialize(std::vector< ::Ifc4x3::IfcGeometricSetSelect > v1_Elements) { set_attribute_value(0, cast_vector(v1_Elements));; return *this; } +Ifc4x3::IfcGeometricSet Ifc4x3::IfcGeometricSet::initialize(std::vector< ::Ifc4x3::IfcGeometricSetSelect > v1_Elements) { set_attribute_value(0, cast_vector(v1_Elements));; return *this; } // Function implementations for IfcGeomodel @@ -11250,33 +11250,33 @@ const ifcopenshell::entity& Ifc4x3::IfcGeotechnicalStratum::Class() { return *(( Ifc4x3::IfcGeotechnicalStratum Ifc4x3::IfcGeotechnicalStratum::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, ::Ifc4x3::IfcObjectPlacement v6_ObjectPlacement, ::Ifc4x3::IfcProductRepresentation v7_Representation, std::optional< std::string > v8_Tag, std::optional< ::Ifc4x3::IfcGeotechnicalStratumTypeEnum::Value > v9_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); }set_attribute_value(5, (v6_ObjectPlacement));set_attribute_value(6, (v7_Representation)); if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_PredefinedType) {set_attribute_value(8, (enumeration_reference(&::Ifc4x3::IfcGeotechnicalStratumTypeEnum::Class(),(size_t)*v9_PredefinedType))); }; return *this; } // Function implementations for IfcGradientCurve -::Ifc4x3::IfcBoundedCurve Ifc4x3::IfcGradientCurve::BaseCurve() const { return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3::IfcBoundedCurve>(); } +::Ifc4x3::IfcBoundedCurve Ifc4x3::IfcGradientCurve::BaseCurve() const { return ((express::base)(get_attribute_value(2))).as<::Ifc4x3::IfcBoundedCurve>(); } void Ifc4x3::IfcGradientCurve::setBaseCurve(const ::Ifc4x3::IfcBoundedCurve& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } -::Ifc4x3::IfcPlacement Ifc4x3::IfcGradientCurve::EndPoint() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3::IfcPlacement{}; } return ((express::Base)(get_attribute_value(3))).as<::Ifc4x3::IfcPlacement>(); } +::Ifc4x3::IfcPlacement Ifc4x3::IfcGradientCurve::EndPoint() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3::IfcPlacement{}; } return ((express::base)(get_attribute_value(3))).as<::Ifc4x3::IfcPlacement>(); } void Ifc4x3::IfcGradientCurve::setEndPoint(const ::Ifc4x3::IfcPlacement& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } const ifcopenshell::entity& Ifc4x3::IfcGradientCurve::Class() { return *((ifcopenshell::entity*)IFC4X3_types[521]); } -Ifc4x3::IfcGradientCurve Ifc4x3::IfcGradientCurve::initialize(std::vector< ::Ifc4x3::IfcSegment > v1_Segments, boost::logic::tribool v2_SelfIntersect, ::Ifc4x3::IfcBoundedCurve v3_BaseCurve, ::Ifc4x3::IfcPlacement v4_EndPoint) { set_attribute_value(0, cast_vector(v1_Segments));set_attribute_value(1, (v2_SelfIntersect));set_attribute_value(2, (v3_BaseCurve));set_attribute_value(3, (v4_EndPoint));; return *this; } +Ifc4x3::IfcGradientCurve Ifc4x3::IfcGradientCurve::initialize(std::vector< ::Ifc4x3::IfcSegment > v1_Segments, boost::logic::tribool v2_SelfIntersect, ::Ifc4x3::IfcBoundedCurve v3_BaseCurve, ::Ifc4x3::IfcPlacement v4_EndPoint) { set_attribute_value(0, cast_vector(v1_Segments));set_attribute_value(1, (v2_SelfIntersect));set_attribute_value(2, (v3_BaseCurve));set_attribute_value(3, (v4_EndPoint));; return *this; } // Function implementations for IfcGrid -std::vector< ::Ifc4x3::IfcGridAxis > Ifc4x3::IfcGrid::UAxes() const { std::vector es = get_attribute_value(7); return cast_vector<::Ifc4x3::IfcGridAxis>(es); } -void Ifc4x3::IfcGrid::setUAxes(const std::vector< ::Ifc4x3::IfcGridAxis >& v) { set_attribute_value(7, cast_vector(v));if constexpr (false)unset_attribute_value(7); } -std::vector< ::Ifc4x3::IfcGridAxis > Ifc4x3::IfcGrid::VAxes() const { std::vector es = get_attribute_value(8); return cast_vector<::Ifc4x3::IfcGridAxis>(es); } -void Ifc4x3::IfcGrid::setVAxes(const std::vector< ::Ifc4x3::IfcGridAxis >& v) { set_attribute_value(8, cast_vector(v));if constexpr (false)unset_attribute_value(8); } -std::optional< std::vector< ::Ifc4x3::IfcGridAxis > > Ifc4x3::IfcGrid::WAxes() const { if(get_attribute_value(9).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(9); return cast_vector<::Ifc4x3::IfcGridAxis>(es); } -void Ifc4x3::IfcGrid::setWAxes(const std::optional< std::vector< ::Ifc4x3::IfcGridAxis > >& v) { if (v) {set_attribute_value(9, cast_vector(*v));} else {unset_attribute_value(9);} } +std::vector< ::Ifc4x3::IfcGridAxis > Ifc4x3::IfcGrid::UAxes() const { std::vector es = get_attribute_value(7); return cast_vector<::Ifc4x3::IfcGridAxis>(es); } +void Ifc4x3::IfcGrid::setUAxes(const std::vector< ::Ifc4x3::IfcGridAxis >& v) { set_attribute_value(7, cast_vector(v));if constexpr (false)unset_attribute_value(7); } +std::vector< ::Ifc4x3::IfcGridAxis > Ifc4x3::IfcGrid::VAxes() const { std::vector es = get_attribute_value(8); return cast_vector<::Ifc4x3::IfcGridAxis>(es); } +void Ifc4x3::IfcGrid::setVAxes(const std::vector< ::Ifc4x3::IfcGridAxis >& v) { set_attribute_value(8, cast_vector(v));if constexpr (false)unset_attribute_value(8); } +std::optional< std::vector< ::Ifc4x3::IfcGridAxis > > Ifc4x3::IfcGrid::WAxes() const { if(get_attribute_value(9).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(9); return cast_vector<::Ifc4x3::IfcGridAxis>(es); } +void Ifc4x3::IfcGrid::setWAxes(const std::optional< std::vector< ::Ifc4x3::IfcGridAxis > >& v) { if (v) {set_attribute_value(9, cast_vector(*v));} else {unset_attribute_value(9);} } std::optional< ::Ifc4x3::IfcGridTypeEnum::Value > Ifc4x3::IfcGrid::PredefinedType() const { if(get_attribute_value(10).isNull()) { return std::nullopt; } return ::Ifc4x3::IfcGridTypeEnum::FromString(get_attribute_value(10)); } void Ifc4x3::IfcGrid::setPredefinedType(const std::optional< ::Ifc4x3::IfcGridTypeEnum::Value >& v) { if (v) {set_attribute_value(10, enumeration_reference(&::Ifc4x3::IfcGridTypeEnum::Class(), (size_t) *v));} else {unset_attribute_value(10);} } const ifcopenshell::entity& Ifc4x3::IfcGrid::Class() { return *((ifcopenshell::entity*)IFC4X3_types[522]); } -Ifc4x3::IfcGrid Ifc4x3::IfcGrid::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, ::Ifc4x3::IfcObjectPlacement v6_ObjectPlacement, ::Ifc4x3::IfcProductRepresentation v7_Representation, std::vector< ::Ifc4x3::IfcGridAxis > v8_UAxes, std::vector< ::Ifc4x3::IfcGridAxis > v9_VAxes, std::optional< std::vector< ::Ifc4x3::IfcGridAxis > > v10_WAxes, std::optional< ::Ifc4x3::IfcGridTypeEnum::Value > v11_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); }set_attribute_value(5, (v6_ObjectPlacement));set_attribute_value(6, (v7_Representation));set_attribute_value(7, cast_vector(v8_UAxes));set_attribute_value(8, cast_vector(v9_VAxes)); if (v10_WAxes) {set_attribute_value(9, cast_vector(*v10_WAxes)); } if (v11_PredefinedType) {set_attribute_value(10, (enumeration_reference(&::Ifc4x3::IfcGridTypeEnum::Class(),(size_t)*v11_PredefinedType))); }; return *this; } +Ifc4x3::IfcGrid Ifc4x3::IfcGrid::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, ::Ifc4x3::IfcObjectPlacement v6_ObjectPlacement, ::Ifc4x3::IfcProductRepresentation v7_Representation, std::vector< ::Ifc4x3::IfcGridAxis > v8_UAxes, std::vector< ::Ifc4x3::IfcGridAxis > v9_VAxes, std::optional< std::vector< ::Ifc4x3::IfcGridAxis > > v10_WAxes, std::optional< ::Ifc4x3::IfcGridTypeEnum::Value > v11_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); }set_attribute_value(5, (v6_ObjectPlacement));set_attribute_value(6, (v7_Representation));set_attribute_value(7, cast_vector(v8_UAxes));set_attribute_value(8, cast_vector(v9_VAxes)); if (v10_WAxes) {set_attribute_value(9, cast_vector(*v10_WAxes)); } if (v11_PredefinedType) {set_attribute_value(10, (enumeration_reference(&::Ifc4x3::IfcGridTypeEnum::Class(),(size_t)*v11_PredefinedType))); }; return *this; } // Function implementations for IfcGridAxis std::optional< std::string > Ifc4x3::IfcGridAxis::AxisTag() const { if(get_attribute_value(0).isNull()) { return std::nullopt; } std::string v = get_attribute_value(0); return v; } void Ifc4x3::IfcGridAxis::setAxisTag(const std::optional< std::string >& v) { if (v) {set_attribute_value(0, *v);} else {unset_attribute_value(0);} } -::Ifc4x3::IfcCurve Ifc4x3::IfcGridAxis::AxisCurve() const { return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3::IfcCurve>(); } +::Ifc4x3::IfcCurve Ifc4x3::IfcGridAxis::AxisCurve() const { return ((express::base)(get_attribute_value(1))).as<::Ifc4x3::IfcCurve>(); } void Ifc4x3::IfcGridAxis::setAxisCurve(const ::Ifc4x3::IfcCurve& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } bool Ifc4x3::IfcGridAxis::SameSense() const { bool v = get_attribute_value(2); return v; } void Ifc4x3::IfcGridAxis::setSameSense(const bool& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } @@ -11290,9 +11290,9 @@ const ifcopenshell::entity& Ifc4x3::IfcGridAxis::Class() { return *((ifcopenshel Ifc4x3::IfcGridAxis Ifc4x3::IfcGridAxis::initialize(std::optional< std::string > v1_AxisTag, ::Ifc4x3::IfcCurve v2_AxisCurve, bool v3_SameSense) { if (v1_AxisTag) {set_attribute_value(0, (*v1_AxisTag)); }set_attribute_value(1, (v2_AxisCurve));set_attribute_value(2, (v3_SameSense));; return *this; } // Function implementations for IfcGridPlacement -::Ifc4x3::IfcVirtualGridIntersection Ifc4x3::IfcGridPlacement::PlacementLocation() const { return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3::IfcVirtualGridIntersection>(); } +::Ifc4x3::IfcVirtualGridIntersection Ifc4x3::IfcGridPlacement::PlacementLocation() const { return ((express::base)(get_attribute_value(1))).as<::Ifc4x3::IfcVirtualGridIntersection>(); } void Ifc4x3::IfcGridPlacement::setPlacementLocation(const ::Ifc4x3::IfcVirtualGridIntersection& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } -::Ifc4x3::IfcGridPlacementDirectionSelect Ifc4x3::IfcGridPlacement::PlacementRefDirection() const { if(get_attribute_value(2).isNull()) { return ::Ifc4x3::IfcGridPlacementDirectionSelect{}; } return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3::IfcGridPlacementDirectionSelect>(); } +::Ifc4x3::IfcGridPlacementDirectionSelect Ifc4x3::IfcGridPlacement::PlacementRefDirection() const { if(get_attribute_value(2).isNull()) { return ::Ifc4x3::IfcGridPlacementDirectionSelect{}; } return ((express::base)(get_attribute_value(2))).as<::Ifc4x3::IfcGridPlacementDirectionSelect>(); } void Ifc4x3::IfcGridPlacement::setPlacementRefDirection(const ::Ifc4x3::IfcGridPlacementDirectionSelect& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } @@ -11308,7 +11308,7 @@ const ifcopenshell::entity& Ifc4x3::IfcGroup::Class() { return *((ifcopenshell:: Ifc4x3::IfcGroup Ifc4x3::IfcGroup::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); }; return *this; } // Function implementations for IfcHalfSpaceSolid -::Ifc4x3::IfcSurface Ifc4x3::IfcHalfSpaceSolid::BaseSurface() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3::IfcSurface>(); } +::Ifc4x3::IfcSurface Ifc4x3::IfcHalfSpaceSolid::BaseSurface() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3::IfcSurface>(); } void Ifc4x3::IfcHalfSpaceSolid::setBaseSurface(const ::Ifc4x3::IfcSurface& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } bool Ifc4x3::IfcHalfSpaceSolid::AgreementFlag() const { bool v = get_attribute_value(1); return v; } void Ifc4x3::IfcHalfSpaceSolid::setAgreementFlag(const bool& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } @@ -11331,7 +11331,7 @@ void Ifc4x3::IfcHeatExchangerType::setPredefinedType(const ::Ifc4x3::IfcHeatExch const ifcopenshell::entity& Ifc4x3::IfcHeatExchangerType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[531]); } -Ifc4x3::IfcHeatExchangerType Ifc4x3::IfcHeatExchangerType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcHeatExchangerTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcHeatExchangerTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3::IfcHeatExchangerType Ifc4x3::IfcHeatExchangerType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcHeatExchangerTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcHeatExchangerTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcHumidifier std::optional< ::Ifc4x3::IfcHumidifierTypeEnum::Value > Ifc4x3::IfcHumidifier::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3::IfcHumidifierTypeEnum::FromString(get_attribute_value(8)); } @@ -11347,7 +11347,7 @@ void Ifc4x3::IfcHumidifierType::setPredefinedType(const ::Ifc4x3::IfcHumidifierT const ifcopenshell::entity& Ifc4x3::IfcHumidifierType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[536]); } -Ifc4x3::IfcHumidifierType Ifc4x3::IfcHumidifierType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcHumidifierTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcHumidifierTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3::IfcHumidifierType Ifc4x3::IfcHumidifierType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcHumidifierTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcHumidifierTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcIShapeProfileDef double Ifc4x3::IfcIShapeProfileDef::OverallWidth() const { double v = get_attribute_value(3); return v; } @@ -11391,14 +11391,14 @@ void Ifc4x3::IfcImpactProtectionDeviceType::setPredefinedType(const ::Ifc4x3::If const ifcopenshell::entity& Ifc4x3::IfcImpactProtectionDeviceType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[542]); } -Ifc4x3::IfcImpactProtectionDeviceType Ifc4x3::IfcImpactProtectionDeviceType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcImpactProtectionDeviceTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcImpactProtectionDeviceTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3::IfcImpactProtectionDeviceType Ifc4x3::IfcImpactProtectionDeviceType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcImpactProtectionDeviceTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcImpactProtectionDeviceTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcIndexedColourMap -::Ifc4x3::IfcTessellatedFaceSet Ifc4x3::IfcIndexedColourMap::MappedTo() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3::IfcTessellatedFaceSet>(); } +::Ifc4x3::IfcTessellatedFaceSet Ifc4x3::IfcIndexedColourMap::MappedTo() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3::IfcTessellatedFaceSet>(); } void Ifc4x3::IfcIndexedColourMap::setMappedTo(const ::Ifc4x3::IfcTessellatedFaceSet& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } std::optional< double > Ifc4x3::IfcIndexedColourMap::Opacity() const { if(get_attribute_value(1).isNull()) { return std::nullopt; } double v = get_attribute_value(1); return v; } void Ifc4x3::IfcIndexedColourMap::setOpacity(const std::optional< double >& v) { if (v) {set_attribute_value(1, *v);} else {unset_attribute_value(1);} } -::Ifc4x3::IfcColourRgbList Ifc4x3::IfcIndexedColourMap::Colours() const { return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3::IfcColourRgbList>(); } +::Ifc4x3::IfcColourRgbList Ifc4x3::IfcIndexedColourMap::Colours() const { return ((express::base)(get_attribute_value(2))).as<::Ifc4x3::IfcColourRgbList>(); } void Ifc4x3::IfcIndexedColourMap::setColours(const ::Ifc4x3::IfcColourRgbList& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } std::vector< int64_t > /*[1:?]*/ Ifc4x3::IfcIndexedColourMap::ColourIndex() const { std::vector< int64_t > /*[1:?]*/ v = get_attribute_value(3); return v; } void Ifc4x3::IfcIndexedColourMap::setColourIndex(const std::vector< int64_t > /*[1:?]*/& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } @@ -11408,16 +11408,16 @@ const ifcopenshell::entity& Ifc4x3::IfcIndexedColourMap::Class() { return *((ifc Ifc4x3::IfcIndexedColourMap Ifc4x3::IfcIndexedColourMap::initialize(::Ifc4x3::IfcTessellatedFaceSet v1_MappedTo, std::optional< double > v2_Opacity, ::Ifc4x3::IfcColourRgbList v3_Colours, std::vector< int64_t > /*[1:?]*/ v4_ColourIndex) { set_attribute_value(0, (v1_MappedTo)); if (v2_Opacity) {set_attribute_value(1, (*v2_Opacity)); }set_attribute_value(2, (v3_Colours));set_attribute_value(3, (v4_ColourIndex));; return *this; } // Function implementations for IfcIndexedPolyCurve -::Ifc4x3::IfcCartesianPointList Ifc4x3::IfcIndexedPolyCurve::Points() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3::IfcCartesianPointList>(); } +::Ifc4x3::IfcCartesianPointList Ifc4x3::IfcIndexedPolyCurve::Points() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3::IfcCartesianPointList>(); } void Ifc4x3::IfcIndexedPolyCurve::setPoints(const ::Ifc4x3::IfcCartesianPointList& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } -std::optional< std::vector< ::Ifc4x3::IfcSegmentIndexSelect > > Ifc4x3::IfcIndexedPolyCurve::Segments() const { if(get_attribute_value(1).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3::IfcSegmentIndexSelect>(es); } -void Ifc4x3::IfcIndexedPolyCurve::setSegments(const std::optional< std::vector< ::Ifc4x3::IfcSegmentIndexSelect > >& v) { if (v) {set_attribute_value(1, cast_vector(*v));} else {unset_attribute_value(1);} } +std::optional< std::vector< ::Ifc4x3::IfcSegmentIndexSelect > > Ifc4x3::IfcIndexedPolyCurve::Segments() const { if(get_attribute_value(1).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3::IfcSegmentIndexSelect>(es); } +void Ifc4x3::IfcIndexedPolyCurve::setSegments(const std::optional< std::vector< ::Ifc4x3::IfcSegmentIndexSelect > >& v) { if (v) {set_attribute_value(1, cast_vector(*v));} else {unset_attribute_value(1);} } boost::logic::tribool Ifc4x3::IfcIndexedPolyCurve::SelfIntersect() const { boost::logic::tribool v = get_attribute_value(2); return v; } void Ifc4x3::IfcIndexedPolyCurve::setSelfIntersect(const boost::logic::tribool& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } const ifcopenshell::entity& Ifc4x3::IfcIndexedPolyCurve::Class() { return *((ifcopenshell::entity*)IFC4X3_types[545]); } -Ifc4x3::IfcIndexedPolyCurve Ifc4x3::IfcIndexedPolyCurve::initialize(::Ifc4x3::IfcCartesianPointList v1_Points, std::optional< std::vector< ::Ifc4x3::IfcSegmentIndexSelect > > v2_Segments, boost::logic::tribool v3_SelfIntersect) { set_attribute_value(0, (v1_Points)); if (v2_Segments) {set_attribute_value(1, cast_vector(*v2_Segments)); }set_attribute_value(2, (v3_SelfIntersect));; return *this; } +Ifc4x3::IfcIndexedPolyCurve Ifc4x3::IfcIndexedPolyCurve::initialize(::Ifc4x3::IfcCartesianPointList v1_Points, std::optional< std::vector< ::Ifc4x3::IfcSegmentIndexSelect > > v2_Segments, boost::logic::tribool v3_SelfIntersect) { set_attribute_value(0, (v1_Points)); if (v2_Segments) {set_attribute_value(1, cast_vector(*v2_Segments)); }set_attribute_value(2, (v3_SelfIntersect));; return *this; } // Function implementations for IfcIndexedPolygonalFace std::vector< int64_t > /*[3:?]*/ Ifc4x3::IfcIndexedPolygonalFace::CoordIndex() const { std::vector< int64_t > /*[3:?]*/ v = get_attribute_value(0); return v; } @@ -11438,22 +11438,22 @@ const ifcopenshell::entity& Ifc4x3::IfcIndexedPolygonalFaceWithVoids::Class() { Ifc4x3::IfcIndexedPolygonalFaceWithVoids Ifc4x3::IfcIndexedPolygonalFaceWithVoids::initialize(std::vector< int64_t > /*[3:?]*/ v1_CoordIndex, std::vector< std::vector< int64_t > > v2_InnerCoordIndices) { set_attribute_value(0, (v1_CoordIndex));set_attribute_value(1, (v2_InnerCoordIndices));; return *this; } // Function implementations for IfcIndexedPolygonalTextureMap -std::vector< ::Ifc4x3::IfcTextureCoordinateIndices > Ifc4x3::IfcIndexedPolygonalTextureMap::TexCoordIndices() const { std::vector es = get_attribute_value(3); return cast_vector<::Ifc4x3::IfcTextureCoordinateIndices>(es); } -void Ifc4x3::IfcIndexedPolygonalTextureMap::setTexCoordIndices(const std::vector< ::Ifc4x3::IfcTextureCoordinateIndices >& v) { set_attribute_value(3, cast_vector(v));if constexpr (false)unset_attribute_value(3); } +std::vector< ::Ifc4x3::IfcTextureCoordinateIndices > Ifc4x3::IfcIndexedPolygonalTextureMap::TexCoordIndices() const { std::vector es = get_attribute_value(3); return cast_vector<::Ifc4x3::IfcTextureCoordinateIndices>(es); } +void Ifc4x3::IfcIndexedPolygonalTextureMap::setTexCoordIndices(const std::vector< ::Ifc4x3::IfcTextureCoordinateIndices >& v) { set_attribute_value(3, cast_vector(v));if constexpr (false)unset_attribute_value(3); } const ifcopenshell::entity& Ifc4x3::IfcIndexedPolygonalTextureMap::Class() { return *((ifcopenshell::entity*)IFC4X3_types[548]); } -Ifc4x3::IfcIndexedPolygonalTextureMap Ifc4x3::IfcIndexedPolygonalTextureMap::initialize(std::vector< ::Ifc4x3::IfcSurfaceTexture > v1_Maps, ::Ifc4x3::IfcTessellatedFaceSet v2_MappedTo, ::Ifc4x3::IfcTextureVertexList v3_TexCoords, std::vector< ::Ifc4x3::IfcTextureCoordinateIndices > v4_TexCoordIndices) { set_attribute_value(0, cast_vector(v1_Maps));set_attribute_value(1, (v2_MappedTo));set_attribute_value(2, (v3_TexCoords));set_attribute_value(3, cast_vector(v4_TexCoordIndices));; return *this; } +Ifc4x3::IfcIndexedPolygonalTextureMap Ifc4x3::IfcIndexedPolygonalTextureMap::initialize(std::vector< ::Ifc4x3::IfcSurfaceTexture > v1_Maps, ::Ifc4x3::IfcTessellatedFaceSet v2_MappedTo, ::Ifc4x3::IfcTextureVertexList v3_TexCoords, std::vector< ::Ifc4x3::IfcTextureCoordinateIndices > v4_TexCoordIndices) { set_attribute_value(0, cast_vector(v1_Maps));set_attribute_value(1, (v2_MappedTo));set_attribute_value(2, (v3_TexCoords));set_attribute_value(3, cast_vector(v4_TexCoordIndices));; return *this; } // Function implementations for IfcIndexedTextureMap -::Ifc4x3::IfcTessellatedFaceSet Ifc4x3::IfcIndexedTextureMap::MappedTo() const { return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3::IfcTessellatedFaceSet>(); } +::Ifc4x3::IfcTessellatedFaceSet Ifc4x3::IfcIndexedTextureMap::MappedTo() const { return ((express::base)(get_attribute_value(1))).as<::Ifc4x3::IfcTessellatedFaceSet>(); } void Ifc4x3::IfcIndexedTextureMap::setMappedTo(const ::Ifc4x3::IfcTessellatedFaceSet& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } -::Ifc4x3::IfcTextureVertexList Ifc4x3::IfcIndexedTextureMap::TexCoords() const { return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3::IfcTextureVertexList>(); } +::Ifc4x3::IfcTextureVertexList Ifc4x3::IfcIndexedTextureMap::TexCoords() const { return ((express::base)(get_attribute_value(2))).as<::Ifc4x3::IfcTextureVertexList>(); } void Ifc4x3::IfcIndexedTextureMap::setTexCoords(const ::Ifc4x3::IfcTextureVertexList& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } const ifcopenshell::entity& Ifc4x3::IfcIndexedTextureMap::Class() { return *((ifcopenshell::entity*)IFC4X3_types[549]); } -Ifc4x3::IfcIndexedTextureMap Ifc4x3::IfcIndexedTextureMap::initialize(std::vector< ::Ifc4x3::IfcSurfaceTexture > v1_Maps, ::Ifc4x3::IfcTessellatedFaceSet v2_MappedTo, ::Ifc4x3::IfcTextureVertexList v3_TexCoords) { set_attribute_value(0, cast_vector(v1_Maps));set_attribute_value(1, (v2_MappedTo));set_attribute_value(2, (v3_TexCoords));; return *this; } +Ifc4x3::IfcIndexedTextureMap Ifc4x3::IfcIndexedTextureMap::initialize(std::vector< ::Ifc4x3::IfcSurfaceTexture > v1_Maps, ::Ifc4x3::IfcTessellatedFaceSet v2_MappedTo, ::Ifc4x3::IfcTextureVertexList v3_TexCoords) { set_attribute_value(0, cast_vector(v1_Maps));set_attribute_value(1, (v2_MappedTo));set_attribute_value(2, (v3_TexCoords));; return *this; } // Function implementations for IfcIndexedTriangleTextureMap std::optional< std::vector< std::vector< int64_t > > > Ifc4x3::IfcIndexedTriangleTextureMap::TexCoordIndex() const { if(get_attribute_value(3).isNull()) { return std::nullopt; } std::vector< std::vector< int64_t > > v = get_attribute_value(3); return v; } @@ -11461,7 +11461,7 @@ void Ifc4x3::IfcIndexedTriangleTextureMap::setTexCoordIndex(const std::optional< const ifcopenshell::entity& Ifc4x3::IfcIndexedTriangleTextureMap::Class() { return *((ifcopenshell::entity*)IFC4X3_types[550]); } -Ifc4x3::IfcIndexedTriangleTextureMap Ifc4x3::IfcIndexedTriangleTextureMap::initialize(std::vector< ::Ifc4x3::IfcSurfaceTexture > v1_Maps, ::Ifc4x3::IfcTessellatedFaceSet v2_MappedTo, ::Ifc4x3::IfcTextureVertexList v3_TexCoords, std::optional< std::vector< std::vector< int64_t > > > v4_TexCoordIndex) { set_attribute_value(0, cast_vector(v1_Maps));set_attribute_value(1, (v2_MappedTo));set_attribute_value(2, (v3_TexCoords)); if (v4_TexCoordIndex) {set_attribute_value(3, (*v4_TexCoordIndex)); }; return *this; } +Ifc4x3::IfcIndexedTriangleTextureMap Ifc4x3::IfcIndexedTriangleTextureMap::initialize(std::vector< ::Ifc4x3::IfcSurfaceTexture > v1_Maps, ::Ifc4x3::IfcTessellatedFaceSet v2_MappedTo, ::Ifc4x3::IfcTextureVertexList v3_TexCoords, std::optional< std::vector< std::vector< int64_t > > > v4_TexCoordIndex) { set_attribute_value(0, cast_vector(v1_Maps));set_attribute_value(1, (v2_MappedTo));set_attribute_value(2, (v3_TexCoords)); if (v4_TexCoordIndex) {set_attribute_value(3, (*v4_TexCoordIndex)); }; return *this; } // Function implementations for IfcInterceptor std::optional< ::Ifc4x3::IfcInterceptorTypeEnum::Value > Ifc4x3::IfcInterceptor::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3::IfcInterceptorTypeEnum::FromString(get_attribute_value(8)); } @@ -11477,49 +11477,49 @@ void Ifc4x3::IfcInterceptorType::setPredefinedType(const ::Ifc4x3::IfcIntercepto const ifcopenshell::entity& Ifc4x3::IfcInterceptorType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[555]); } -Ifc4x3::IfcInterceptorType Ifc4x3::IfcInterceptorType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcInterceptorTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcInterceptorTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3::IfcInterceptorType Ifc4x3::IfcInterceptorType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcInterceptorTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcInterceptorTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcIntersectionCurve const ifcopenshell::entity& Ifc4x3::IfcIntersectionCurve::Class() { return *((ifcopenshell::entity*)IFC4X3_types[559]); } -Ifc4x3::IfcIntersectionCurve Ifc4x3::IfcIntersectionCurve::initialize(::Ifc4x3::IfcCurve v1_Curve3D, std::vector< ::Ifc4x3::IfcPcurve > v2_AssociatedGeometry, ::Ifc4x3::IfcPreferredSurfaceCurveRepresentation::Value v3_MasterRepresentation) { set_attribute_value(0, (v1_Curve3D));set_attribute_value(1, cast_vector(v2_AssociatedGeometry));set_attribute_value(2, (enumeration_reference(&::Ifc4x3::IfcPreferredSurfaceCurveRepresentation::Class(),(size_t)v3_MasterRepresentation)));; return *this; } +Ifc4x3::IfcIntersectionCurve Ifc4x3::IfcIntersectionCurve::initialize(::Ifc4x3::IfcCurve v1_Curve3D, std::vector< ::Ifc4x3::IfcPcurve > v2_AssociatedGeometry, ::Ifc4x3::IfcPreferredSurfaceCurveRepresentation::Value v3_MasterRepresentation) { set_attribute_value(0, (v1_Curve3D));set_attribute_value(1, cast_vector(v2_AssociatedGeometry));set_attribute_value(2, (enumeration_reference(&::Ifc4x3::IfcPreferredSurfaceCurveRepresentation::Class(),(size_t)v3_MasterRepresentation)));; return *this; } // Function implementations for IfcInventory std::optional< ::Ifc4x3::IfcInventoryTypeEnum::Value > Ifc4x3::IfcInventory::PredefinedType() const { if(get_attribute_value(5).isNull()) { return std::nullopt; } return ::Ifc4x3::IfcInventoryTypeEnum::FromString(get_attribute_value(5)); } void Ifc4x3::IfcInventory::setPredefinedType(const std::optional< ::Ifc4x3::IfcInventoryTypeEnum::Value >& v) { if (v) {set_attribute_value(5, enumeration_reference(&::Ifc4x3::IfcInventoryTypeEnum::Class(), (size_t) *v));} else {unset_attribute_value(5);} } -::Ifc4x3::IfcActorSelect Ifc4x3::IfcInventory::Jurisdiction() const { if(get_attribute_value(6).isNull()) { return ::Ifc4x3::IfcActorSelect{}; } return ((express::Base)(get_attribute_value(6))).as<::Ifc4x3::IfcActorSelect>(); } +::Ifc4x3::IfcActorSelect Ifc4x3::IfcInventory::Jurisdiction() const { if(get_attribute_value(6).isNull()) { return ::Ifc4x3::IfcActorSelect{}; } return ((express::base)(get_attribute_value(6))).as<::Ifc4x3::IfcActorSelect>(); } void Ifc4x3::IfcInventory::setJurisdiction(const ::Ifc4x3::IfcActorSelect& v) { set_attribute_value(6, v);if constexpr (false)unset_attribute_value(6); } -std::optional< std::vector< ::Ifc4x3::IfcPerson > > Ifc4x3::IfcInventory::ResponsiblePersons() const { if(get_attribute_value(7).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(7); return cast_vector<::Ifc4x3::IfcPerson>(es); } -void Ifc4x3::IfcInventory::setResponsiblePersons(const std::optional< std::vector< ::Ifc4x3::IfcPerson > >& v) { if (v) {set_attribute_value(7, cast_vector(*v));} else {unset_attribute_value(7);} } +std::optional< std::vector< ::Ifc4x3::IfcPerson > > Ifc4x3::IfcInventory::ResponsiblePersons() const { if(get_attribute_value(7).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(7); return cast_vector<::Ifc4x3::IfcPerson>(es); } +void Ifc4x3::IfcInventory::setResponsiblePersons(const std::optional< std::vector< ::Ifc4x3::IfcPerson > >& v) { if (v) {set_attribute_value(7, cast_vector(*v));} else {unset_attribute_value(7);} } std::optional< std::string > Ifc4x3::IfcInventory::LastUpdateDate() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } std::string v = get_attribute_value(8); return v; } void Ifc4x3::IfcInventory::setLastUpdateDate(const std::optional< std::string >& v) { if (v) {set_attribute_value(8, *v);} else {unset_attribute_value(8);} } -::Ifc4x3::IfcCostValue Ifc4x3::IfcInventory::CurrentValue() const { if(get_attribute_value(9).isNull()) { return ::Ifc4x3::IfcCostValue{}; } return ((express::Base)(get_attribute_value(9))).as<::Ifc4x3::IfcCostValue>(); } +::Ifc4x3::IfcCostValue Ifc4x3::IfcInventory::CurrentValue() const { if(get_attribute_value(9).isNull()) { return ::Ifc4x3::IfcCostValue{}; } return ((express::base)(get_attribute_value(9))).as<::Ifc4x3::IfcCostValue>(); } void Ifc4x3::IfcInventory::setCurrentValue(const ::Ifc4x3::IfcCostValue& v) { set_attribute_value(9, v);if constexpr (false)unset_attribute_value(9); } -::Ifc4x3::IfcCostValue Ifc4x3::IfcInventory::OriginalValue() const { if(get_attribute_value(10).isNull()) { return ::Ifc4x3::IfcCostValue{}; } return ((express::Base)(get_attribute_value(10))).as<::Ifc4x3::IfcCostValue>(); } +::Ifc4x3::IfcCostValue Ifc4x3::IfcInventory::OriginalValue() const { if(get_attribute_value(10).isNull()) { return ::Ifc4x3::IfcCostValue{}; } return ((express::base)(get_attribute_value(10))).as<::Ifc4x3::IfcCostValue>(); } void Ifc4x3::IfcInventory::setOriginalValue(const ::Ifc4x3::IfcCostValue& v) { set_attribute_value(10, v);if constexpr (false)unset_attribute_value(10); } const ifcopenshell::entity& Ifc4x3::IfcInventory::Class() { return *((ifcopenshell::entity*)IFC4X3_types[560]); } -Ifc4x3::IfcInventory Ifc4x3::IfcInventory::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, std::optional< ::Ifc4x3::IfcInventoryTypeEnum::Value > v6_PredefinedType, ::Ifc4x3::IfcActorSelect v7_Jurisdiction, std::optional< std::vector< ::Ifc4x3::IfcPerson > > v8_ResponsiblePersons, std::optional< std::string > v9_LastUpdateDate, ::Ifc4x3::IfcCostValue v10_CurrentValue, ::Ifc4x3::IfcCostValue v11_OriginalValue) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); } if (v6_PredefinedType) {set_attribute_value(5, (enumeration_reference(&::Ifc4x3::IfcInventoryTypeEnum::Class(),(size_t)*v6_PredefinedType))); }set_attribute_value(6, (v7_Jurisdiction)); if (v8_ResponsiblePersons) {set_attribute_value(7, cast_vector(*v8_ResponsiblePersons)); } if (v9_LastUpdateDate) {set_attribute_value(8, (*v9_LastUpdateDate)); }set_attribute_value(9, (v10_CurrentValue));set_attribute_value(10, (v11_OriginalValue));; return *this; } +Ifc4x3::IfcInventory Ifc4x3::IfcInventory::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, std::optional< ::Ifc4x3::IfcInventoryTypeEnum::Value > v6_PredefinedType, ::Ifc4x3::IfcActorSelect v7_Jurisdiction, std::optional< std::vector< ::Ifc4x3::IfcPerson > > v8_ResponsiblePersons, std::optional< std::string > v9_LastUpdateDate, ::Ifc4x3::IfcCostValue v10_CurrentValue, ::Ifc4x3::IfcCostValue v11_OriginalValue) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); } if (v6_PredefinedType) {set_attribute_value(5, (enumeration_reference(&::Ifc4x3::IfcInventoryTypeEnum::Class(),(size_t)*v6_PredefinedType))); }set_attribute_value(6, (v7_Jurisdiction)); if (v8_ResponsiblePersons) {set_attribute_value(7, cast_vector(*v8_ResponsiblePersons)); } if (v9_LastUpdateDate) {set_attribute_value(8, (*v9_LastUpdateDate)); }set_attribute_value(9, (v10_CurrentValue));set_attribute_value(10, (v11_OriginalValue));; return *this; } // Function implementations for IfcIrregularTimeSeries -std::vector< ::Ifc4x3::IfcIrregularTimeSeriesValue > Ifc4x3::IfcIrregularTimeSeries::Values() const { std::vector es = get_attribute_value(8); return cast_vector<::Ifc4x3::IfcIrregularTimeSeriesValue>(es); } -void Ifc4x3::IfcIrregularTimeSeries::setValues(const std::vector< ::Ifc4x3::IfcIrregularTimeSeriesValue >& v) { set_attribute_value(8, cast_vector(v));if constexpr (false)unset_attribute_value(8); } +std::vector< ::Ifc4x3::IfcIrregularTimeSeriesValue > Ifc4x3::IfcIrregularTimeSeries::Values() const { std::vector es = get_attribute_value(8); return cast_vector<::Ifc4x3::IfcIrregularTimeSeriesValue>(es); } +void Ifc4x3::IfcIrregularTimeSeries::setValues(const std::vector< ::Ifc4x3::IfcIrregularTimeSeriesValue >& v) { set_attribute_value(8, cast_vector(v));if constexpr (false)unset_attribute_value(8); } const ifcopenshell::entity& Ifc4x3::IfcIrregularTimeSeries::Class() { return *((ifcopenshell::entity*)IFC4X3_types[563]); } -Ifc4x3::IfcIrregularTimeSeries Ifc4x3::IfcIrregularTimeSeries::initialize(std::string v1_Name, std::optional< std::string > v2_Description, std::string v3_StartTime, std::string v4_EndTime, ::Ifc4x3::IfcTimeSeriesDataTypeEnum::Value v5_TimeSeriesDataType, ::Ifc4x3::IfcDataOriginEnum::Value v6_DataOrigin, std::optional< std::string > v7_UserDefinedDataOrigin, ::Ifc4x3::IfcUnit v8_Unit, std::vector< ::Ifc4x3::IfcIrregularTimeSeriesValue > v9_Values) { set_attribute_value(0, (v1_Name)); if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, (v3_StartTime));set_attribute_value(3, (v4_EndTime));set_attribute_value(4, (enumeration_reference(&::Ifc4x3::IfcTimeSeriesDataTypeEnum::Class(),(size_t)v5_TimeSeriesDataType)));set_attribute_value(5, (enumeration_reference(&::Ifc4x3::IfcDataOriginEnum::Class(),(size_t)v6_DataOrigin))); if (v7_UserDefinedDataOrigin) {set_attribute_value(6, (*v7_UserDefinedDataOrigin)); }set_attribute_value(7, (v8_Unit));set_attribute_value(8, cast_vector(v9_Values));; return *this; } +Ifc4x3::IfcIrregularTimeSeries Ifc4x3::IfcIrregularTimeSeries::initialize(std::string v1_Name, std::optional< std::string > v2_Description, std::string v3_StartTime, std::string v4_EndTime, ::Ifc4x3::IfcTimeSeriesDataTypeEnum::Value v5_TimeSeriesDataType, ::Ifc4x3::IfcDataOriginEnum::Value v6_DataOrigin, std::optional< std::string > v7_UserDefinedDataOrigin, ::Ifc4x3::IfcUnit v8_Unit, std::vector< ::Ifc4x3::IfcIrregularTimeSeriesValue > v9_Values) { set_attribute_value(0, (v1_Name)); if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, (v3_StartTime));set_attribute_value(3, (v4_EndTime));set_attribute_value(4, (enumeration_reference(&::Ifc4x3::IfcTimeSeriesDataTypeEnum::Class(),(size_t)v5_TimeSeriesDataType)));set_attribute_value(5, (enumeration_reference(&::Ifc4x3::IfcDataOriginEnum::Class(),(size_t)v6_DataOrigin))); if (v7_UserDefinedDataOrigin) {set_attribute_value(6, (*v7_UserDefinedDataOrigin)); }set_attribute_value(7, (v8_Unit));set_attribute_value(8, cast_vector(v9_Values));; return *this; } // Function implementations for IfcIrregularTimeSeriesValue std::string Ifc4x3::IfcIrregularTimeSeriesValue::TimeStamp() const { std::string v = get_attribute_value(0); return v; } void Ifc4x3::IfcIrregularTimeSeriesValue::setTimeStamp(const std::string& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } -std::vector< ::Ifc4x3::IfcValue > Ifc4x3::IfcIrregularTimeSeriesValue::ListValues() const { std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3::IfcValue>(es); } -void Ifc4x3::IfcIrregularTimeSeriesValue::setListValues(const std::vector< ::Ifc4x3::IfcValue >& v) { set_attribute_value(1, cast_vector(v));if constexpr (false)unset_attribute_value(1); } +std::vector< ::Ifc4x3::IfcValue > Ifc4x3::IfcIrregularTimeSeriesValue::ListValues() const { std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3::IfcValue>(es); } +void Ifc4x3::IfcIrregularTimeSeriesValue::setListValues(const std::vector< ::Ifc4x3::IfcValue >& v) { set_attribute_value(1, cast_vector(v));if constexpr (false)unset_attribute_value(1); } const ifcopenshell::entity& Ifc4x3::IfcIrregularTimeSeriesValue::Class() { return *((ifcopenshell::entity*)IFC4X3_types[564]); } -Ifc4x3::IfcIrregularTimeSeriesValue Ifc4x3::IfcIrregularTimeSeriesValue::initialize(std::string v1_TimeStamp, std::vector< ::Ifc4x3::IfcValue > v2_ListValues) { set_attribute_value(0, (v1_TimeStamp));set_attribute_value(1, cast_vector(v2_ListValues));; return *this; } +Ifc4x3::IfcIrregularTimeSeriesValue Ifc4x3::IfcIrregularTimeSeriesValue::initialize(std::string v1_TimeStamp, std::vector< ::Ifc4x3::IfcValue > v2_ListValues) { set_attribute_value(0, (v1_TimeStamp));set_attribute_value(1, cast_vector(v2_ListValues));; return *this; } // Function implementations for IfcJunctionBox std::optional< ::Ifc4x3::IfcJunctionBoxTypeEnum::Value > Ifc4x3::IfcJunctionBox::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3::IfcJunctionBoxTypeEnum::FromString(get_attribute_value(8)); } @@ -11535,7 +11535,7 @@ void Ifc4x3::IfcJunctionBoxType::setPredefinedType(const ::Ifc4x3::IfcJunctionBo const ifcopenshell::entity& Ifc4x3::IfcJunctionBoxType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[568]); } -Ifc4x3::IfcJunctionBoxType Ifc4x3::IfcJunctionBoxType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcJunctionBoxTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcJunctionBoxTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3::IfcJunctionBoxType Ifc4x3::IfcJunctionBoxType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcJunctionBoxTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcJunctionBoxTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcKerb bool Ifc4x3::IfcKerb::Mountable() const { bool v = get_attribute_value(8); return v; } @@ -11551,7 +11551,7 @@ void Ifc4x3::IfcKerbType::setMountable(const bool& v) { set_attribute_value(9, v const ifcopenshell::entity& Ifc4x3::IfcKerbType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[571]); } -Ifc4x3::IfcKerbType Ifc4x3::IfcKerbType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, bool v10_Mountable) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (v10_Mountable));; return *this; } +Ifc4x3::IfcKerbType Ifc4x3::IfcKerbType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, bool v10_Mountable) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (v10_Mountable));; return *this; } // Function implementations for IfcLShapeProfileDef double Ifc4x3::IfcLShapeProfileDef::Depth() const { double v = get_attribute_value(3); return v; } @@ -11577,7 +11577,7 @@ void Ifc4x3::IfcLaborResource::setPredefinedType(const std::optional< ::Ifc4x3:: const ifcopenshell::entity& Ifc4x3::IfcLaborResource::Class() { return *((ifcopenshell::entity*)IFC4X3_types[575]); } -Ifc4x3::IfcLaborResource Ifc4x3::IfcLaborResource::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, std::optional< std::string > v6_Identification, std::optional< std::string > v7_LongDescription, ::Ifc4x3::IfcResourceTime v8_Usage, std::optional< std::vector< ::Ifc4x3::IfcAppliedValue > > v9_BaseCosts, ::Ifc4x3::IfcPhysicalQuantity v10_BaseQuantity, std::optional< ::Ifc4x3::IfcLaborResourceTypeEnum::Value > v11_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); } if (v6_Identification) {set_attribute_value(5, (*v6_Identification)); } if (v7_LongDescription) {set_attribute_value(6, (*v7_LongDescription)); }set_attribute_value(7, (v8_Usage)); if (v9_BaseCosts) {set_attribute_value(8, cast_vector(*v9_BaseCosts)); }set_attribute_value(9, (v10_BaseQuantity)); if (v11_PredefinedType) {set_attribute_value(10, (enumeration_reference(&::Ifc4x3::IfcLaborResourceTypeEnum::Class(),(size_t)*v11_PredefinedType))); }; return *this; } +Ifc4x3::IfcLaborResource Ifc4x3::IfcLaborResource::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, std::optional< std::string > v6_Identification, std::optional< std::string > v7_LongDescription, ::Ifc4x3::IfcResourceTime v8_Usage, std::optional< std::vector< ::Ifc4x3::IfcAppliedValue > > v9_BaseCosts, ::Ifc4x3::IfcPhysicalQuantity v10_BaseQuantity, std::optional< ::Ifc4x3::IfcLaborResourceTypeEnum::Value > v11_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); } if (v6_Identification) {set_attribute_value(5, (*v6_Identification)); } if (v7_LongDescription) {set_attribute_value(6, (*v7_LongDescription)); }set_attribute_value(7, (v8_Usage)); if (v9_BaseCosts) {set_attribute_value(8, cast_vector(*v9_BaseCosts)); }set_attribute_value(9, (v10_BaseQuantity)); if (v11_PredefinedType) {set_attribute_value(10, (enumeration_reference(&::Ifc4x3::IfcLaborResourceTypeEnum::Class(),(size_t)*v11_PredefinedType))); }; return *this; } // Function implementations for IfcLaborResourceType ::Ifc4x3::IfcLaborResourceTypeEnum::Value Ifc4x3::IfcLaborResourceType::PredefinedType() const { return ::Ifc4x3::IfcLaborResourceTypeEnum::FromString(get_attribute_value(11)); } @@ -11585,10 +11585,10 @@ void Ifc4x3::IfcLaborResourceType::setPredefinedType(const ::Ifc4x3::IfcLaborRes const ifcopenshell::entity& Ifc4x3::IfcLaborResourceType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[576]); } -Ifc4x3::IfcLaborResourceType Ifc4x3::IfcLaborResourceType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::string > v7_Identification, std::optional< std::string > v8_LongDescription, std::optional< std::string > v9_ResourceType, std::optional< std::vector< ::Ifc4x3::IfcAppliedValue > > v10_BaseCosts, ::Ifc4x3::IfcPhysicalQuantity v11_BaseQuantity, ::Ifc4x3::IfcLaborResourceTypeEnum::Value v12_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_Identification) {set_attribute_value(6, (*v7_Identification)); } if (v8_LongDescription) {set_attribute_value(7, (*v8_LongDescription)); } if (v9_ResourceType) {set_attribute_value(8, (*v9_ResourceType)); } if (v10_BaseCosts) {set_attribute_value(9, cast_vector(*v10_BaseCosts)); }set_attribute_value(10, (v11_BaseQuantity));set_attribute_value(11, (enumeration_reference(&::Ifc4x3::IfcLaborResourceTypeEnum::Class(),(size_t)v12_PredefinedType)));; return *this; } +Ifc4x3::IfcLaborResourceType Ifc4x3::IfcLaborResourceType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::string > v7_Identification, std::optional< std::string > v8_LongDescription, std::optional< std::string > v9_ResourceType, std::optional< std::vector< ::Ifc4x3::IfcAppliedValue > > v10_BaseCosts, ::Ifc4x3::IfcPhysicalQuantity v11_BaseQuantity, ::Ifc4x3::IfcLaborResourceTypeEnum::Value v12_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_Identification) {set_attribute_value(6, (*v7_Identification)); } if (v8_LongDescription) {set_attribute_value(7, (*v8_LongDescription)); } if (v9_ResourceType) {set_attribute_value(8, (*v9_ResourceType)); } if (v10_BaseCosts) {set_attribute_value(9, cast_vector(*v10_BaseCosts)); }set_attribute_value(10, (v11_BaseQuantity));set_attribute_value(11, (enumeration_reference(&::Ifc4x3::IfcLaborResourceTypeEnum::Class(),(size_t)v12_PredefinedType)));; return *this; } // Function implementations for IfcLagTime -::Ifc4x3::IfcTimeOrRatioSelect Ifc4x3::IfcLagTime::LagValue() const { return ((express::Base)(get_attribute_value(3))).as<::Ifc4x3::IfcTimeOrRatioSelect>(); } +::Ifc4x3::IfcTimeOrRatioSelect Ifc4x3::IfcLagTime::LagValue() const { return ((express::base)(get_attribute_value(3))).as<::Ifc4x3::IfcTimeOrRatioSelect>(); } void Ifc4x3::IfcLagTime::setLagValue(const ::Ifc4x3::IfcTimeOrRatioSelect& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } ::Ifc4x3::IfcTaskDurationEnum::Value Ifc4x3::IfcLagTime::DurationType() const { return ::Ifc4x3::IfcTaskDurationEnum::FromString(get_attribute_value(4)); } void Ifc4x3::IfcLagTime::setDurationType(const ::Ifc4x3::IfcTaskDurationEnum::Value& v) { set_attribute_value(4, enumeration_reference(&::Ifc4x3::IfcTaskDurationEnum::Class(), (size_t) v));if constexpr (false)unset_attribute_value(4); } @@ -11611,14 +11611,14 @@ void Ifc4x3::IfcLampType::setPredefinedType(const ::Ifc4x3::IfcLampTypeEnum::Val const ifcopenshell::entity& Ifc4x3::IfcLampType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[580]); } -Ifc4x3::IfcLampType Ifc4x3::IfcLampType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcLampTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcLampTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3::IfcLampType Ifc4x3::IfcLampType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcLampTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcLampTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcLibraryInformation std::string Ifc4x3::IfcLibraryInformation::Name() const { std::string v = get_attribute_value(0); return v; } void Ifc4x3::IfcLibraryInformation::setName(const std::string& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } std::optional< std::string > Ifc4x3::IfcLibraryInformation::Version() const { if(get_attribute_value(1).isNull()) { return std::nullopt; } std::string v = get_attribute_value(1); return v; } void Ifc4x3::IfcLibraryInformation::setVersion(const std::optional< std::string >& v) { if (v) {set_attribute_value(1, *v);} else {unset_attribute_value(1);} } -::Ifc4x3::IfcActorSelect Ifc4x3::IfcLibraryInformation::Publisher() const { if(get_attribute_value(2).isNull()) { return ::Ifc4x3::IfcActorSelect{}; } return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3::IfcActorSelect>(); } +::Ifc4x3::IfcActorSelect Ifc4x3::IfcLibraryInformation::Publisher() const { if(get_attribute_value(2).isNull()) { return ::Ifc4x3::IfcActorSelect{}; } return ((express::base)(get_attribute_value(2))).as<::Ifc4x3::IfcActorSelect>(); } void Ifc4x3::IfcLibraryInformation::setPublisher(const ::Ifc4x3::IfcActorSelect& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } std::optional< std::string > Ifc4x3::IfcLibraryInformation::VersionDate() const { if(get_attribute_value(3).isNull()) { return std::nullopt; } std::string v = get_attribute_value(3); return v; } void Ifc4x3::IfcLibraryInformation::setVersionDate(const std::optional< std::string >& v) { if (v) {set_attribute_value(3, *v);} else {unset_attribute_value(3);} } @@ -11638,7 +11638,7 @@ std::optional< std::string > Ifc4x3::IfcLibraryReference::Description() const { void Ifc4x3::IfcLibraryReference::setDescription(const std::optional< std::string >& v) { if (v) {set_attribute_value(3, *v);} else {unset_attribute_value(3);} } std::optional< std::string > Ifc4x3::IfcLibraryReference::Language() const { if(get_attribute_value(4).isNull()) { return std::nullopt; } std::string v = get_attribute_value(4); return v; } void Ifc4x3::IfcLibraryReference::setLanguage(const std::optional< std::string >& v) { if (v) {set_attribute_value(4, *v);} else {unset_attribute_value(4);} } -::Ifc4x3::IfcLibraryInformation Ifc4x3::IfcLibraryReference::ReferencedLibrary() const { if(get_attribute_value(5).isNull()) { return ::Ifc4x3::IfcLibraryInformation{}; } return ((express::Base)(get_attribute_value(5))).as<::Ifc4x3::IfcLibraryInformation>(); } +::Ifc4x3::IfcLibraryInformation Ifc4x3::IfcLibraryReference::ReferencedLibrary() const { if(get_attribute_value(5).isNull()) { return ::Ifc4x3::IfcLibraryInformation{}; } return ((express::base)(get_attribute_value(5))).as<::Ifc4x3::IfcLibraryInformation>(); } void Ifc4x3::IfcLibraryReference::setReferencedLibrary(const ::Ifc4x3::IfcLibraryInformation& v) { set_attribute_value(5, v);if constexpr (false)unset_attribute_value(5); } std::vector<::Ifc4x3::IfcRelAssociatesLibrary> Ifc4x3::IfcLibraryReference::LibraryRefForObjects() const { return cast_vector(file()->get_inverse(data()->id(), IFC4X3_types[914], 5)); } @@ -11672,22 +11672,22 @@ void Ifc4x3::IfcLightFixtureType::setPredefinedType(const ::Ifc4x3::IfcLightFixt const ifcopenshell::entity& Ifc4x3::IfcLightFixtureType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[594]); } -Ifc4x3::IfcLightFixtureType Ifc4x3::IfcLightFixtureType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcLightFixtureTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcLightFixtureTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3::IfcLightFixtureType Ifc4x3::IfcLightFixtureType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcLightFixtureTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcLightFixtureTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcLightIntensityDistribution ::Ifc4x3::IfcLightDistributionCurveEnum::Value Ifc4x3::IfcLightIntensityDistribution::LightDistributionCurve() const { return ::Ifc4x3::IfcLightDistributionCurveEnum::FromString(get_attribute_value(0)); } void Ifc4x3::IfcLightIntensityDistribution::setLightDistributionCurve(const ::Ifc4x3::IfcLightDistributionCurveEnum::Value& v) { set_attribute_value(0, enumeration_reference(&::Ifc4x3::IfcLightDistributionCurveEnum::Class(), (size_t) v));if constexpr (false)unset_attribute_value(0); } -std::vector< ::Ifc4x3::IfcLightDistributionData > Ifc4x3::IfcLightIntensityDistribution::DistributionData() const { std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3::IfcLightDistributionData>(es); } -void Ifc4x3::IfcLightIntensityDistribution::setDistributionData(const std::vector< ::Ifc4x3::IfcLightDistributionData >& v) { set_attribute_value(1, cast_vector(v));if constexpr (false)unset_attribute_value(1); } +std::vector< ::Ifc4x3::IfcLightDistributionData > Ifc4x3::IfcLightIntensityDistribution::DistributionData() const { std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3::IfcLightDistributionData>(es); } +void Ifc4x3::IfcLightIntensityDistribution::setDistributionData(const std::vector< ::Ifc4x3::IfcLightDistributionData >& v) { set_attribute_value(1, cast_vector(v));if constexpr (false)unset_attribute_value(1); } const ifcopenshell::entity& Ifc4x3::IfcLightIntensityDistribution::Class() { return *((ifcopenshell::entity*)IFC4X3_types[596]); } -Ifc4x3::IfcLightIntensityDistribution Ifc4x3::IfcLightIntensityDistribution::initialize(::Ifc4x3::IfcLightDistributionCurveEnum::Value v1_LightDistributionCurve, std::vector< ::Ifc4x3::IfcLightDistributionData > v2_DistributionData) { set_attribute_value(0, (enumeration_reference(&::Ifc4x3::IfcLightDistributionCurveEnum::Class(),(size_t)v1_LightDistributionCurve)));set_attribute_value(1, cast_vector(v2_DistributionData));; return *this; } +Ifc4x3::IfcLightIntensityDistribution Ifc4x3::IfcLightIntensityDistribution::initialize(::Ifc4x3::IfcLightDistributionCurveEnum::Value v1_LightDistributionCurve, std::vector< ::Ifc4x3::IfcLightDistributionData > v2_DistributionData) { set_attribute_value(0, (enumeration_reference(&::Ifc4x3::IfcLightDistributionCurveEnum::Class(),(size_t)v1_LightDistributionCurve)));set_attribute_value(1, cast_vector(v2_DistributionData));; return *this; } // Function implementations for IfcLightSource std::optional< std::string > Ifc4x3::IfcLightSource::Name() const { if(get_attribute_value(0).isNull()) { return std::nullopt; } std::string v = get_attribute_value(0); return v; } void Ifc4x3::IfcLightSource::setName(const std::optional< std::string >& v) { if (v) {set_attribute_value(0, *v);} else {unset_attribute_value(0);} } -::Ifc4x3::IfcColourRgb Ifc4x3::IfcLightSource::LightColour() const { return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3::IfcColourRgb>(); } +::Ifc4x3::IfcColourRgb Ifc4x3::IfcLightSource::LightColour() const { return ((express::base)(get_attribute_value(1))).as<::Ifc4x3::IfcColourRgb>(); } void Ifc4x3::IfcLightSource::setLightColour(const ::Ifc4x3::IfcColourRgb& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } std::optional< double > Ifc4x3::IfcLightSource::AmbientIntensity() const { if(get_attribute_value(2).isNull()) { return std::nullopt; } double v = get_attribute_value(2); return v; } void Ifc4x3::IfcLightSource::setAmbientIntensity(const std::optional< double >& v) { if (v) {set_attribute_value(2, *v);} else {unset_attribute_value(2);} } @@ -11705,7 +11705,7 @@ const ifcopenshell::entity& Ifc4x3::IfcLightSourceAmbient::Class() { return *((i Ifc4x3::IfcLightSourceAmbient Ifc4x3::IfcLightSourceAmbient::initialize(std::optional< std::string > v1_Name, ::Ifc4x3::IfcColourRgb v2_LightColour, std::optional< double > v3_AmbientIntensity, std::optional< double > v4_Intensity) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); }set_attribute_value(1, (v2_LightColour)); if (v3_AmbientIntensity) {set_attribute_value(2, (*v3_AmbientIntensity)); } if (v4_Intensity) {set_attribute_value(3, (*v4_Intensity)); }; return *this; } // Function implementations for IfcLightSourceDirectional -::Ifc4x3::IfcDirection Ifc4x3::IfcLightSourceDirectional::Orientation() const { return ((express::Base)(get_attribute_value(4))).as<::Ifc4x3::IfcDirection>(); } +::Ifc4x3::IfcDirection Ifc4x3::IfcLightSourceDirectional::Orientation() const { return ((express::base)(get_attribute_value(4))).as<::Ifc4x3::IfcDirection>(); } void Ifc4x3::IfcLightSourceDirectional::setOrientation(const ::Ifc4x3::IfcDirection& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } @@ -11713,9 +11713,9 @@ const ifcopenshell::entity& Ifc4x3::IfcLightSourceDirectional::Class() { return Ifc4x3::IfcLightSourceDirectional Ifc4x3::IfcLightSourceDirectional::initialize(std::optional< std::string > v1_Name, ::Ifc4x3::IfcColourRgb v2_LightColour, std::optional< double > v3_AmbientIntensity, std::optional< double > v4_Intensity, ::Ifc4x3::IfcDirection v5_Orientation) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); }set_attribute_value(1, (v2_LightColour)); if (v3_AmbientIntensity) {set_attribute_value(2, (*v3_AmbientIntensity)); } if (v4_Intensity) {set_attribute_value(3, (*v4_Intensity)); }set_attribute_value(4, (v5_Orientation));; return *this; } // Function implementations for IfcLightSourceGoniometric -::Ifc4x3::IfcAxis2Placement3D Ifc4x3::IfcLightSourceGoniometric::Position() const { return ((express::Base)(get_attribute_value(4))).as<::Ifc4x3::IfcAxis2Placement3D>(); } +::Ifc4x3::IfcAxis2Placement3D Ifc4x3::IfcLightSourceGoniometric::Position() const { return ((express::base)(get_attribute_value(4))).as<::Ifc4x3::IfcAxis2Placement3D>(); } void Ifc4x3::IfcLightSourceGoniometric::setPosition(const ::Ifc4x3::IfcAxis2Placement3D& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } -::Ifc4x3::IfcColourRgb Ifc4x3::IfcLightSourceGoniometric::ColourAppearance() const { if(get_attribute_value(5).isNull()) { return ::Ifc4x3::IfcColourRgb{}; } return ((express::Base)(get_attribute_value(5))).as<::Ifc4x3::IfcColourRgb>(); } +::Ifc4x3::IfcColourRgb Ifc4x3::IfcLightSourceGoniometric::ColourAppearance() const { if(get_attribute_value(5).isNull()) { return ::Ifc4x3::IfcColourRgb{}; } return ((express::base)(get_attribute_value(5))).as<::Ifc4x3::IfcColourRgb>(); } void Ifc4x3::IfcLightSourceGoniometric::setColourAppearance(const ::Ifc4x3::IfcColourRgb& v) { set_attribute_value(5, v);if constexpr (false)unset_attribute_value(5); } double Ifc4x3::IfcLightSourceGoniometric::ColourTemperature() const { double v = get_attribute_value(6); return v; } void Ifc4x3::IfcLightSourceGoniometric::setColourTemperature(const double& v) { set_attribute_value(6, v);if constexpr (false)unset_attribute_value(6); } @@ -11723,7 +11723,7 @@ double Ifc4x3::IfcLightSourceGoniometric::LuminousFlux() const { double v = get void Ifc4x3::IfcLightSourceGoniometric::setLuminousFlux(const double& v) { set_attribute_value(7, v);if constexpr (false)unset_attribute_value(7); } ::Ifc4x3::IfcLightEmissionSourceEnum::Value Ifc4x3::IfcLightSourceGoniometric::LightEmissionSource() const { return ::Ifc4x3::IfcLightEmissionSourceEnum::FromString(get_attribute_value(8)); } void Ifc4x3::IfcLightSourceGoniometric::setLightEmissionSource(const ::Ifc4x3::IfcLightEmissionSourceEnum::Value& v) { set_attribute_value(8, enumeration_reference(&::Ifc4x3::IfcLightEmissionSourceEnum::Class(), (size_t) v));if constexpr (false)unset_attribute_value(8); } -::Ifc4x3::IfcLightDistributionDataSourceSelect Ifc4x3::IfcLightSourceGoniometric::LightDistributionDataSource() const { return ((express::Base)(get_attribute_value(9))).as<::Ifc4x3::IfcLightDistributionDataSourceSelect>(); } +::Ifc4x3::IfcLightDistributionDataSourceSelect Ifc4x3::IfcLightSourceGoniometric::LightDistributionDataSource() const { return ((express::base)(get_attribute_value(9))).as<::Ifc4x3::IfcLightDistributionDataSourceSelect>(); } void Ifc4x3::IfcLightSourceGoniometric::setLightDistributionDataSource(const ::Ifc4x3::IfcLightDistributionDataSourceSelect& v) { set_attribute_value(9, v);if constexpr (false)unset_attribute_value(9); } @@ -11731,7 +11731,7 @@ const ifcopenshell::entity& Ifc4x3::IfcLightSourceGoniometric::Class() { return Ifc4x3::IfcLightSourceGoniometric Ifc4x3::IfcLightSourceGoniometric::initialize(std::optional< std::string > v1_Name, ::Ifc4x3::IfcColourRgb v2_LightColour, std::optional< double > v3_AmbientIntensity, std::optional< double > v4_Intensity, ::Ifc4x3::IfcAxis2Placement3D v5_Position, ::Ifc4x3::IfcColourRgb v6_ColourAppearance, double v7_ColourTemperature, double v8_LuminousFlux, ::Ifc4x3::IfcLightEmissionSourceEnum::Value v9_LightEmissionSource, ::Ifc4x3::IfcLightDistributionDataSourceSelect v10_LightDistributionDataSource) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); }set_attribute_value(1, (v2_LightColour)); if (v3_AmbientIntensity) {set_attribute_value(2, (*v3_AmbientIntensity)); } if (v4_Intensity) {set_attribute_value(3, (*v4_Intensity)); }set_attribute_value(4, (v5_Position));set_attribute_value(5, (v6_ColourAppearance));set_attribute_value(6, (v7_ColourTemperature));set_attribute_value(7, (v8_LuminousFlux));set_attribute_value(8, (enumeration_reference(&::Ifc4x3::IfcLightEmissionSourceEnum::Class(),(size_t)v9_LightEmissionSource)));set_attribute_value(9, (v10_LightDistributionDataSource));; return *this; } // Function implementations for IfcLightSourcePositional -::Ifc4x3::IfcCartesianPoint Ifc4x3::IfcLightSourcePositional::Position() const { return ((express::Base)(get_attribute_value(4))).as<::Ifc4x3::IfcCartesianPoint>(); } +::Ifc4x3::IfcCartesianPoint Ifc4x3::IfcLightSourcePositional::Position() const { return ((express::base)(get_attribute_value(4))).as<::Ifc4x3::IfcCartesianPoint>(); } void Ifc4x3::IfcLightSourcePositional::setPosition(const ::Ifc4x3::IfcCartesianPoint& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } double Ifc4x3::IfcLightSourcePositional::Radius() const { double v = get_attribute_value(5); return v; } void Ifc4x3::IfcLightSourcePositional::setRadius(const double& v) { set_attribute_value(5, v);if constexpr (false)unset_attribute_value(5); } @@ -11747,7 +11747,7 @@ const ifcopenshell::entity& Ifc4x3::IfcLightSourcePositional::Class() { return * Ifc4x3::IfcLightSourcePositional Ifc4x3::IfcLightSourcePositional::initialize(std::optional< std::string > v1_Name, ::Ifc4x3::IfcColourRgb v2_LightColour, std::optional< double > v3_AmbientIntensity, std::optional< double > v4_Intensity, ::Ifc4x3::IfcCartesianPoint v5_Position, double v6_Radius, double v7_ConstantAttenuation, double v8_DistanceAttenuation, double v9_QuadricAttenuation) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); }set_attribute_value(1, (v2_LightColour)); if (v3_AmbientIntensity) {set_attribute_value(2, (*v3_AmbientIntensity)); } if (v4_Intensity) {set_attribute_value(3, (*v4_Intensity)); }set_attribute_value(4, (v5_Position));set_attribute_value(5, (v6_Radius));set_attribute_value(6, (v7_ConstantAttenuation));set_attribute_value(7, (v8_DistanceAttenuation));set_attribute_value(8, (v9_QuadricAttenuation));; return *this; } // Function implementations for IfcLightSourceSpot -::Ifc4x3::IfcDirection Ifc4x3::IfcLightSourceSpot::Orientation() const { return ((express::Base)(get_attribute_value(9))).as<::Ifc4x3::IfcDirection>(); } +::Ifc4x3::IfcDirection Ifc4x3::IfcLightSourceSpot::Orientation() const { return ((express::base)(get_attribute_value(9))).as<::Ifc4x3::IfcDirection>(); } void Ifc4x3::IfcLightSourceSpot::setOrientation(const ::Ifc4x3::IfcDirection& v) { set_attribute_value(9, v);if constexpr (false)unset_attribute_value(9); } std::optional< double > Ifc4x3::IfcLightSourceSpot::ConcentrationExponent() const { if(get_attribute_value(10).isNull()) { return std::nullopt; } double v = get_attribute_value(10); return v; } void Ifc4x3::IfcLightSourceSpot::setConcentrationExponent(const std::optional< double >& v) { if (v) {set_attribute_value(10, *v);} else {unset_attribute_value(10);} } @@ -11761,9 +11761,9 @@ const ifcopenshell::entity& Ifc4x3::IfcLightSourceSpot::Class() { return *((ifco Ifc4x3::IfcLightSourceSpot Ifc4x3::IfcLightSourceSpot::initialize(std::optional< std::string > v1_Name, ::Ifc4x3::IfcColourRgb v2_LightColour, std::optional< double > v3_AmbientIntensity, std::optional< double > v4_Intensity, ::Ifc4x3::IfcCartesianPoint v5_Position, double v6_Radius, double v7_ConstantAttenuation, double v8_DistanceAttenuation, double v9_QuadricAttenuation, ::Ifc4x3::IfcDirection v10_Orientation, std::optional< double > v11_ConcentrationExponent, double v12_SpreadAngle, double v13_BeamWidthAngle) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); }set_attribute_value(1, (v2_LightColour)); if (v3_AmbientIntensity) {set_attribute_value(2, (*v3_AmbientIntensity)); } if (v4_Intensity) {set_attribute_value(3, (*v4_Intensity)); }set_attribute_value(4, (v5_Position));set_attribute_value(5, (v6_Radius));set_attribute_value(6, (v7_ConstantAttenuation));set_attribute_value(7, (v8_DistanceAttenuation));set_attribute_value(8, (v9_QuadricAttenuation));set_attribute_value(9, (v10_Orientation)); if (v11_ConcentrationExponent) {set_attribute_value(10, (*v11_ConcentrationExponent)); }set_attribute_value(11, (v12_SpreadAngle));set_attribute_value(12, (v13_BeamWidthAngle));; return *this; } // Function implementations for IfcLine -::Ifc4x3::IfcCartesianPoint Ifc4x3::IfcLine::Pnt() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3::IfcCartesianPoint>(); } +::Ifc4x3::IfcCartesianPoint Ifc4x3::IfcLine::Pnt() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3::IfcCartesianPoint>(); } void Ifc4x3::IfcLine::setPnt(const ::Ifc4x3::IfcCartesianPoint& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } -::Ifc4x3::IfcVector Ifc4x3::IfcLine::Dir() const { return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3::IfcVector>(); } +::Ifc4x3::IfcVector Ifc4x3::IfcLine::Dir() const { return ((express::base)(get_attribute_value(1))).as<::Ifc4x3::IfcVector>(); } void Ifc4x3::IfcLine::setDir(const ::Ifc4x3::IfcVector& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } @@ -11777,9 +11777,9 @@ const ifcopenshell::entity& Ifc4x3::IfcLinearElement::Class() { return *((ifcope Ifc4x3::IfcLinearElement Ifc4x3::IfcLinearElement::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, ::Ifc4x3::IfcObjectPlacement v6_ObjectPlacement, ::Ifc4x3::IfcProductRepresentation v7_Representation) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); }set_attribute_value(5, (v6_ObjectPlacement));set_attribute_value(6, (v7_Representation));; return *this; } // Function implementations for IfcLinearPlacement -::Ifc4x3::IfcAxis2PlacementLinear Ifc4x3::IfcLinearPlacement::RelativePlacement() const { return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3::IfcAxis2PlacementLinear>(); } +::Ifc4x3::IfcAxis2PlacementLinear Ifc4x3::IfcLinearPlacement::RelativePlacement() const { return ((express::base)(get_attribute_value(1))).as<::Ifc4x3::IfcAxis2PlacementLinear>(); } void Ifc4x3::IfcLinearPlacement::setRelativePlacement(const ::Ifc4x3::IfcAxis2PlacementLinear& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } -::Ifc4x3::IfcAxis2Placement3D Ifc4x3::IfcLinearPlacement::CartesianPosition() const { if(get_attribute_value(2).isNull()) { return ::Ifc4x3::IfcAxis2Placement3D{}; } return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3::IfcAxis2Placement3D>(); } +::Ifc4x3::IfcAxis2Placement3D Ifc4x3::IfcLinearPlacement::CartesianPosition() const { if(get_attribute_value(2).isNull()) { return ::Ifc4x3::IfcAxis2Placement3D{}; } return ((express::base)(get_attribute_value(2))).as<::Ifc4x3::IfcAxis2Placement3D>(); } void Ifc4x3::IfcLinearPlacement::setCartesianPosition(const ::Ifc4x3::IfcAxis2Placement3D& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } @@ -11806,10 +11806,10 @@ void Ifc4x3::IfcLiquidTerminalType::setPredefinedType(const ::Ifc4x3::IfcLiquidT const ifcopenshell::entity& Ifc4x3::IfcLiquidTerminalType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[613]); } -Ifc4x3::IfcLiquidTerminalType Ifc4x3::IfcLiquidTerminalType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcLiquidTerminalTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcLiquidTerminalTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3::IfcLiquidTerminalType Ifc4x3::IfcLiquidTerminalType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcLiquidTerminalTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcLiquidTerminalTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcLocalPlacement -::Ifc4x3::IfcAxis2Placement Ifc4x3::IfcLocalPlacement::RelativePlacement() const { return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3::IfcAxis2Placement>(); } +::Ifc4x3::IfcAxis2Placement Ifc4x3::IfcLocalPlacement::RelativePlacement() const { return ((express::base)(get_attribute_value(1))).as<::Ifc4x3::IfcAxis2Placement>(); } void Ifc4x3::IfcLocalPlacement::setRelativePlacement(const ::Ifc4x3::IfcAxis2Placement& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } @@ -11823,7 +11823,7 @@ const ifcopenshell::entity& Ifc4x3::IfcLoop::Class() { return *((ifcopenshell::e Ifc4x3::IfcLoop Ifc4x3::IfcLoop::initialize() { ; return *this; } // Function implementations for IfcManifoldSolidBrep -::Ifc4x3::IfcClosedShell Ifc4x3::IfcManifoldSolidBrep::Outer() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3::IfcClosedShell>(); } +::Ifc4x3::IfcClosedShell Ifc4x3::IfcManifoldSolidBrep::Outer() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3::IfcClosedShell>(); } void Ifc4x3::IfcManifoldSolidBrep::setOuter(const ::Ifc4x3::IfcClosedShell& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } @@ -11853,9 +11853,9 @@ const ifcopenshell::entity& Ifc4x3::IfcMapConversion::Class() { return *((ifcope Ifc4x3::IfcMapConversion Ifc4x3::IfcMapConversion::initialize(::Ifc4x3::IfcCoordinateReferenceSystemSelect v1_SourceCRS, ::Ifc4x3::IfcCoordinateReferenceSystem v2_TargetCRS, double v3_Eastings, double v4_Northings, double v5_OrthogonalHeight, std::optional< double > v6_XAxisAbscissa, std::optional< double > v7_XAxisOrdinate, std::optional< double > v8_Scale, std::optional< double > v9_ScaleY, std::optional< double > v10_ScaleZ) { set_attribute_value(0, (v1_SourceCRS));set_attribute_value(1, (v2_TargetCRS));set_attribute_value(2, (v3_Eastings));set_attribute_value(3, (v4_Northings));set_attribute_value(4, (v5_OrthogonalHeight)); if (v6_XAxisAbscissa) {set_attribute_value(5, (*v6_XAxisAbscissa)); } if (v7_XAxisOrdinate) {set_attribute_value(6, (*v7_XAxisOrdinate)); } if (v8_Scale) {set_attribute_value(7, (*v8_Scale)); } if (v9_ScaleY) {set_attribute_value(8, (*v9_ScaleY)); } if (v10_ScaleZ) {set_attribute_value(9, (*v10_ScaleZ)); }; return *this; } // Function implementations for IfcMappedItem -::Ifc4x3::IfcRepresentationMap Ifc4x3::IfcMappedItem::MappingSource() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3::IfcRepresentationMap>(); } +::Ifc4x3::IfcRepresentationMap Ifc4x3::IfcMappedItem::MappingSource() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3::IfcRepresentationMap>(); } void Ifc4x3::IfcMappedItem::setMappingSource(const ::Ifc4x3::IfcRepresentationMap& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } -::Ifc4x3::IfcCartesianTransformationOperator Ifc4x3::IfcMappedItem::MappingTarget() const { return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3::IfcCartesianTransformationOperator>(); } +::Ifc4x3::IfcCartesianTransformationOperator Ifc4x3::IfcMappedItem::MappingTarget() const { return ((express::base)(get_attribute_value(1))).as<::Ifc4x3::IfcCartesianTransformationOperator>(); } void Ifc4x3::IfcMappedItem::setMappingTarget(const ::Ifc4x3::IfcCartesianTransformationOperator& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } @@ -11894,21 +11894,21 @@ const ifcopenshell::entity& Ifc4x3::IfcMaterial::Class() { return *((ifcopenshel Ifc4x3::IfcMaterial Ifc4x3::IfcMaterial::initialize(std::string v1_Name, std::optional< std::string > v2_Description, std::optional< std::string > v3_Category) { set_attribute_value(0, (v1_Name)); if (v2_Description) {set_attribute_value(1, (*v2_Description)); } if (v3_Category) {set_attribute_value(2, (*v3_Category)); }; return *this; } // Function implementations for IfcMaterialClassificationRelationship -std::vector< ::Ifc4x3::IfcClassificationSelect > Ifc4x3::IfcMaterialClassificationRelationship::MaterialClassifications() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3::IfcClassificationSelect>(es); } -void Ifc4x3::IfcMaterialClassificationRelationship::setMaterialClassifications(const std::vector< ::Ifc4x3::IfcClassificationSelect >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } -::Ifc4x3::IfcMaterial Ifc4x3::IfcMaterialClassificationRelationship::ClassifiedMaterial() const { return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3::IfcMaterial>(); } +std::vector< ::Ifc4x3::IfcClassificationSelect > Ifc4x3::IfcMaterialClassificationRelationship::MaterialClassifications() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3::IfcClassificationSelect>(es); } +void Ifc4x3::IfcMaterialClassificationRelationship::setMaterialClassifications(const std::vector< ::Ifc4x3::IfcClassificationSelect >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } +::Ifc4x3::IfcMaterial Ifc4x3::IfcMaterialClassificationRelationship::ClassifiedMaterial() const { return ((express::base)(get_attribute_value(1))).as<::Ifc4x3::IfcMaterial>(); } void Ifc4x3::IfcMaterialClassificationRelationship::setClassifiedMaterial(const ::Ifc4x3::IfcMaterial& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } const ifcopenshell::entity& Ifc4x3::IfcMaterialClassificationRelationship::Class() { return *((ifcopenshell::entity*)IFC4X3_types[638]); } -Ifc4x3::IfcMaterialClassificationRelationship Ifc4x3::IfcMaterialClassificationRelationship::initialize(std::vector< ::Ifc4x3::IfcClassificationSelect > v1_MaterialClassifications, ::Ifc4x3::IfcMaterial v2_ClassifiedMaterial) { set_attribute_value(0, cast_vector(v1_MaterialClassifications));set_attribute_value(1, (v2_ClassifiedMaterial));; return *this; } +Ifc4x3::IfcMaterialClassificationRelationship Ifc4x3::IfcMaterialClassificationRelationship::initialize(std::vector< ::Ifc4x3::IfcClassificationSelect > v1_MaterialClassifications, ::Ifc4x3::IfcMaterial v2_ClassifiedMaterial) { set_attribute_value(0, cast_vector(v1_MaterialClassifications));set_attribute_value(1, (v2_ClassifiedMaterial));; return *this; } // Function implementations for IfcMaterialConstituent std::optional< std::string > Ifc4x3::IfcMaterialConstituent::Name() const { if(get_attribute_value(0).isNull()) { return std::nullopt; } std::string v = get_attribute_value(0); return v; } void Ifc4x3::IfcMaterialConstituent::setName(const std::optional< std::string >& v) { if (v) {set_attribute_value(0, *v);} else {unset_attribute_value(0);} } std::optional< std::string > Ifc4x3::IfcMaterialConstituent::Description() const { if(get_attribute_value(1).isNull()) { return std::nullopt; } std::string v = get_attribute_value(1); return v; } void Ifc4x3::IfcMaterialConstituent::setDescription(const std::optional< std::string >& v) { if (v) {set_attribute_value(1, *v);} else {unset_attribute_value(1);} } -::Ifc4x3::IfcMaterial Ifc4x3::IfcMaterialConstituent::Material() const { return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3::IfcMaterial>(); } +::Ifc4x3::IfcMaterial Ifc4x3::IfcMaterialConstituent::Material() const { return ((express::base)(get_attribute_value(2))).as<::Ifc4x3::IfcMaterial>(); } void Ifc4x3::IfcMaterialConstituent::setMaterial(const ::Ifc4x3::IfcMaterial& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } std::optional< double > Ifc4x3::IfcMaterialConstituent::Fraction() const { if(get_attribute_value(3).isNull()) { return std::nullopt; } double v = get_attribute_value(3); return v; } void Ifc4x3::IfcMaterialConstituent::setFraction(const std::optional< double >& v) { if (v) {set_attribute_value(3, *v);} else {unset_attribute_value(3);} } @@ -11925,12 +11925,12 @@ std::optional< std::string > Ifc4x3::IfcMaterialConstituentSet::Name() const { i void Ifc4x3::IfcMaterialConstituentSet::setName(const std::optional< std::string >& v) { if (v) {set_attribute_value(0, *v);} else {unset_attribute_value(0);} } std::optional< std::string > Ifc4x3::IfcMaterialConstituentSet::Description() const { if(get_attribute_value(1).isNull()) { return std::nullopt; } std::string v = get_attribute_value(1); return v; } void Ifc4x3::IfcMaterialConstituentSet::setDescription(const std::optional< std::string >& v) { if (v) {set_attribute_value(1, *v);} else {unset_attribute_value(1);} } -std::optional< std::vector< ::Ifc4x3::IfcMaterialConstituent > > Ifc4x3::IfcMaterialConstituentSet::MaterialConstituents() const { if(get_attribute_value(2).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(2); return cast_vector<::Ifc4x3::IfcMaterialConstituent>(es); } -void Ifc4x3::IfcMaterialConstituentSet::setMaterialConstituents(const std::optional< std::vector< ::Ifc4x3::IfcMaterialConstituent > >& v) { if (v) {set_attribute_value(2, cast_vector(*v));} else {unset_attribute_value(2);} } +std::optional< std::vector< ::Ifc4x3::IfcMaterialConstituent > > Ifc4x3::IfcMaterialConstituentSet::MaterialConstituents() const { if(get_attribute_value(2).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(2); return cast_vector<::Ifc4x3::IfcMaterialConstituent>(es); } +void Ifc4x3::IfcMaterialConstituentSet::setMaterialConstituents(const std::optional< std::vector< ::Ifc4x3::IfcMaterialConstituent > >& v) { if (v) {set_attribute_value(2, cast_vector(*v));} else {unset_attribute_value(2);} } const ifcopenshell::entity& Ifc4x3::IfcMaterialConstituentSet::Class() { return *((ifcopenshell::entity*)IFC4X3_types[640]); } -Ifc4x3::IfcMaterialConstituentSet Ifc4x3::IfcMaterialConstituentSet::initialize(std::optional< std::string > v1_Name, std::optional< std::string > v2_Description, std::optional< std::vector< ::Ifc4x3::IfcMaterialConstituent > > v3_MaterialConstituents) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); } if (v2_Description) {set_attribute_value(1, (*v2_Description)); } if (v3_MaterialConstituents) {set_attribute_value(2, cast_vector(*v3_MaterialConstituents)); }; return *this; } +Ifc4x3::IfcMaterialConstituentSet Ifc4x3::IfcMaterialConstituentSet::initialize(std::optional< std::string > v1_Name, std::optional< std::string > v2_Description, std::optional< std::vector< ::Ifc4x3::IfcMaterialConstituent > > v3_MaterialConstituents) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); } if (v2_Description) {set_attribute_value(1, (*v2_Description)); } if (v3_MaterialConstituents) {set_attribute_value(2, cast_vector(*v3_MaterialConstituents)); }; return *this; } // Function implementations for IfcMaterialDefinition @@ -11942,15 +11942,15 @@ const ifcopenshell::entity& Ifc4x3::IfcMaterialDefinition::Class() { return *((i Ifc4x3::IfcMaterialDefinition Ifc4x3::IfcMaterialDefinition::initialize() { ; return *this; } // Function implementations for IfcMaterialDefinitionRepresentation -::Ifc4x3::IfcMaterial Ifc4x3::IfcMaterialDefinitionRepresentation::RepresentedMaterial() const { return ((express::Base)(get_attribute_value(3))).as<::Ifc4x3::IfcMaterial>(); } +::Ifc4x3::IfcMaterial Ifc4x3::IfcMaterialDefinitionRepresentation::RepresentedMaterial() const { return ((express::base)(get_attribute_value(3))).as<::Ifc4x3::IfcMaterial>(); } void Ifc4x3::IfcMaterialDefinitionRepresentation::setRepresentedMaterial(const ::Ifc4x3::IfcMaterial& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } const ifcopenshell::entity& Ifc4x3::IfcMaterialDefinitionRepresentation::Class() { return *((ifcopenshell::entity*)IFC4X3_types[642]); } -Ifc4x3::IfcMaterialDefinitionRepresentation Ifc4x3::IfcMaterialDefinitionRepresentation::initialize(std::optional< std::string > v1_Name, std::optional< std::string > v2_Description, std::vector< ::Ifc4x3::IfcRepresentation > v3_Representations, ::Ifc4x3::IfcMaterial v4_RepresentedMaterial) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); } if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, cast_vector(v3_Representations));set_attribute_value(3, (v4_RepresentedMaterial));; return *this; } +Ifc4x3::IfcMaterialDefinitionRepresentation Ifc4x3::IfcMaterialDefinitionRepresentation::initialize(std::optional< std::string > v1_Name, std::optional< std::string > v2_Description, std::vector< ::Ifc4x3::IfcRepresentation > v3_Representations, ::Ifc4x3::IfcMaterial v4_RepresentedMaterial) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); } if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, cast_vector(v3_Representations));set_attribute_value(3, (v4_RepresentedMaterial));; return *this; } // Function implementations for IfcMaterialLayer -::Ifc4x3::IfcMaterial Ifc4x3::IfcMaterialLayer::Material() const { if(get_attribute_value(0).isNull()) { return ::Ifc4x3::IfcMaterial{}; } return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3::IfcMaterial>(); } +::Ifc4x3::IfcMaterial Ifc4x3::IfcMaterialLayer::Material() const { if(get_attribute_value(0).isNull()) { return ::Ifc4x3::IfcMaterial{}; } return ((express::base)(get_attribute_value(0))).as<::Ifc4x3::IfcMaterial>(); } void Ifc4x3::IfcMaterialLayer::setMaterial(const ::Ifc4x3::IfcMaterial& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } double Ifc4x3::IfcMaterialLayer::LayerThickness() const { double v = get_attribute_value(1); return v; } void Ifc4x3::IfcMaterialLayer::setLayerThickness(const double& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } @@ -11971,8 +11971,8 @@ const ifcopenshell::entity& Ifc4x3::IfcMaterialLayer::Class() { return *((ifcope Ifc4x3::IfcMaterialLayer Ifc4x3::IfcMaterialLayer::initialize(::Ifc4x3::IfcMaterial v1_Material, double v2_LayerThickness, std::optional< boost::logic::tribool > v3_IsVentilated, std::optional< std::string > v4_Name, std::optional< std::string > v5_Description, std::optional< std::string > v6_Category, std::optional< int64_t > v7_Priority) { set_attribute_value(0, (v1_Material));set_attribute_value(1, (v2_LayerThickness)); if (v3_IsVentilated) {set_attribute_value(2, (*v3_IsVentilated)); } if (v4_Name) {set_attribute_value(3, (*v4_Name)); } if (v5_Description) {set_attribute_value(4, (*v5_Description)); } if (v6_Category) {set_attribute_value(5, (*v6_Category)); } if (v7_Priority) {set_attribute_value(6, (*v7_Priority)); }; return *this; } // Function implementations for IfcMaterialLayerSet -std::vector< ::Ifc4x3::IfcMaterialLayer > Ifc4x3::IfcMaterialLayerSet::MaterialLayers() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3::IfcMaterialLayer>(es); } -void Ifc4x3::IfcMaterialLayerSet::setMaterialLayers(const std::vector< ::Ifc4x3::IfcMaterialLayer >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } +std::vector< ::Ifc4x3::IfcMaterialLayer > Ifc4x3::IfcMaterialLayerSet::MaterialLayers() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3::IfcMaterialLayer>(es); } +void Ifc4x3::IfcMaterialLayerSet::setMaterialLayers(const std::vector< ::Ifc4x3::IfcMaterialLayer >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } std::optional< std::string > Ifc4x3::IfcMaterialLayerSet::LayerSetName() const { if(get_attribute_value(1).isNull()) { return std::nullopt; } std::string v = get_attribute_value(1); return v; } void Ifc4x3::IfcMaterialLayerSet::setLayerSetName(const std::optional< std::string >& v) { if (v) {set_attribute_value(1, *v);} else {unset_attribute_value(1);} } std::optional< std::string > Ifc4x3::IfcMaterialLayerSet::Description() const { if(get_attribute_value(2).isNull()) { return std::nullopt; } std::string v = get_attribute_value(2); return v; } @@ -11980,10 +11980,10 @@ void Ifc4x3::IfcMaterialLayerSet::setDescription(const std::optional< std::strin const ifcopenshell::entity& Ifc4x3::IfcMaterialLayerSet::Class() { return *((ifcopenshell::entity*)IFC4X3_types[644]); } -Ifc4x3::IfcMaterialLayerSet Ifc4x3::IfcMaterialLayerSet::initialize(std::vector< ::Ifc4x3::IfcMaterialLayer > v1_MaterialLayers, std::optional< std::string > v2_LayerSetName, std::optional< std::string > v3_Description) { set_attribute_value(0, cast_vector(v1_MaterialLayers)); if (v2_LayerSetName) {set_attribute_value(1, (*v2_LayerSetName)); } if (v3_Description) {set_attribute_value(2, (*v3_Description)); }; return *this; } +Ifc4x3::IfcMaterialLayerSet Ifc4x3::IfcMaterialLayerSet::initialize(std::vector< ::Ifc4x3::IfcMaterialLayer > v1_MaterialLayers, std::optional< std::string > v2_LayerSetName, std::optional< std::string > v3_Description) { set_attribute_value(0, cast_vector(v1_MaterialLayers)); if (v2_LayerSetName) {set_attribute_value(1, (*v2_LayerSetName)); } if (v3_Description) {set_attribute_value(2, (*v3_Description)); }; return *this; } // Function implementations for IfcMaterialLayerSetUsage -::Ifc4x3::IfcMaterialLayerSet Ifc4x3::IfcMaterialLayerSetUsage::ForLayerSet() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3::IfcMaterialLayerSet>(); } +::Ifc4x3::IfcMaterialLayerSet Ifc4x3::IfcMaterialLayerSetUsage::ForLayerSet() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3::IfcMaterialLayerSet>(); } void Ifc4x3::IfcMaterialLayerSetUsage::setForLayerSet(const ::Ifc4x3::IfcMaterialLayerSet& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } ::Ifc4x3::IfcLayerSetDirectionEnum::Value Ifc4x3::IfcMaterialLayerSetUsage::LayerSetDirection() const { return ::Ifc4x3::IfcLayerSetDirectionEnum::FromString(get_attribute_value(1)); } void Ifc4x3::IfcMaterialLayerSetUsage::setLayerSetDirection(const ::Ifc4x3::IfcLayerSetDirectionEnum::Value& v) { set_attribute_value(1, enumeration_reference(&::Ifc4x3::IfcLayerSetDirectionEnum::Class(), (size_t) v));if constexpr (false)unset_attribute_value(1); } @@ -12009,21 +12009,21 @@ const ifcopenshell::entity& Ifc4x3::IfcMaterialLayerWithOffsets::Class() { retur Ifc4x3::IfcMaterialLayerWithOffsets Ifc4x3::IfcMaterialLayerWithOffsets::initialize(::Ifc4x3::IfcMaterial v1_Material, double v2_LayerThickness, std::optional< boost::logic::tribool > v3_IsVentilated, std::optional< std::string > v4_Name, std::optional< std::string > v5_Description, std::optional< std::string > v6_Category, std::optional< int64_t > v7_Priority, ::Ifc4x3::IfcLayerSetDirectionEnum::Value v8_OffsetDirection, std::vector< double > /*[1:2]*/ v9_OffsetValues) { set_attribute_value(0, (v1_Material));set_attribute_value(1, (v2_LayerThickness)); if (v3_IsVentilated) {set_attribute_value(2, (*v3_IsVentilated)); } if (v4_Name) {set_attribute_value(3, (*v4_Name)); } if (v5_Description) {set_attribute_value(4, (*v5_Description)); } if (v6_Category) {set_attribute_value(5, (*v6_Category)); } if (v7_Priority) {set_attribute_value(6, (*v7_Priority)); }set_attribute_value(7, (enumeration_reference(&::Ifc4x3::IfcLayerSetDirectionEnum::Class(),(size_t)v8_OffsetDirection)));set_attribute_value(8, (v9_OffsetValues));; return *this; } // Function implementations for IfcMaterialList -std::vector< ::Ifc4x3::IfcMaterial > Ifc4x3::IfcMaterialList::Materials() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3::IfcMaterial>(es); } -void Ifc4x3::IfcMaterialList::setMaterials(const std::vector< ::Ifc4x3::IfcMaterial >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } +std::vector< ::Ifc4x3::IfcMaterial > Ifc4x3::IfcMaterialList::Materials() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3::IfcMaterial>(es); } +void Ifc4x3::IfcMaterialList::setMaterials(const std::vector< ::Ifc4x3::IfcMaterial >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } const ifcopenshell::entity& Ifc4x3::IfcMaterialList::Class() { return *((ifcopenshell::entity*)IFC4X3_types[647]); } -Ifc4x3::IfcMaterialList Ifc4x3::IfcMaterialList::initialize(std::vector< ::Ifc4x3::IfcMaterial > v1_Materials) { set_attribute_value(0, cast_vector(v1_Materials));; return *this; } +Ifc4x3::IfcMaterialList Ifc4x3::IfcMaterialList::initialize(std::vector< ::Ifc4x3::IfcMaterial > v1_Materials) { set_attribute_value(0, cast_vector(v1_Materials));; return *this; } // Function implementations for IfcMaterialProfile std::optional< std::string > Ifc4x3::IfcMaterialProfile::Name() const { if(get_attribute_value(0).isNull()) { return std::nullopt; } std::string v = get_attribute_value(0); return v; } void Ifc4x3::IfcMaterialProfile::setName(const std::optional< std::string >& v) { if (v) {set_attribute_value(0, *v);} else {unset_attribute_value(0);} } std::optional< std::string > Ifc4x3::IfcMaterialProfile::Description() const { if(get_attribute_value(1).isNull()) { return std::nullopt; } std::string v = get_attribute_value(1); return v; } void Ifc4x3::IfcMaterialProfile::setDescription(const std::optional< std::string >& v) { if (v) {set_attribute_value(1, *v);} else {unset_attribute_value(1);} } -::Ifc4x3::IfcMaterial Ifc4x3::IfcMaterialProfile::Material() const { if(get_attribute_value(2).isNull()) { return ::Ifc4x3::IfcMaterial{}; } return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3::IfcMaterial>(); } +::Ifc4x3::IfcMaterial Ifc4x3::IfcMaterialProfile::Material() const { if(get_attribute_value(2).isNull()) { return ::Ifc4x3::IfcMaterial{}; } return ((express::base)(get_attribute_value(2))).as<::Ifc4x3::IfcMaterial>(); } void Ifc4x3::IfcMaterialProfile::setMaterial(const ::Ifc4x3::IfcMaterial& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } -::Ifc4x3::IfcProfileDef Ifc4x3::IfcMaterialProfile::Profile() const { return ((express::Base)(get_attribute_value(3))).as<::Ifc4x3::IfcProfileDef>(); } +::Ifc4x3::IfcProfileDef Ifc4x3::IfcMaterialProfile::Profile() const { return ((express::base)(get_attribute_value(3))).as<::Ifc4x3::IfcProfileDef>(); } void Ifc4x3::IfcMaterialProfile::setProfile(const ::Ifc4x3::IfcProfileDef& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } std::optional< int64_t > Ifc4x3::IfcMaterialProfile::Priority() const { if(get_attribute_value(4).isNull()) { return std::nullopt; } int64_t v = get_attribute_value(4); return v; } void Ifc4x3::IfcMaterialProfile::setPriority(const std::optional< int64_t >& v) { if (v) {set_attribute_value(4, *v);} else {unset_attribute_value(4);} } @@ -12040,17 +12040,17 @@ std::optional< std::string > Ifc4x3::IfcMaterialProfileSet::Name() const { if(ge void Ifc4x3::IfcMaterialProfileSet::setName(const std::optional< std::string >& v) { if (v) {set_attribute_value(0, *v);} else {unset_attribute_value(0);} } std::optional< std::string > Ifc4x3::IfcMaterialProfileSet::Description() const { if(get_attribute_value(1).isNull()) { return std::nullopt; } std::string v = get_attribute_value(1); return v; } void Ifc4x3::IfcMaterialProfileSet::setDescription(const std::optional< std::string >& v) { if (v) {set_attribute_value(1, *v);} else {unset_attribute_value(1);} } -std::vector< ::Ifc4x3::IfcMaterialProfile > Ifc4x3::IfcMaterialProfileSet::MaterialProfiles() const { std::vector es = get_attribute_value(2); return cast_vector<::Ifc4x3::IfcMaterialProfile>(es); } -void Ifc4x3::IfcMaterialProfileSet::setMaterialProfiles(const std::vector< ::Ifc4x3::IfcMaterialProfile >& v) { set_attribute_value(2, cast_vector(v));if constexpr (false)unset_attribute_value(2); } -::Ifc4x3::IfcCompositeProfileDef Ifc4x3::IfcMaterialProfileSet::CompositeProfile() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3::IfcCompositeProfileDef{}; } return ((express::Base)(get_attribute_value(3))).as<::Ifc4x3::IfcCompositeProfileDef>(); } +std::vector< ::Ifc4x3::IfcMaterialProfile > Ifc4x3::IfcMaterialProfileSet::MaterialProfiles() const { std::vector es = get_attribute_value(2); return cast_vector<::Ifc4x3::IfcMaterialProfile>(es); } +void Ifc4x3::IfcMaterialProfileSet::setMaterialProfiles(const std::vector< ::Ifc4x3::IfcMaterialProfile >& v) { set_attribute_value(2, cast_vector(v));if constexpr (false)unset_attribute_value(2); } +::Ifc4x3::IfcCompositeProfileDef Ifc4x3::IfcMaterialProfileSet::CompositeProfile() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3::IfcCompositeProfileDef{}; } return ((express::base)(get_attribute_value(3))).as<::Ifc4x3::IfcCompositeProfileDef>(); } void Ifc4x3::IfcMaterialProfileSet::setCompositeProfile(const ::Ifc4x3::IfcCompositeProfileDef& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } const ifcopenshell::entity& Ifc4x3::IfcMaterialProfileSet::Class() { return *((ifcopenshell::entity*)IFC4X3_types[649]); } -Ifc4x3::IfcMaterialProfileSet Ifc4x3::IfcMaterialProfileSet::initialize(std::optional< std::string > v1_Name, std::optional< std::string > v2_Description, std::vector< ::Ifc4x3::IfcMaterialProfile > v3_MaterialProfiles, ::Ifc4x3::IfcCompositeProfileDef v4_CompositeProfile) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); } if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, cast_vector(v3_MaterialProfiles));set_attribute_value(3, (v4_CompositeProfile));; return *this; } +Ifc4x3::IfcMaterialProfileSet Ifc4x3::IfcMaterialProfileSet::initialize(std::optional< std::string > v1_Name, std::optional< std::string > v2_Description, std::vector< ::Ifc4x3::IfcMaterialProfile > v3_MaterialProfiles, ::Ifc4x3::IfcCompositeProfileDef v4_CompositeProfile) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); } if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, cast_vector(v3_MaterialProfiles));set_attribute_value(3, (v4_CompositeProfile));; return *this; } // Function implementations for IfcMaterialProfileSetUsage -::Ifc4x3::IfcMaterialProfileSet Ifc4x3::IfcMaterialProfileSetUsage::ForProfileSet() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3::IfcMaterialProfileSet>(); } +::Ifc4x3::IfcMaterialProfileSet Ifc4x3::IfcMaterialProfileSetUsage::ForProfileSet() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3::IfcMaterialProfileSet>(); } void Ifc4x3::IfcMaterialProfileSetUsage::setForProfileSet(const ::Ifc4x3::IfcMaterialProfileSet& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } std::optional< int64_t > Ifc4x3::IfcMaterialProfileSetUsage::CardinalPoint() const { if(get_attribute_value(1).isNull()) { return std::nullopt; } int64_t v = get_attribute_value(1); return v; } void Ifc4x3::IfcMaterialProfileSetUsage::setCardinalPoint(const std::optional< int64_t >& v) { if (v) {set_attribute_value(1, *v);} else {unset_attribute_value(1);} } @@ -12062,7 +12062,7 @@ const ifcopenshell::entity& Ifc4x3::IfcMaterialProfileSetUsage::Class() { return Ifc4x3::IfcMaterialProfileSetUsage Ifc4x3::IfcMaterialProfileSetUsage::initialize(::Ifc4x3::IfcMaterialProfileSet v1_ForProfileSet, std::optional< int64_t > v2_CardinalPoint, std::optional< double > v3_ReferenceExtent) { set_attribute_value(0, (v1_ForProfileSet)); if (v2_CardinalPoint) {set_attribute_value(1, (*v2_CardinalPoint)); } if (v3_ReferenceExtent) {set_attribute_value(2, (*v3_ReferenceExtent)); }; return *this; } // Function implementations for IfcMaterialProfileSetUsageTapering -::Ifc4x3::IfcMaterialProfileSet Ifc4x3::IfcMaterialProfileSetUsageTapering::ForProfileEndSet() const { return ((express::Base)(get_attribute_value(3))).as<::Ifc4x3::IfcMaterialProfileSet>(); } +::Ifc4x3::IfcMaterialProfileSet Ifc4x3::IfcMaterialProfileSetUsageTapering::ForProfileEndSet() const { return ((express::base)(get_attribute_value(3))).as<::Ifc4x3::IfcMaterialProfileSet>(); } void Ifc4x3::IfcMaterialProfileSetUsageTapering::setForProfileEndSet(const ::Ifc4x3::IfcMaterialProfileSet& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } std::optional< int64_t > Ifc4x3::IfcMaterialProfileSetUsageTapering::CardinalEndPoint() const { if(get_attribute_value(4).isNull()) { return std::nullopt; } int64_t v = get_attribute_value(4); return v; } void Ifc4x3::IfcMaterialProfileSetUsageTapering::setCardinalEndPoint(const std::optional< int64_t >& v) { if (v) {set_attribute_value(4, *v);} else {unset_attribute_value(4);} } @@ -12080,24 +12080,24 @@ const ifcopenshell::entity& Ifc4x3::IfcMaterialProfileWithOffsets::Class() { ret Ifc4x3::IfcMaterialProfileWithOffsets Ifc4x3::IfcMaterialProfileWithOffsets::initialize(std::optional< std::string > v1_Name, std::optional< std::string > v2_Description, ::Ifc4x3::IfcMaterial v3_Material, ::Ifc4x3::IfcProfileDef v4_Profile, std::optional< int64_t > v5_Priority, std::optional< std::string > v6_Category, std::vector< double > /*[1:2]*/ v7_OffsetValues) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); } if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, (v3_Material));set_attribute_value(3, (v4_Profile)); if (v5_Priority) {set_attribute_value(4, (*v5_Priority)); } if (v6_Category) {set_attribute_value(5, (*v6_Category)); }set_attribute_value(6, (v7_OffsetValues));; return *this; } // Function implementations for IfcMaterialProperties -::Ifc4x3::IfcMaterialDefinition Ifc4x3::IfcMaterialProperties::Material() const { return ((express::Base)(get_attribute_value(3))).as<::Ifc4x3::IfcMaterialDefinition>(); } +::Ifc4x3::IfcMaterialDefinition Ifc4x3::IfcMaterialProperties::Material() const { return ((express::base)(get_attribute_value(3))).as<::Ifc4x3::IfcMaterialDefinition>(); } void Ifc4x3::IfcMaterialProperties::setMaterial(const ::Ifc4x3::IfcMaterialDefinition& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } const ifcopenshell::entity& Ifc4x3::IfcMaterialProperties::Class() { return *((ifcopenshell::entity*)IFC4X3_types[653]); } -Ifc4x3::IfcMaterialProperties Ifc4x3::IfcMaterialProperties::initialize(std::optional< std::string > v1_Name, std::optional< std::string > v2_Description, std::vector< ::Ifc4x3::IfcProperty > v3_Properties, ::Ifc4x3::IfcMaterialDefinition v4_Material) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); } if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, cast_vector(v3_Properties));set_attribute_value(3, (v4_Material));; return *this; } +Ifc4x3::IfcMaterialProperties Ifc4x3::IfcMaterialProperties::initialize(std::optional< std::string > v1_Name, std::optional< std::string > v2_Description, std::vector< ::Ifc4x3::IfcProperty > v3_Properties, ::Ifc4x3::IfcMaterialDefinition v4_Material) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); } if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, cast_vector(v3_Properties));set_attribute_value(3, (v4_Material));; return *this; } // Function implementations for IfcMaterialRelationship -::Ifc4x3::IfcMaterial Ifc4x3::IfcMaterialRelationship::RelatingMaterial() const { return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3::IfcMaterial>(); } +::Ifc4x3::IfcMaterial Ifc4x3::IfcMaterialRelationship::RelatingMaterial() const { return ((express::base)(get_attribute_value(2))).as<::Ifc4x3::IfcMaterial>(); } void Ifc4x3::IfcMaterialRelationship::setRelatingMaterial(const ::Ifc4x3::IfcMaterial& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } -std::vector< ::Ifc4x3::IfcMaterial > Ifc4x3::IfcMaterialRelationship::RelatedMaterials() const { std::vector es = get_attribute_value(3); return cast_vector<::Ifc4x3::IfcMaterial>(es); } -void Ifc4x3::IfcMaterialRelationship::setRelatedMaterials(const std::vector< ::Ifc4x3::IfcMaterial >& v) { set_attribute_value(3, cast_vector(v));if constexpr (false)unset_attribute_value(3); } +std::vector< ::Ifc4x3::IfcMaterial > Ifc4x3::IfcMaterialRelationship::RelatedMaterials() const { std::vector es = get_attribute_value(3); return cast_vector<::Ifc4x3::IfcMaterial>(es); } +void Ifc4x3::IfcMaterialRelationship::setRelatedMaterials(const std::vector< ::Ifc4x3::IfcMaterial >& v) { set_attribute_value(3, cast_vector(v));if constexpr (false)unset_attribute_value(3); } std::optional< std::string > Ifc4x3::IfcMaterialRelationship::MaterialExpression() const { if(get_attribute_value(4).isNull()) { return std::nullopt; } std::string v = get_attribute_value(4); return v; } void Ifc4x3::IfcMaterialRelationship::setMaterialExpression(const std::optional< std::string >& v) { if (v) {set_attribute_value(4, *v);} else {unset_attribute_value(4);} } const ifcopenshell::entity& Ifc4x3::IfcMaterialRelationship::Class() { return *((ifcopenshell::entity*)IFC4X3_types[654]); } -Ifc4x3::IfcMaterialRelationship Ifc4x3::IfcMaterialRelationship::initialize(std::optional< std::string > v1_Name, std::optional< std::string > v2_Description, ::Ifc4x3::IfcMaterial v3_RelatingMaterial, std::vector< ::Ifc4x3::IfcMaterial > v4_RelatedMaterials, std::optional< std::string > v5_MaterialExpression) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); } if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, (v3_RelatingMaterial));set_attribute_value(3, cast_vector(v4_RelatedMaterials)); if (v5_MaterialExpression) {set_attribute_value(4, (*v5_MaterialExpression)); }; return *this; } +Ifc4x3::IfcMaterialRelationship Ifc4x3::IfcMaterialRelationship::initialize(std::optional< std::string > v1_Name, std::optional< std::string > v2_Description, ::Ifc4x3::IfcMaterial v3_RelatingMaterial, std::vector< ::Ifc4x3::IfcMaterial > v4_RelatedMaterials, std::optional< std::string > v5_MaterialExpression) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); } if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, (v3_RelatingMaterial));set_attribute_value(3, cast_vector(v4_RelatedMaterials)); if (v5_MaterialExpression) {set_attribute_value(4, (*v5_MaterialExpression)); }; return *this; } // Function implementations for IfcMaterialUsageDefinition @@ -12107,9 +12107,9 @@ const ifcopenshell::entity& Ifc4x3::IfcMaterialUsageDefinition::Class() { return Ifc4x3::IfcMaterialUsageDefinition Ifc4x3::IfcMaterialUsageDefinition::initialize() { ; return *this; } // Function implementations for IfcMeasureWithUnit -::Ifc4x3::IfcValue Ifc4x3::IfcMeasureWithUnit::ValueComponent() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3::IfcValue>(); } +::Ifc4x3::IfcValue Ifc4x3::IfcMeasureWithUnit::ValueComponent() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3::IfcValue>(); } void Ifc4x3::IfcMeasureWithUnit::setValueComponent(const ::Ifc4x3::IfcValue& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } -::Ifc4x3::IfcUnit Ifc4x3::IfcMeasureWithUnit::UnitComponent() const { return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3::IfcUnit>(); } +::Ifc4x3::IfcUnit Ifc4x3::IfcMeasureWithUnit::UnitComponent() const { return ((express::base)(get_attribute_value(1))).as<::Ifc4x3::IfcUnit>(); } void Ifc4x3::IfcMeasureWithUnit::setUnitComponent(const ::Ifc4x3::IfcUnit& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } @@ -12138,7 +12138,7 @@ void Ifc4x3::IfcMechanicalFastenerType::setNominalLength(const std::optional< do const ifcopenshell::entity& Ifc4x3::IfcMechanicalFastenerType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[660]); } -Ifc4x3::IfcMechanicalFastenerType Ifc4x3::IfcMechanicalFastenerType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcMechanicalFastenerTypeEnum::Value v10_PredefinedType, std::optional< double > v11_NominalDiameter, std::optional< double > v12_NominalLength) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcMechanicalFastenerTypeEnum::Class(),(size_t)v10_PredefinedType))); if (v11_NominalDiameter) {set_attribute_value(10, (*v11_NominalDiameter)); } if (v12_NominalLength) {set_attribute_value(11, (*v12_NominalLength)); }; return *this; } +Ifc4x3::IfcMechanicalFastenerType Ifc4x3::IfcMechanicalFastenerType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcMechanicalFastenerTypeEnum::Value v10_PredefinedType, std::optional< double > v11_NominalDiameter, std::optional< double > v12_NominalLength) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcMechanicalFastenerTypeEnum::Class(),(size_t)v10_PredefinedType))); if (v11_NominalDiameter) {set_attribute_value(10, (*v11_NominalDiameter)); } if (v12_NominalLength) {set_attribute_value(11, (*v12_NominalLength)); }; return *this; } // Function implementations for IfcMedicalDevice std::optional< ::Ifc4x3::IfcMedicalDeviceTypeEnum::Value > Ifc4x3::IfcMedicalDevice::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3::IfcMedicalDeviceTypeEnum::FromString(get_attribute_value(8)); } @@ -12154,7 +12154,7 @@ void Ifc4x3::IfcMedicalDeviceType::setPredefinedType(const ::Ifc4x3::IfcMedicalD const ifcopenshell::entity& Ifc4x3::IfcMedicalDeviceType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[663]); } -Ifc4x3::IfcMedicalDeviceType Ifc4x3::IfcMedicalDeviceType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcMedicalDeviceTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcMedicalDeviceTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3::IfcMedicalDeviceType Ifc4x3::IfcMedicalDeviceType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcMedicalDeviceTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcMedicalDeviceTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcMember std::optional< ::Ifc4x3::IfcMemberTypeEnum::Value > Ifc4x3::IfcMember::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3::IfcMemberTypeEnum::FromString(get_attribute_value(8)); } @@ -12170,16 +12170,16 @@ void Ifc4x3::IfcMemberType::setPredefinedType(const ::Ifc4x3::IfcMemberTypeEnum: const ifcopenshell::entity& Ifc4x3::IfcMemberType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[666]); } -Ifc4x3::IfcMemberType Ifc4x3::IfcMemberType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcMemberTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcMemberTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3::IfcMemberType Ifc4x3::IfcMemberType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcMemberTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcMemberTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcMetric ::Ifc4x3::IfcBenchmarkEnum::Value Ifc4x3::IfcMetric::Benchmark() const { return ::Ifc4x3::IfcBenchmarkEnum::FromString(get_attribute_value(7)); } void Ifc4x3::IfcMetric::setBenchmark(const ::Ifc4x3::IfcBenchmarkEnum::Value& v) { set_attribute_value(7, enumeration_reference(&::Ifc4x3::IfcBenchmarkEnum::Class(), (size_t) v));if constexpr (false)unset_attribute_value(7); } std::optional< std::string > Ifc4x3::IfcMetric::ValueSource() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } std::string v = get_attribute_value(8); return v; } void Ifc4x3::IfcMetric::setValueSource(const std::optional< std::string >& v) { if (v) {set_attribute_value(8, *v);} else {unset_attribute_value(8);} } -::Ifc4x3::IfcMetricValueSelect Ifc4x3::IfcMetric::DataValue() const { if(get_attribute_value(9).isNull()) { return ::Ifc4x3::IfcMetricValueSelect{}; } return ((express::Base)(get_attribute_value(9))).as<::Ifc4x3::IfcMetricValueSelect>(); } +::Ifc4x3::IfcMetricValueSelect Ifc4x3::IfcMetric::DataValue() const { if(get_attribute_value(9).isNull()) { return ::Ifc4x3::IfcMetricValueSelect{}; } return ((express::base)(get_attribute_value(9))).as<::Ifc4x3::IfcMetricValueSelect>(); } void Ifc4x3::IfcMetric::setDataValue(const ::Ifc4x3::IfcMetricValueSelect& v) { set_attribute_value(9, v);if constexpr (false)unset_attribute_value(9); } -::Ifc4x3::IfcReference Ifc4x3::IfcMetric::ReferencePath() const { if(get_attribute_value(10).isNull()) { return ::Ifc4x3::IfcReference{}; } return ((express::Base)(get_attribute_value(10))).as<::Ifc4x3::IfcReference>(); } +::Ifc4x3::IfcReference Ifc4x3::IfcMetric::ReferencePath() const { if(get_attribute_value(10).isNull()) { return ::Ifc4x3::IfcReference{}; } return ((express::base)(get_attribute_value(10))).as<::Ifc4x3::IfcReference>(); } void Ifc4x3::IfcMetric::setReferencePath(const ::Ifc4x3::IfcReference& v) { set_attribute_value(10, v);if constexpr (false)unset_attribute_value(10); } @@ -12206,7 +12206,7 @@ void Ifc4x3::IfcMobileTelecommunicationsApplianceType::setPredefinedType(const : const ifcopenshell::entity& Ifc4x3::IfcMobileTelecommunicationsApplianceType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[672]); } -Ifc4x3::IfcMobileTelecommunicationsApplianceType Ifc4x3::IfcMobileTelecommunicationsApplianceType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcMobileTelecommunicationsApplianceTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcMobileTelecommunicationsApplianceTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3::IfcMobileTelecommunicationsApplianceType Ifc4x3::IfcMobileTelecommunicationsApplianceType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcMobileTelecommunicationsApplianceTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcMobileTelecommunicationsApplianceTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcMonetaryUnit std::string Ifc4x3::IfcMonetaryUnit::Currency() const { std::string v = get_attribute_value(0); return v; } @@ -12230,7 +12230,7 @@ void Ifc4x3::IfcMooringDeviceType::setPredefinedType(const ::Ifc4x3::IfcMooringD const ifcopenshell::entity& Ifc4x3::IfcMooringDeviceType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[688]); } -Ifc4x3::IfcMooringDeviceType Ifc4x3::IfcMooringDeviceType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcMooringDeviceTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcMooringDeviceTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3::IfcMooringDeviceType Ifc4x3::IfcMooringDeviceType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcMooringDeviceTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcMooringDeviceTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcMotorConnection std::optional< ::Ifc4x3::IfcMotorConnectionTypeEnum::Value > Ifc4x3::IfcMotorConnection::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3::IfcMotorConnectionTypeEnum::FromString(get_attribute_value(8)); } @@ -12246,10 +12246,10 @@ void Ifc4x3::IfcMotorConnectionType::setPredefinedType(const ::Ifc4x3::IfcMotorC const ifcopenshell::entity& Ifc4x3::IfcMotorConnectionType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[691]); } -Ifc4x3::IfcMotorConnectionType Ifc4x3::IfcMotorConnectionType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcMotorConnectionTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcMotorConnectionTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3::IfcMotorConnectionType Ifc4x3::IfcMotorConnectionType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcMotorConnectionTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcMotorConnectionTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcNamedUnit -::Ifc4x3::IfcDimensionalExponents Ifc4x3::IfcNamedUnit::Dimensions() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3::IfcDimensionalExponents>(); } +::Ifc4x3::IfcDimensionalExponents Ifc4x3::IfcNamedUnit::Dimensions() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3::IfcDimensionalExponents>(); } void Ifc4x3::IfcNamedUnit::setDimensions(const ::Ifc4x3::IfcDimensionalExponents& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } ::Ifc4x3::IfcUnitEnum::Value Ifc4x3::IfcNamedUnit::UnitType() const { return ::Ifc4x3::IfcUnitEnum::FromString(get_attribute_value(1)); } void Ifc4x3::IfcNamedUnit::setUnitType(const ::Ifc4x3::IfcUnitEnum::Value& v) { set_attribute_value(1, enumeration_reference(&::Ifc4x3::IfcUnitEnum::Class(), (size_t) v));if constexpr (false)unset_attribute_value(1); } @@ -12272,7 +12272,7 @@ void Ifc4x3::IfcNavigationElementType::setPredefinedType(const ::Ifc4x3::IfcNavi const ifcopenshell::entity& Ifc4x3::IfcNavigationElementType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[695]); } -Ifc4x3::IfcNavigationElementType Ifc4x3::IfcNavigationElementType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcNavigationElementTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcNavigationElementTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3::IfcNavigationElementType Ifc4x3::IfcNavigationElementType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcNavigationElementTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcNavigationElementTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcObject std::optional< std::string > Ifc4x3::IfcObject::ObjectType() const { if(get_attribute_value(4).isNull()) { return std::nullopt; } std::string v = get_attribute_value(4); return v; } @@ -12300,7 +12300,7 @@ const ifcopenshell::entity& Ifc4x3::IfcObjectDefinition::Class() { return *((ifc Ifc4x3::IfcObjectDefinition Ifc4x3::IfcObjectDefinition::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }; return *this; } // Function implementations for IfcObjectPlacement -::Ifc4x3::IfcObjectPlacement Ifc4x3::IfcObjectPlacement::PlacementRelTo() const { if(get_attribute_value(0).isNull()) { return ::Ifc4x3::IfcObjectPlacement{}; } return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3::IfcObjectPlacement>(); } +::Ifc4x3::IfcObjectPlacement Ifc4x3::IfcObjectPlacement::PlacementRelTo() const { if(get_attribute_value(0).isNull()) { return ::Ifc4x3::IfcObjectPlacement{}; } return ((express::base)(get_attribute_value(0))).as<::Ifc4x3::IfcObjectPlacement>(); } void Ifc4x3::IfcObjectPlacement::setPlacementRelTo(const ::Ifc4x3::IfcObjectPlacement& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } std::vector<::Ifc4x3::IfcProduct> Ifc4x3::IfcObjectPlacement::PlacesObject() const { return cast_vector(file()->get_inverse(data()->id(), IFC4X3_types[801], 5)); } @@ -12310,8 +12310,8 @@ const ifcopenshell::entity& Ifc4x3::IfcObjectPlacement::Class() { return *((ifco Ifc4x3::IfcObjectPlacement Ifc4x3::IfcObjectPlacement::initialize(::Ifc4x3::IfcObjectPlacement v1_PlacementRelTo) { set_attribute_value(0, (v1_PlacementRelTo));; return *this; } // Function implementations for IfcObjective -std::optional< std::vector< ::Ifc4x3::IfcConstraint > > Ifc4x3::IfcObjective::BenchmarkValues() const { if(get_attribute_value(7).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(7); return cast_vector<::Ifc4x3::IfcConstraint>(es); } -void Ifc4x3::IfcObjective::setBenchmarkValues(const std::optional< std::vector< ::Ifc4x3::IfcConstraint > >& v) { if (v) {set_attribute_value(7, cast_vector(*v));} else {unset_attribute_value(7);} } +std::optional< std::vector< ::Ifc4x3::IfcConstraint > > Ifc4x3::IfcObjective::BenchmarkValues() const { if(get_attribute_value(7).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(7); return cast_vector<::Ifc4x3::IfcConstraint>(es); } +void Ifc4x3::IfcObjective::setBenchmarkValues(const std::optional< std::vector< ::Ifc4x3::IfcConstraint > >& v) { if (v) {set_attribute_value(7, cast_vector(*v));} else {unset_attribute_value(7);} } std::optional< ::Ifc4x3::IfcLogicalOperatorEnum::Value > Ifc4x3::IfcObjective::LogicalAggregator() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3::IfcLogicalOperatorEnum::FromString(get_attribute_value(8)); } void Ifc4x3::IfcObjective::setLogicalAggregator(const std::optional< ::Ifc4x3::IfcLogicalOperatorEnum::Value >& v) { if (v) {set_attribute_value(8, enumeration_reference(&::Ifc4x3::IfcLogicalOperatorEnum::Class(), (size_t) *v));} else {unset_attribute_value(8);} } ::Ifc4x3::IfcObjectiveEnum::Value Ifc4x3::IfcObjective::ObjectiveQualifier() const { return ::Ifc4x3::IfcObjectiveEnum::FromString(get_attribute_value(9)); } @@ -12321,7 +12321,7 @@ void Ifc4x3::IfcObjective::setUserDefinedQualifier(const std::optional< std::str const ifcopenshell::entity& Ifc4x3::IfcObjective::Class() { return *((ifcopenshell::entity*)IFC4X3_types[702]); } -Ifc4x3::IfcObjective Ifc4x3::IfcObjective::initialize(std::string v1_Name, std::optional< std::string > v2_Description, ::Ifc4x3::IfcConstraintEnum::Value v3_ConstraintGrade, std::optional< std::string > v4_ConstraintSource, ::Ifc4x3::IfcActorSelect v5_CreatingActor, std::optional< std::string > v6_CreationTime, std::optional< std::string > v7_UserDefinedGrade, std::optional< std::vector< ::Ifc4x3::IfcConstraint > > v8_BenchmarkValues, std::optional< ::Ifc4x3::IfcLogicalOperatorEnum::Value > v9_LogicalAggregator, ::Ifc4x3::IfcObjectiveEnum::Value v10_ObjectiveQualifier, std::optional< std::string > v11_UserDefinedQualifier) { set_attribute_value(0, (v1_Name)); if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, (enumeration_reference(&::Ifc4x3::IfcConstraintEnum::Class(),(size_t)v3_ConstraintGrade))); if (v4_ConstraintSource) {set_attribute_value(3, (*v4_ConstraintSource)); }set_attribute_value(4, (v5_CreatingActor)); if (v6_CreationTime) {set_attribute_value(5, (*v6_CreationTime)); } if (v7_UserDefinedGrade) {set_attribute_value(6, (*v7_UserDefinedGrade)); } if (v8_BenchmarkValues) {set_attribute_value(7, cast_vector(*v8_BenchmarkValues)); } if (v9_LogicalAggregator) {set_attribute_value(8, (enumeration_reference(&::Ifc4x3::IfcLogicalOperatorEnum::Class(),(size_t)*v9_LogicalAggregator))); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcObjectiveEnum::Class(),(size_t)v10_ObjectiveQualifier))); if (v11_UserDefinedQualifier) {set_attribute_value(10, (*v11_UserDefinedQualifier)); }; return *this; } +Ifc4x3::IfcObjective Ifc4x3::IfcObjective::initialize(std::string v1_Name, std::optional< std::string > v2_Description, ::Ifc4x3::IfcConstraintEnum::Value v3_ConstraintGrade, std::optional< std::string > v4_ConstraintSource, ::Ifc4x3::IfcActorSelect v5_CreatingActor, std::optional< std::string > v6_CreationTime, std::optional< std::string > v7_UserDefinedGrade, std::optional< std::vector< ::Ifc4x3::IfcConstraint > > v8_BenchmarkValues, std::optional< ::Ifc4x3::IfcLogicalOperatorEnum::Value > v9_LogicalAggregator, ::Ifc4x3::IfcObjectiveEnum::Value v10_ObjectiveQualifier, std::optional< std::string > v11_UserDefinedQualifier) { set_attribute_value(0, (v1_Name)); if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, (enumeration_reference(&::Ifc4x3::IfcConstraintEnum::Class(),(size_t)v3_ConstraintGrade))); if (v4_ConstraintSource) {set_attribute_value(3, (*v4_ConstraintSource)); }set_attribute_value(4, (v5_CreatingActor)); if (v6_CreationTime) {set_attribute_value(5, (*v6_CreationTime)); } if (v7_UserDefinedGrade) {set_attribute_value(6, (*v7_UserDefinedGrade)); } if (v8_BenchmarkValues) {set_attribute_value(7, cast_vector(*v8_BenchmarkValues)); } if (v9_LogicalAggregator) {set_attribute_value(8, (enumeration_reference(&::Ifc4x3::IfcLogicalOperatorEnum::Class(),(size_t)*v9_LogicalAggregator))); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcObjectiveEnum::Class(),(size_t)v10_ObjectiveQualifier))); if (v11_UserDefinedQualifier) {set_attribute_value(10, (*v11_UserDefinedQualifier)); }; return *this; } // Function implementations for IfcOccupant std::optional< ::Ifc4x3::IfcOccupantTypeEnum::Value > Ifc4x3::IfcOccupant::PredefinedType() const { if(get_attribute_value(6).isNull()) { return std::nullopt; } return ::Ifc4x3::IfcOccupantTypeEnum::FromString(get_attribute_value(6)); } @@ -12332,7 +12332,7 @@ const ifcopenshell::entity& Ifc4x3::IfcOccupant::Class() { return *((ifcopenshel Ifc4x3::IfcOccupant Ifc4x3::IfcOccupant::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, ::Ifc4x3::IfcActorSelect v6_TheActor, std::optional< ::Ifc4x3::IfcOccupantTypeEnum::Value > v7_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); }set_attribute_value(5, (v6_TheActor)); if (v7_PredefinedType) {set_attribute_value(6, (enumeration_reference(&::Ifc4x3::IfcOccupantTypeEnum::Class(),(size_t)*v7_PredefinedType))); }; return *this; } // Function implementations for IfcOffsetCurve -::Ifc4x3::IfcCurve Ifc4x3::IfcOffsetCurve::BasisCurve() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3::IfcCurve>(); } +::Ifc4x3::IfcCurve Ifc4x3::IfcOffsetCurve::BasisCurve() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3::IfcCurve>(); } void Ifc4x3::IfcOffsetCurve::setBasisCurve(const ::Ifc4x3::IfcCurve& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } @@ -12354,7 +12354,7 @@ double Ifc4x3::IfcOffsetCurve3D::Distance() const { double v = get_attribute_va void Ifc4x3::IfcOffsetCurve3D::setDistance(const double& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } boost::logic::tribool Ifc4x3::IfcOffsetCurve3D::SelfIntersect() const { boost::logic::tribool v = get_attribute_value(2); return v; } void Ifc4x3::IfcOffsetCurve3D::setSelfIntersect(const boost::logic::tribool& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } -::Ifc4x3::IfcDirection Ifc4x3::IfcOffsetCurve3D::RefDirection() const { return ((express::Base)(get_attribute_value(3))).as<::Ifc4x3::IfcDirection>(); } +::Ifc4x3::IfcDirection Ifc4x3::IfcOffsetCurve3D::RefDirection() const { return ((express::base)(get_attribute_value(3))).as<::Ifc4x3::IfcDirection>(); } void Ifc4x3::IfcOffsetCurve3D::setRefDirection(const ::Ifc4x3::IfcDirection& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } @@ -12362,14 +12362,14 @@ const ifcopenshell::entity& Ifc4x3::IfcOffsetCurve3D::Class() { return *((ifcope Ifc4x3::IfcOffsetCurve3D Ifc4x3::IfcOffsetCurve3D::initialize(::Ifc4x3::IfcCurve v1_BasisCurve, double v2_Distance, boost::logic::tribool v3_SelfIntersect, ::Ifc4x3::IfcDirection v4_RefDirection) { set_attribute_value(0, (v1_BasisCurve));set_attribute_value(1, (v2_Distance));set_attribute_value(2, (v3_SelfIntersect));set_attribute_value(3, (v4_RefDirection));; return *this; } // Function implementations for IfcOffsetCurveByDistances -std::vector< ::Ifc4x3::IfcPointByDistanceExpression > Ifc4x3::IfcOffsetCurveByDistances::OffsetValues() const { std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3::IfcPointByDistanceExpression>(es); } -void Ifc4x3::IfcOffsetCurveByDistances::setOffsetValues(const std::vector< ::Ifc4x3::IfcPointByDistanceExpression >& v) { set_attribute_value(1, cast_vector(v));if constexpr (false)unset_attribute_value(1); } +std::vector< ::Ifc4x3::IfcPointByDistanceExpression > Ifc4x3::IfcOffsetCurveByDistances::OffsetValues() const { std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3::IfcPointByDistanceExpression>(es); } +void Ifc4x3::IfcOffsetCurveByDistances::setOffsetValues(const std::vector< ::Ifc4x3::IfcPointByDistanceExpression >& v) { set_attribute_value(1, cast_vector(v));if constexpr (false)unset_attribute_value(1); } std::optional< std::string > Ifc4x3::IfcOffsetCurveByDistances::Tag() const { if(get_attribute_value(2).isNull()) { return std::nullopt; } std::string v = get_attribute_value(2); return v; } void Ifc4x3::IfcOffsetCurveByDistances::setTag(const std::optional< std::string >& v) { if (v) {set_attribute_value(2, *v);} else {unset_attribute_value(2);} } const ifcopenshell::entity& Ifc4x3::IfcOffsetCurveByDistances::Class() { return *((ifcopenshell::entity*)IFC4X3_types[712]); } -Ifc4x3::IfcOffsetCurveByDistances Ifc4x3::IfcOffsetCurveByDistances::initialize(::Ifc4x3::IfcCurve v1_BasisCurve, std::vector< ::Ifc4x3::IfcPointByDistanceExpression > v2_OffsetValues, std::optional< std::string > v3_Tag) { set_attribute_value(0, (v1_BasisCurve));set_attribute_value(1, cast_vector(v2_OffsetValues)); if (v3_Tag) {set_attribute_value(2, (*v3_Tag)); }; return *this; } +Ifc4x3::IfcOffsetCurveByDistances Ifc4x3::IfcOffsetCurveByDistances::initialize(::Ifc4x3::IfcCurve v1_BasisCurve, std::vector< ::Ifc4x3::IfcPointByDistanceExpression > v2_OffsetValues, std::optional< std::string > v3_Tag) { set_attribute_value(0, (v1_BasisCurve));set_attribute_value(1, cast_vector(v2_OffsetValues)); if (v3_Tag) {set_attribute_value(2, (*v3_Tag)); }; return *this; } // Function implementations for IfcOpenCrossProfileDef bool Ifc4x3::IfcOpenCrossProfileDef::HorizontalWidths() const { bool v = get_attribute_value(2); return v; } @@ -12380,7 +12380,7 @@ std::vector< double > /*[1:?]*/ Ifc4x3::IfcOpenCrossProfileDef::Slopes() const { void Ifc4x3::IfcOpenCrossProfileDef::setSlopes(const std::vector< double > /*[1:?]*/& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } std::optional< std::vector< std::string > /*[2:?]*/ > Ifc4x3::IfcOpenCrossProfileDef::Tags() const { if(get_attribute_value(5).isNull()) { return std::nullopt; } std::vector< std::string > /*[2:?]*/ v = get_attribute_value(5); return v; } void Ifc4x3::IfcOpenCrossProfileDef::setTags(const std::optional< std::vector< std::string > /*[2:?]*/ >& v) { if (v) {set_attribute_value(5, *v);} else {unset_attribute_value(5);} } -::Ifc4x3::IfcCartesianPoint Ifc4x3::IfcOpenCrossProfileDef::OffsetPoint() const { if(get_attribute_value(6).isNull()) { return ::Ifc4x3::IfcCartesianPoint{}; } return ((express::Base)(get_attribute_value(6))).as<::Ifc4x3::IfcCartesianPoint>(); } +::Ifc4x3::IfcCartesianPoint Ifc4x3::IfcOpenCrossProfileDef::OffsetPoint() const { if(get_attribute_value(6).isNull()) { return ::Ifc4x3::IfcCartesianPoint{}; } return ((express::base)(get_attribute_value(6))).as<::Ifc4x3::IfcCartesianPoint>(); } void Ifc4x3::IfcOpenCrossProfileDef::setOffsetPoint(const ::Ifc4x3::IfcCartesianPoint& v) { set_attribute_value(6, v);if constexpr (false)unset_attribute_value(6); } @@ -12391,7 +12391,7 @@ Ifc4x3::IfcOpenCrossProfileDef Ifc4x3::IfcOpenCrossProfileDef::initialize(::Ifc4 const ifcopenshell::entity& Ifc4x3::IfcOpenShell::Class() { return *((ifcopenshell::entity*)IFC4X3_types[716]); } -Ifc4x3::IfcOpenShell Ifc4x3::IfcOpenShell::initialize(std::vector< ::Ifc4x3::IfcFace > v1_CfsFaces) { set_attribute_value(0, cast_vector(v1_CfsFaces));; return *this; } +Ifc4x3::IfcOpenShell Ifc4x3::IfcOpenShell::initialize(std::vector< ::Ifc4x3::IfcFace > v1_CfsFaces) { set_attribute_value(0, cast_vector(v1_CfsFaces));; return *this; } // Function implementations for IfcOpeningElement std::optional< ::Ifc4x3::IfcOpeningElementTypeEnum::Value > Ifc4x3::IfcOpeningElement::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3::IfcOpeningElementTypeEnum::FromString(get_attribute_value(8)); } @@ -12409,30 +12409,30 @@ std::string Ifc4x3::IfcOrganization::Name() const { std::string v = get_attribu void Ifc4x3::IfcOrganization::setName(const std::string& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } std::optional< std::string > Ifc4x3::IfcOrganization::Description() const { if(get_attribute_value(2).isNull()) { return std::nullopt; } std::string v = get_attribute_value(2); return v; } void Ifc4x3::IfcOrganization::setDescription(const std::optional< std::string >& v) { if (v) {set_attribute_value(2, *v);} else {unset_attribute_value(2);} } -std::optional< std::vector< ::Ifc4x3::IfcActorRole > > Ifc4x3::IfcOrganization::Roles() const { if(get_attribute_value(3).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(3); return cast_vector<::Ifc4x3::IfcActorRole>(es); } -void Ifc4x3::IfcOrganization::setRoles(const std::optional< std::vector< ::Ifc4x3::IfcActorRole > >& v) { if (v) {set_attribute_value(3, cast_vector(*v));} else {unset_attribute_value(3);} } -std::optional< std::vector< ::Ifc4x3::IfcAddress > > Ifc4x3::IfcOrganization::Addresses() const { if(get_attribute_value(4).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(4); return cast_vector<::Ifc4x3::IfcAddress>(es); } -void Ifc4x3::IfcOrganization::setAddresses(const std::optional< std::vector< ::Ifc4x3::IfcAddress > >& v) { if (v) {set_attribute_value(4, cast_vector(*v));} else {unset_attribute_value(4);} } +std::optional< std::vector< ::Ifc4x3::IfcActorRole > > Ifc4x3::IfcOrganization::Roles() const { if(get_attribute_value(3).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(3); return cast_vector<::Ifc4x3::IfcActorRole>(es); } +void Ifc4x3::IfcOrganization::setRoles(const std::optional< std::vector< ::Ifc4x3::IfcActorRole > >& v) { if (v) {set_attribute_value(3, cast_vector(*v));} else {unset_attribute_value(3);} } +std::optional< std::vector< ::Ifc4x3::IfcAddress > > Ifc4x3::IfcOrganization::Addresses() const { if(get_attribute_value(4).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(4); return cast_vector<::Ifc4x3::IfcAddress>(es); } +void Ifc4x3::IfcOrganization::setAddresses(const std::optional< std::vector< ::Ifc4x3::IfcAddress > >& v) { if (v) {set_attribute_value(4, cast_vector(*v));} else {unset_attribute_value(4);} } std::vector<::Ifc4x3::IfcOrganizationRelationship> Ifc4x3::IfcOrganization::IsRelatedBy() const { return cast_vector(file()->get_inverse(data()->id(), IFC4X3_types[718], 3)); } std::vector<::Ifc4x3::IfcOrganizationRelationship> Ifc4x3::IfcOrganization::Relates() const { return cast_vector(file()->get_inverse(data()->id(), IFC4X3_types[718], 2)); } std::vector<::Ifc4x3::IfcPersonAndOrganization> Ifc4x3::IfcOrganization::Engages() const { return cast_vector(file()->get_inverse(data()->id(), IFC4X3_types[739], 1)); } const ifcopenshell::entity& Ifc4x3::IfcOrganization::Class() { return *((ifcopenshell::entity*)IFC4X3_types[717]); } -Ifc4x3::IfcOrganization Ifc4x3::IfcOrganization::initialize(std::optional< std::string > v1_Identification, std::string v2_Name, std::optional< std::string > v3_Description, std::optional< std::vector< ::Ifc4x3::IfcActorRole > > v4_Roles, std::optional< std::vector< ::Ifc4x3::IfcAddress > > v5_Addresses) { if (v1_Identification) {set_attribute_value(0, (*v1_Identification)); }set_attribute_value(1, (v2_Name)); if (v3_Description) {set_attribute_value(2, (*v3_Description)); } if (v4_Roles) {set_attribute_value(3, cast_vector(*v4_Roles)); } if (v5_Addresses) {set_attribute_value(4, cast_vector(*v5_Addresses)); }; return *this; } +Ifc4x3::IfcOrganization Ifc4x3::IfcOrganization::initialize(std::optional< std::string > v1_Identification, std::string v2_Name, std::optional< std::string > v3_Description, std::optional< std::vector< ::Ifc4x3::IfcActorRole > > v4_Roles, std::optional< std::vector< ::Ifc4x3::IfcAddress > > v5_Addresses) { if (v1_Identification) {set_attribute_value(0, (*v1_Identification)); }set_attribute_value(1, (v2_Name)); if (v3_Description) {set_attribute_value(2, (*v3_Description)); } if (v4_Roles) {set_attribute_value(3, cast_vector(*v4_Roles)); } if (v5_Addresses) {set_attribute_value(4, cast_vector(*v5_Addresses)); }; return *this; } // Function implementations for IfcOrganizationRelationship -::Ifc4x3::IfcOrganization Ifc4x3::IfcOrganizationRelationship::RelatingOrganization() const { return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3::IfcOrganization>(); } +::Ifc4x3::IfcOrganization Ifc4x3::IfcOrganizationRelationship::RelatingOrganization() const { return ((express::base)(get_attribute_value(2))).as<::Ifc4x3::IfcOrganization>(); } void Ifc4x3::IfcOrganizationRelationship::setRelatingOrganization(const ::Ifc4x3::IfcOrganization& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } -std::vector< ::Ifc4x3::IfcOrganization > Ifc4x3::IfcOrganizationRelationship::RelatedOrganizations() const { std::vector es = get_attribute_value(3); return cast_vector<::Ifc4x3::IfcOrganization>(es); } -void Ifc4x3::IfcOrganizationRelationship::setRelatedOrganizations(const std::vector< ::Ifc4x3::IfcOrganization >& v) { set_attribute_value(3, cast_vector(v));if constexpr (false)unset_attribute_value(3); } +std::vector< ::Ifc4x3::IfcOrganization > Ifc4x3::IfcOrganizationRelationship::RelatedOrganizations() const { std::vector es = get_attribute_value(3); return cast_vector<::Ifc4x3::IfcOrganization>(es); } +void Ifc4x3::IfcOrganizationRelationship::setRelatedOrganizations(const std::vector< ::Ifc4x3::IfcOrganization >& v) { set_attribute_value(3, cast_vector(v));if constexpr (false)unset_attribute_value(3); } const ifcopenshell::entity& Ifc4x3::IfcOrganizationRelationship::Class() { return *((ifcopenshell::entity*)IFC4X3_types[718]); } -Ifc4x3::IfcOrganizationRelationship Ifc4x3::IfcOrganizationRelationship::initialize(std::optional< std::string > v1_Name, std::optional< std::string > v2_Description, ::Ifc4x3::IfcOrganization v3_RelatingOrganization, std::vector< ::Ifc4x3::IfcOrganization > v4_RelatedOrganizations) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); } if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, (v3_RelatingOrganization));set_attribute_value(3, cast_vector(v4_RelatedOrganizations));; return *this; } +Ifc4x3::IfcOrganizationRelationship Ifc4x3::IfcOrganizationRelationship::initialize(std::optional< std::string > v1_Name, std::optional< std::string > v2_Description, ::Ifc4x3::IfcOrganization v3_RelatingOrganization, std::vector< ::Ifc4x3::IfcOrganization > v4_RelatedOrganizations) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); } if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, (v3_RelatingOrganization));set_attribute_value(3, cast_vector(v4_RelatedOrganizations));; return *this; } // Function implementations for IfcOrientedEdge -::Ifc4x3::IfcEdge Ifc4x3::IfcOrientedEdge::EdgeElement() const { return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3::IfcEdge>(); } +::Ifc4x3::IfcEdge Ifc4x3::IfcOrientedEdge::EdgeElement() const { return ((express::base)(get_attribute_value(2))).as<::Ifc4x3::IfcEdge>(); } void Ifc4x3::IfcOrientedEdge::setEdgeElement(const ::Ifc4x3::IfcEdge& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } bool Ifc4x3::IfcOrientedEdge::Orientation() const { bool v = get_attribute_value(3); return v; } void Ifc4x3::IfcOrientedEdge::setOrientation(const bool& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } @@ -12445,7 +12445,7 @@ Ifc4x3::IfcOrientedEdge Ifc4x3::IfcOrientedEdge::initialize(::Ifc4x3::IfcEdge v3 const ifcopenshell::entity& Ifc4x3::IfcOuterBoundaryCurve::Class() { return *((ifcopenshell::entity*)IFC4X3_types[720]); } -Ifc4x3::IfcOuterBoundaryCurve Ifc4x3::IfcOuterBoundaryCurve::initialize(std::vector< ::Ifc4x3::IfcSegment > v1_Segments, boost::logic::tribool v2_SelfIntersect) { set_attribute_value(0, cast_vector(v1_Segments));set_attribute_value(1, (v2_SelfIntersect));; return *this; } +Ifc4x3::IfcOuterBoundaryCurve Ifc4x3::IfcOuterBoundaryCurve::initialize(std::vector< ::Ifc4x3::IfcSegment > v1_Segments, boost::logic::tribool v2_SelfIntersect) { set_attribute_value(0, cast_vector(v1_Segments));set_attribute_value(1, (v2_SelfIntersect));; return *this; } // Function implementations for IfcOutlet std::optional< ::Ifc4x3::IfcOutletTypeEnum::Value > Ifc4x3::IfcOutlet::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3::IfcOutletTypeEnum::FromString(get_attribute_value(8)); } @@ -12461,12 +12461,12 @@ void Ifc4x3::IfcOutletType::setPredefinedType(const ::Ifc4x3::IfcOutletTypeEnum: const ifcopenshell::entity& Ifc4x3::IfcOutletType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[722]); } -Ifc4x3::IfcOutletType Ifc4x3::IfcOutletType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcOutletTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcOutletTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3::IfcOutletType Ifc4x3::IfcOutletType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcOutletTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcOutletTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcOwnerHistory -::Ifc4x3::IfcPersonAndOrganization Ifc4x3::IfcOwnerHistory::OwningUser() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3::IfcPersonAndOrganization>(); } +::Ifc4x3::IfcPersonAndOrganization Ifc4x3::IfcOwnerHistory::OwningUser() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3::IfcPersonAndOrganization>(); } void Ifc4x3::IfcOwnerHistory::setOwningUser(const ::Ifc4x3::IfcPersonAndOrganization& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } -::Ifc4x3::IfcApplication Ifc4x3::IfcOwnerHistory::OwningApplication() const { return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3::IfcApplication>(); } +::Ifc4x3::IfcApplication Ifc4x3::IfcOwnerHistory::OwningApplication() const { return ((express::base)(get_attribute_value(1))).as<::Ifc4x3::IfcApplication>(); } void Ifc4x3::IfcOwnerHistory::setOwningApplication(const ::Ifc4x3::IfcApplication& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } std::optional< ::Ifc4x3::IfcStateEnum::Value > Ifc4x3::IfcOwnerHistory::State() const { if(get_attribute_value(2).isNull()) { return std::nullopt; } return ::Ifc4x3::IfcStateEnum::FromString(get_attribute_value(2)); } void Ifc4x3::IfcOwnerHistory::setState(const std::optional< ::Ifc4x3::IfcStateEnum::Value >& v) { if (v) {set_attribute_value(2, enumeration_reference(&::Ifc4x3::IfcStateEnum::Class(), (size_t) *v));} else {unset_attribute_value(2);} } @@ -12474,9 +12474,9 @@ std::optional< ::Ifc4x3::IfcChangeActionEnum::Value > Ifc4x3::IfcOwnerHistory::C void Ifc4x3::IfcOwnerHistory::setChangeAction(const std::optional< ::Ifc4x3::IfcChangeActionEnum::Value >& v) { if (v) {set_attribute_value(3, enumeration_reference(&::Ifc4x3::IfcChangeActionEnum::Class(), (size_t) *v));} else {unset_attribute_value(3);} } std::optional< int64_t > Ifc4x3::IfcOwnerHistory::LastModifiedDate() const { if(get_attribute_value(4).isNull()) { return std::nullopt; } int64_t v = get_attribute_value(4); return v; } void Ifc4x3::IfcOwnerHistory::setLastModifiedDate(const std::optional< int64_t >& v) { if (v) {set_attribute_value(4, *v);} else {unset_attribute_value(4);} } -::Ifc4x3::IfcPersonAndOrganization Ifc4x3::IfcOwnerHistory::LastModifyingUser() const { if(get_attribute_value(5).isNull()) { return ::Ifc4x3::IfcPersonAndOrganization{}; } return ((express::Base)(get_attribute_value(5))).as<::Ifc4x3::IfcPersonAndOrganization>(); } +::Ifc4x3::IfcPersonAndOrganization Ifc4x3::IfcOwnerHistory::LastModifyingUser() const { if(get_attribute_value(5).isNull()) { return ::Ifc4x3::IfcPersonAndOrganization{}; } return ((express::base)(get_attribute_value(5))).as<::Ifc4x3::IfcPersonAndOrganization>(); } void Ifc4x3::IfcOwnerHistory::setLastModifyingUser(const ::Ifc4x3::IfcPersonAndOrganization& v) { set_attribute_value(5, v);if constexpr (false)unset_attribute_value(5); } -::Ifc4x3::IfcApplication Ifc4x3::IfcOwnerHistory::LastModifyingApplication() const { if(get_attribute_value(6).isNull()) { return ::Ifc4x3::IfcApplication{}; } return ((express::Base)(get_attribute_value(6))).as<::Ifc4x3::IfcApplication>(); } +::Ifc4x3::IfcApplication Ifc4x3::IfcOwnerHistory::LastModifyingApplication() const { if(get_attribute_value(6).isNull()) { return ::Ifc4x3::IfcApplication{}; } return ((express::base)(get_attribute_value(6))).as<::Ifc4x3::IfcApplication>(); } void Ifc4x3::IfcOwnerHistory::setLastModifyingApplication(const ::Ifc4x3::IfcApplication& v) { set_attribute_value(6, v);if constexpr (false)unset_attribute_value(6); } int64_t Ifc4x3::IfcOwnerHistory::CreationDate() const { int64_t v = get_attribute_value(7); return v; } void Ifc4x3::IfcOwnerHistory::setCreationDate(const int64_t& v) { set_attribute_value(7, v);if constexpr (false)unset_attribute_value(7); } @@ -12486,7 +12486,7 @@ const ifcopenshell::entity& Ifc4x3::IfcOwnerHistory::Class() { return *((ifcopen Ifc4x3::IfcOwnerHistory Ifc4x3::IfcOwnerHistory::initialize(::Ifc4x3::IfcPersonAndOrganization v1_OwningUser, ::Ifc4x3::IfcApplication v2_OwningApplication, std::optional< ::Ifc4x3::IfcStateEnum::Value > v3_State, std::optional< ::Ifc4x3::IfcChangeActionEnum::Value > v4_ChangeAction, std::optional< int64_t > v5_LastModifiedDate, ::Ifc4x3::IfcPersonAndOrganization v6_LastModifyingUser, ::Ifc4x3::IfcApplication v7_LastModifyingApplication, int64_t v8_CreationDate) { set_attribute_value(0, (v1_OwningUser));set_attribute_value(1, (v2_OwningApplication)); if (v3_State) {set_attribute_value(2, (enumeration_reference(&::Ifc4x3::IfcStateEnum::Class(),(size_t)*v3_State))); } if (v4_ChangeAction) {set_attribute_value(3, (enumeration_reference(&::Ifc4x3::IfcChangeActionEnum::Class(),(size_t)*v4_ChangeAction))); } if (v5_LastModifiedDate) {set_attribute_value(4, (*v5_LastModifiedDate)); }set_attribute_value(5, (v6_LastModifyingUser));set_attribute_value(6, (v7_LastModifyingApplication));set_attribute_value(7, (v8_CreationDate));; return *this; } // Function implementations for IfcParameterizedProfileDef -::Ifc4x3::IfcAxis2Placement2D Ifc4x3::IfcParameterizedProfileDef::Position() const { if(get_attribute_value(2).isNull()) { return ::Ifc4x3::IfcAxis2Placement2D{}; } return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3::IfcAxis2Placement2D>(); } +::Ifc4x3::IfcAxis2Placement2D Ifc4x3::IfcParameterizedProfileDef::Position() const { if(get_attribute_value(2).isNull()) { return ::Ifc4x3::IfcAxis2Placement2D{}; } return ((express::base)(get_attribute_value(2))).as<::Ifc4x3::IfcAxis2Placement2D>(); } void Ifc4x3::IfcParameterizedProfileDef::setPosition(const ::Ifc4x3::IfcAxis2Placement2D& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } @@ -12494,12 +12494,12 @@ const ifcopenshell::entity& Ifc4x3::IfcParameterizedProfileDef::Class() { return Ifc4x3::IfcParameterizedProfileDef Ifc4x3::IfcParameterizedProfileDef::initialize(::Ifc4x3::IfcProfileTypeEnum::Value v1_ProfileType, std::optional< std::string > v2_ProfileName, ::Ifc4x3::IfcAxis2Placement2D v3_Position) { set_attribute_value(0, (enumeration_reference(&::Ifc4x3::IfcProfileTypeEnum::Class(),(size_t)v1_ProfileType))); if (v2_ProfileName) {set_attribute_value(1, (*v2_ProfileName)); }set_attribute_value(2, (v3_Position));; return *this; } // Function implementations for IfcPath -std::vector< ::Ifc4x3::IfcOrientedEdge > Ifc4x3::IfcPath::EdgeList() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3::IfcOrientedEdge>(es); } -void Ifc4x3::IfcPath::setEdgeList(const std::vector< ::Ifc4x3::IfcOrientedEdge >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } +std::vector< ::Ifc4x3::IfcOrientedEdge > Ifc4x3::IfcPath::EdgeList() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3::IfcOrientedEdge>(es); } +void Ifc4x3::IfcPath::setEdgeList(const std::vector< ::Ifc4x3::IfcOrientedEdge >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } const ifcopenshell::entity& Ifc4x3::IfcPath::Class() { return *((ifcopenshell::entity*)IFC4X3_types[727]); } -Ifc4x3::IfcPath Ifc4x3::IfcPath::initialize(std::vector< ::Ifc4x3::IfcOrientedEdge > v1_EdgeList) { set_attribute_value(0, cast_vector(v1_EdgeList));; return *this; } +Ifc4x3::IfcPath Ifc4x3::IfcPath::initialize(std::vector< ::Ifc4x3::IfcOrientedEdge > v1_EdgeList) { set_attribute_value(0, cast_vector(v1_EdgeList));; return *this; } // Function implementations for IfcPavement std::optional< ::Ifc4x3::IfcPavementTypeEnum::Value > Ifc4x3::IfcPavement::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3::IfcPavementTypeEnum::FromString(get_attribute_value(8)); } @@ -12515,12 +12515,12 @@ void Ifc4x3::IfcPavementType::setPredefinedType(const ::Ifc4x3::IfcPavementTypeE const ifcopenshell::entity& Ifc4x3::IfcPavementType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[729]); } -Ifc4x3::IfcPavementType Ifc4x3::IfcPavementType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcPavementTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcPavementTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3::IfcPavementType Ifc4x3::IfcPavementType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcPavementTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcPavementTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcPcurve -::Ifc4x3::IfcSurface Ifc4x3::IfcPcurve::BasisSurface() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3::IfcSurface>(); } +::Ifc4x3::IfcSurface Ifc4x3::IfcPcurve::BasisSurface() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3::IfcSurface>(); } void Ifc4x3::IfcPcurve::setBasisSurface(const ::Ifc4x3::IfcSurface& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } -::Ifc4x3::IfcCurve Ifc4x3::IfcPcurve::ReferenceCurve() const { return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3::IfcCurve>(); } +::Ifc4x3::IfcCurve Ifc4x3::IfcPcurve::ReferenceCurve() const { return ((express::base)(get_attribute_value(1))).as<::Ifc4x3::IfcCurve>(); } void Ifc4x3::IfcPcurve::setReferenceCurve(const ::Ifc4x3::IfcCurve& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } @@ -12546,7 +12546,7 @@ std::optional< double > Ifc4x3::IfcPermeableCoveringProperties::FrameDepth() con void Ifc4x3::IfcPermeableCoveringProperties::setFrameDepth(const std::optional< double >& v) { if (v) {set_attribute_value(6, *v);} else {unset_attribute_value(6);} } std::optional< double > Ifc4x3::IfcPermeableCoveringProperties::FrameThickness() const { if(get_attribute_value(7).isNull()) { return std::nullopt; } double v = get_attribute_value(7); return v; } void Ifc4x3::IfcPermeableCoveringProperties::setFrameThickness(const std::optional< double >& v) { if (v) {set_attribute_value(7, *v);} else {unset_attribute_value(7);} } -::Ifc4x3::IfcShapeAspect Ifc4x3::IfcPermeableCoveringProperties::ShapeAspectStyle() const { if(get_attribute_value(8).isNull()) { return ::Ifc4x3::IfcShapeAspect{}; } return ((express::Base)(get_attribute_value(8))).as<::Ifc4x3::IfcShapeAspect>(); } +::Ifc4x3::IfcShapeAspect Ifc4x3::IfcPermeableCoveringProperties::ShapeAspectStyle() const { if(get_attribute_value(8).isNull()) { return ::Ifc4x3::IfcShapeAspect{}; } return ((express::base)(get_attribute_value(8))).as<::Ifc4x3::IfcShapeAspect>(); } void Ifc4x3::IfcPermeableCoveringProperties::setShapeAspectStyle(const ::Ifc4x3::IfcShapeAspect& v) { set_attribute_value(8, v);if constexpr (false)unset_attribute_value(8); } @@ -12578,31 +12578,31 @@ std::optional< std::vector< std::string > /*[1:?]*/ > Ifc4x3::IfcPerson::PrefixT void Ifc4x3::IfcPerson::setPrefixTitles(const std::optional< std::vector< std::string > /*[1:?]*/ >& v) { if (v) {set_attribute_value(4, *v);} else {unset_attribute_value(4);} } std::optional< std::vector< std::string > /*[1:?]*/ > Ifc4x3::IfcPerson::SuffixTitles() const { if(get_attribute_value(5).isNull()) { return std::nullopt; } std::vector< std::string > /*[1:?]*/ v = get_attribute_value(5); return v; } void Ifc4x3::IfcPerson::setSuffixTitles(const std::optional< std::vector< std::string > /*[1:?]*/ >& v) { if (v) {set_attribute_value(5, *v);} else {unset_attribute_value(5);} } -std::optional< std::vector< ::Ifc4x3::IfcActorRole > > Ifc4x3::IfcPerson::Roles() const { if(get_attribute_value(6).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(6); return cast_vector<::Ifc4x3::IfcActorRole>(es); } -void Ifc4x3::IfcPerson::setRoles(const std::optional< std::vector< ::Ifc4x3::IfcActorRole > >& v) { if (v) {set_attribute_value(6, cast_vector(*v));} else {unset_attribute_value(6);} } -std::optional< std::vector< ::Ifc4x3::IfcAddress > > Ifc4x3::IfcPerson::Addresses() const { if(get_attribute_value(7).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(7); return cast_vector<::Ifc4x3::IfcAddress>(es); } -void Ifc4x3::IfcPerson::setAddresses(const std::optional< std::vector< ::Ifc4x3::IfcAddress > >& v) { if (v) {set_attribute_value(7, cast_vector(*v));} else {unset_attribute_value(7);} } +std::optional< std::vector< ::Ifc4x3::IfcActorRole > > Ifc4x3::IfcPerson::Roles() const { if(get_attribute_value(6).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(6); return cast_vector<::Ifc4x3::IfcActorRole>(es); } +void Ifc4x3::IfcPerson::setRoles(const std::optional< std::vector< ::Ifc4x3::IfcActorRole > >& v) { if (v) {set_attribute_value(6, cast_vector(*v));} else {unset_attribute_value(6);} } +std::optional< std::vector< ::Ifc4x3::IfcAddress > > Ifc4x3::IfcPerson::Addresses() const { if(get_attribute_value(7).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(7); return cast_vector<::Ifc4x3::IfcAddress>(es); } +void Ifc4x3::IfcPerson::setAddresses(const std::optional< std::vector< ::Ifc4x3::IfcAddress > >& v) { if (v) {set_attribute_value(7, cast_vector(*v));} else {unset_attribute_value(7);} } std::vector<::Ifc4x3::IfcPersonAndOrganization> Ifc4x3::IfcPerson::EngagedIn() const { return cast_vector(file()->get_inverse(data()->id(), IFC4X3_types[739], 0)); } const ifcopenshell::entity& Ifc4x3::IfcPerson::Class() { return *((ifcopenshell::entity*)IFC4X3_types[738]); } -Ifc4x3::IfcPerson Ifc4x3::IfcPerson::initialize(std::optional< std::string > v1_Identification, std::optional< std::string > v2_FamilyName, std::optional< std::string > v3_GivenName, std::optional< std::vector< std::string > /*[1:?]*/ > v4_MiddleNames, std::optional< std::vector< std::string > /*[1:?]*/ > v5_PrefixTitles, std::optional< std::vector< std::string > /*[1:?]*/ > v6_SuffixTitles, std::optional< std::vector< ::Ifc4x3::IfcActorRole > > v7_Roles, std::optional< std::vector< ::Ifc4x3::IfcAddress > > v8_Addresses) { if (v1_Identification) {set_attribute_value(0, (*v1_Identification)); } if (v2_FamilyName) {set_attribute_value(1, (*v2_FamilyName)); } if (v3_GivenName) {set_attribute_value(2, (*v3_GivenName)); } if (v4_MiddleNames) {set_attribute_value(3, (*v4_MiddleNames)); } if (v5_PrefixTitles) {set_attribute_value(4, (*v5_PrefixTitles)); } if (v6_SuffixTitles) {set_attribute_value(5, (*v6_SuffixTitles)); } if (v7_Roles) {set_attribute_value(6, cast_vector(*v7_Roles)); } if (v8_Addresses) {set_attribute_value(7, cast_vector(*v8_Addresses)); }; return *this; } +Ifc4x3::IfcPerson Ifc4x3::IfcPerson::initialize(std::optional< std::string > v1_Identification, std::optional< std::string > v2_FamilyName, std::optional< std::string > v3_GivenName, std::optional< std::vector< std::string > /*[1:?]*/ > v4_MiddleNames, std::optional< std::vector< std::string > /*[1:?]*/ > v5_PrefixTitles, std::optional< std::vector< std::string > /*[1:?]*/ > v6_SuffixTitles, std::optional< std::vector< ::Ifc4x3::IfcActorRole > > v7_Roles, std::optional< std::vector< ::Ifc4x3::IfcAddress > > v8_Addresses) { if (v1_Identification) {set_attribute_value(0, (*v1_Identification)); } if (v2_FamilyName) {set_attribute_value(1, (*v2_FamilyName)); } if (v3_GivenName) {set_attribute_value(2, (*v3_GivenName)); } if (v4_MiddleNames) {set_attribute_value(3, (*v4_MiddleNames)); } if (v5_PrefixTitles) {set_attribute_value(4, (*v5_PrefixTitles)); } if (v6_SuffixTitles) {set_attribute_value(5, (*v6_SuffixTitles)); } if (v7_Roles) {set_attribute_value(6, cast_vector(*v7_Roles)); } if (v8_Addresses) {set_attribute_value(7, cast_vector(*v8_Addresses)); }; return *this; } // Function implementations for IfcPersonAndOrganization -::Ifc4x3::IfcPerson Ifc4x3::IfcPersonAndOrganization::ThePerson() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3::IfcPerson>(); } +::Ifc4x3::IfcPerson Ifc4x3::IfcPersonAndOrganization::ThePerson() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3::IfcPerson>(); } void Ifc4x3::IfcPersonAndOrganization::setThePerson(const ::Ifc4x3::IfcPerson& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } -::Ifc4x3::IfcOrganization Ifc4x3::IfcPersonAndOrganization::TheOrganization() const { return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3::IfcOrganization>(); } +::Ifc4x3::IfcOrganization Ifc4x3::IfcPersonAndOrganization::TheOrganization() const { return ((express::base)(get_attribute_value(1))).as<::Ifc4x3::IfcOrganization>(); } void Ifc4x3::IfcPersonAndOrganization::setTheOrganization(const ::Ifc4x3::IfcOrganization& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } -std::optional< std::vector< ::Ifc4x3::IfcActorRole > > Ifc4x3::IfcPersonAndOrganization::Roles() const { if(get_attribute_value(2).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(2); return cast_vector<::Ifc4x3::IfcActorRole>(es); } -void Ifc4x3::IfcPersonAndOrganization::setRoles(const std::optional< std::vector< ::Ifc4x3::IfcActorRole > >& v) { if (v) {set_attribute_value(2, cast_vector(*v));} else {unset_attribute_value(2);} } +std::optional< std::vector< ::Ifc4x3::IfcActorRole > > Ifc4x3::IfcPersonAndOrganization::Roles() const { if(get_attribute_value(2).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(2); return cast_vector<::Ifc4x3::IfcActorRole>(es); } +void Ifc4x3::IfcPersonAndOrganization::setRoles(const std::optional< std::vector< ::Ifc4x3::IfcActorRole > >& v) { if (v) {set_attribute_value(2, cast_vector(*v));} else {unset_attribute_value(2);} } const ifcopenshell::entity& Ifc4x3::IfcPersonAndOrganization::Class() { return *((ifcopenshell::entity*)IFC4X3_types[739]); } -Ifc4x3::IfcPersonAndOrganization Ifc4x3::IfcPersonAndOrganization::initialize(::Ifc4x3::IfcPerson v1_ThePerson, ::Ifc4x3::IfcOrganization v2_TheOrganization, std::optional< std::vector< ::Ifc4x3::IfcActorRole > > v3_Roles) { set_attribute_value(0, (v1_ThePerson));set_attribute_value(1, (v2_TheOrganization)); if (v3_Roles) {set_attribute_value(2, cast_vector(*v3_Roles)); }; return *this; } +Ifc4x3::IfcPersonAndOrganization Ifc4x3::IfcPersonAndOrganization::initialize(::Ifc4x3::IfcPerson v1_ThePerson, ::Ifc4x3::IfcOrganization v2_TheOrganization, std::optional< std::vector< ::Ifc4x3::IfcActorRole > > v3_Roles) { set_attribute_value(0, (v1_ThePerson));set_attribute_value(1, (v2_TheOrganization)); if (v3_Roles) {set_attribute_value(2, cast_vector(*v3_Roles)); }; return *this; } // Function implementations for IfcPhysicalComplexQuantity -std::vector< ::Ifc4x3::IfcPhysicalQuantity > Ifc4x3::IfcPhysicalComplexQuantity::HasQuantities() const { std::vector es = get_attribute_value(2); return cast_vector<::Ifc4x3::IfcPhysicalQuantity>(es); } -void Ifc4x3::IfcPhysicalComplexQuantity::setHasQuantities(const std::vector< ::Ifc4x3::IfcPhysicalQuantity >& v) { set_attribute_value(2, cast_vector(v));if constexpr (false)unset_attribute_value(2); } +std::vector< ::Ifc4x3::IfcPhysicalQuantity > Ifc4x3::IfcPhysicalComplexQuantity::HasQuantities() const { std::vector es = get_attribute_value(2); return cast_vector<::Ifc4x3::IfcPhysicalQuantity>(es); } +void Ifc4x3::IfcPhysicalComplexQuantity::setHasQuantities(const std::vector< ::Ifc4x3::IfcPhysicalQuantity >& v) { set_attribute_value(2, cast_vector(v));if constexpr (false)unset_attribute_value(2); } std::string Ifc4x3::IfcPhysicalComplexQuantity::Discrimination() const { std::string v = get_attribute_value(3); return v; } void Ifc4x3::IfcPhysicalComplexQuantity::setDiscrimination(const std::string& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } std::optional< std::string > Ifc4x3::IfcPhysicalComplexQuantity::Quality() const { if(get_attribute_value(4).isNull()) { return std::nullopt; } std::string v = get_attribute_value(4); return v; } @@ -12612,7 +12612,7 @@ void Ifc4x3::IfcPhysicalComplexQuantity::setUsage(const std::optional< std::stri const ifcopenshell::entity& Ifc4x3::IfcPhysicalComplexQuantity::Class() { return *((ifcopenshell::entity*)IFC4X3_types[741]); } -Ifc4x3::IfcPhysicalComplexQuantity Ifc4x3::IfcPhysicalComplexQuantity::initialize(std::string v1_Name, std::optional< std::string > v2_Description, std::vector< ::Ifc4x3::IfcPhysicalQuantity > v3_HasQuantities, std::string v4_Discrimination, std::optional< std::string > v5_Quality, std::optional< std::string > v6_Usage) { set_attribute_value(0, (v1_Name)); if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, cast_vector(v3_HasQuantities));set_attribute_value(3, (v4_Discrimination)); if (v5_Quality) {set_attribute_value(4, (*v5_Quality)); } if (v6_Usage) {set_attribute_value(5, (*v6_Usage)); }; return *this; } +Ifc4x3::IfcPhysicalComplexQuantity Ifc4x3::IfcPhysicalComplexQuantity::initialize(std::string v1_Name, std::optional< std::string > v2_Description, std::vector< ::Ifc4x3::IfcPhysicalQuantity > v3_HasQuantities, std::string v4_Discrimination, std::optional< std::string > v5_Quality, std::optional< std::string > v6_Usage) { set_attribute_value(0, (v1_Name)); if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, cast_vector(v3_HasQuantities));set_attribute_value(3, (v4_Discrimination)); if (v5_Quality) {set_attribute_value(4, (*v5_Quality)); } if (v6_Usage) {set_attribute_value(5, (*v6_Usage)); }; return *this; } // Function implementations for IfcPhysicalQuantity std::string Ifc4x3::IfcPhysicalQuantity::Name() const { std::string v = get_attribute_value(0); return v; } @@ -12627,7 +12627,7 @@ const ifcopenshell::entity& Ifc4x3::IfcPhysicalQuantity::Class() { return *((ifc Ifc4x3::IfcPhysicalQuantity Ifc4x3::IfcPhysicalQuantity::initialize(std::string v1_Name, std::optional< std::string > v2_Description) { set_attribute_value(0, (v1_Name)); if (v2_Description) {set_attribute_value(1, (*v2_Description)); }; return *this; } // Function implementations for IfcPhysicalSimpleQuantity -::Ifc4x3::IfcNamedUnit Ifc4x3::IfcPhysicalSimpleQuantity::Unit() const { if(get_attribute_value(2).isNull()) { return ::Ifc4x3::IfcNamedUnit{}; } return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3::IfcNamedUnit>(); } +::Ifc4x3::IfcNamedUnit Ifc4x3::IfcPhysicalSimpleQuantity::Unit() const { if(get_attribute_value(2).isNull()) { return ::Ifc4x3::IfcNamedUnit{}; } return ((express::base)(get_attribute_value(2))).as<::Ifc4x3::IfcNamedUnit>(); } void Ifc4x3::IfcPhysicalSimpleQuantity::setUnit(const ::Ifc4x3::IfcNamedUnit& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } @@ -12650,7 +12650,7 @@ void Ifc4x3::IfcPileType::setPredefinedType(const ::Ifc4x3::IfcPileTypeEnum::Val const ifcopenshell::entity& Ifc4x3::IfcPileType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[747]); } -Ifc4x3::IfcPileType Ifc4x3::IfcPileType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcPileTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcPileTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3::IfcPileType Ifc4x3::IfcPileType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcPileTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcPileTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcPipeFitting std::optional< ::Ifc4x3::IfcPipeFittingTypeEnum::Value > Ifc4x3::IfcPipeFitting::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3::IfcPipeFittingTypeEnum::FromString(get_attribute_value(8)); } @@ -12666,7 +12666,7 @@ void Ifc4x3::IfcPipeFittingType::setPredefinedType(const ::Ifc4x3::IfcPipeFittin const ifcopenshell::entity& Ifc4x3::IfcPipeFittingType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[750]); } -Ifc4x3::IfcPipeFittingType Ifc4x3::IfcPipeFittingType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcPipeFittingTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcPipeFittingTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3::IfcPipeFittingType Ifc4x3::IfcPipeFittingType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcPipeFittingTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcPipeFittingTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcPipeSegment std::optional< ::Ifc4x3::IfcPipeSegmentTypeEnum::Value > Ifc4x3::IfcPipeSegment::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3::IfcPipeSegmentTypeEnum::FromString(get_attribute_value(8)); } @@ -12682,7 +12682,7 @@ void Ifc4x3::IfcPipeSegmentType::setPredefinedType(const ::Ifc4x3::IfcPipeSegmen const ifcopenshell::entity& Ifc4x3::IfcPipeSegmentType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[753]); } -Ifc4x3::IfcPipeSegmentType Ifc4x3::IfcPipeSegmentType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcPipeSegmentTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcPipeSegmentTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3::IfcPipeSegmentType Ifc4x3::IfcPipeSegmentType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcPipeSegmentTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcPipeSegmentTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcPixelTexture int64_t Ifc4x3::IfcPixelTexture::Width() const { int64_t v = get_attribute_value(5); return v; } @@ -12699,7 +12699,7 @@ const ifcopenshell::entity& Ifc4x3::IfcPixelTexture::Class() { return *((ifcopen Ifc4x3::IfcPixelTexture Ifc4x3::IfcPixelTexture::initialize(bool v1_RepeatS, bool v2_RepeatT, std::optional< std::string > v3_Mode, ::Ifc4x3::IfcCartesianTransformationOperator2D v4_TextureTransform, std::optional< std::vector< std::string > /*[1:?]*/ > v5_Parameter, int64_t v6_Width, int64_t v7_Height, int64_t v8_ColourComponents, std::vector< boost::dynamic_bitset<> > /*[1:?]*/ v9_Pixel) { set_attribute_value(0, (v1_RepeatS));set_attribute_value(1, (v2_RepeatT)); if (v3_Mode) {set_attribute_value(2, (*v3_Mode)); }set_attribute_value(3, (v4_TextureTransform)); if (v5_Parameter) {set_attribute_value(4, (*v5_Parameter)); }set_attribute_value(5, (v6_Width));set_attribute_value(6, (v7_Height));set_attribute_value(7, (v8_ColourComponents));set_attribute_value(8, (v9_Pixel));; return *this; } // Function implementations for IfcPlacement -::Ifc4x3::IfcPoint Ifc4x3::IfcPlacement::Location() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3::IfcPoint>(); } +::Ifc4x3::IfcPoint Ifc4x3::IfcPlacement::Location() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3::IfcPoint>(); } void Ifc4x3::IfcPlacement::setLocation(const ::Ifc4x3::IfcPoint& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } @@ -12707,7 +12707,7 @@ const ifcopenshell::entity& Ifc4x3::IfcPlacement::Class() { return *((ifcopenshe Ifc4x3::IfcPlacement Ifc4x3::IfcPlacement::initialize(::Ifc4x3::IfcPoint v1_Location) { set_attribute_value(0, (v1_Location));; return *this; } // Function implementations for IfcPlanarBox -::Ifc4x3::IfcAxis2Placement Ifc4x3::IfcPlanarBox::Placement() const { return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3::IfcAxis2Placement>(); } +::Ifc4x3::IfcAxis2Placement Ifc4x3::IfcPlanarBox::Placement() const { return ((express::base)(get_attribute_value(2))).as<::Ifc4x3::IfcAxis2Placement>(); } void Ifc4x3::IfcPlanarBox::setPlacement(const ::Ifc4x3::IfcAxis2Placement& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } @@ -12744,7 +12744,7 @@ void Ifc4x3::IfcPlateType::setPredefinedType(const ::Ifc4x3::IfcPlateTypeEnum::V const ifcopenshell::entity& Ifc4x3::IfcPlateType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[763]); } -Ifc4x3::IfcPlateType Ifc4x3::IfcPlateType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcPlateTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcPlateTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3::IfcPlateType Ifc4x3::IfcPlateType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcPlateTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcPlateTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcPoint @@ -12753,7 +12753,7 @@ const ifcopenshell::entity& Ifc4x3::IfcPoint::Class() { return *((ifcopenshell:: Ifc4x3::IfcPoint Ifc4x3::IfcPoint::initialize() { ; return *this; } // Function implementations for IfcPointByDistanceExpression -::Ifc4x3::IfcCurveMeasureSelect Ifc4x3::IfcPointByDistanceExpression::DistanceAlong() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3::IfcCurveMeasureSelect>(); } +::Ifc4x3::IfcCurveMeasureSelect Ifc4x3::IfcPointByDistanceExpression::DistanceAlong() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3::IfcCurveMeasureSelect>(); } void Ifc4x3::IfcPointByDistanceExpression::setDistanceAlong(const ::Ifc4x3::IfcCurveMeasureSelect& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } std::optional< double > Ifc4x3::IfcPointByDistanceExpression::OffsetLateral() const { if(get_attribute_value(1).isNull()) { return std::nullopt; } double v = get_attribute_value(1); return v; } void Ifc4x3::IfcPointByDistanceExpression::setOffsetLateral(const std::optional< double >& v) { if (v) {set_attribute_value(1, *v);} else {unset_attribute_value(1);} } @@ -12761,7 +12761,7 @@ std::optional< double > Ifc4x3::IfcPointByDistanceExpression::OffsetVertical() c void Ifc4x3::IfcPointByDistanceExpression::setOffsetVertical(const std::optional< double >& v) { if (v) {set_attribute_value(2, *v);} else {unset_attribute_value(2);} } std::optional< double > Ifc4x3::IfcPointByDistanceExpression::OffsetLongitudinal() const { if(get_attribute_value(3).isNull()) { return std::nullopt; } double v = get_attribute_value(3); return v; } void Ifc4x3::IfcPointByDistanceExpression::setOffsetLongitudinal(const std::optional< double >& v) { if (v) {set_attribute_value(3, *v);} else {unset_attribute_value(3);} } -::Ifc4x3::IfcCurve Ifc4x3::IfcPointByDistanceExpression::BasisCurve() const { return ((express::Base)(get_attribute_value(4))).as<::Ifc4x3::IfcCurve>(); } +::Ifc4x3::IfcCurve Ifc4x3::IfcPointByDistanceExpression::BasisCurve() const { return ((express::base)(get_attribute_value(4))).as<::Ifc4x3::IfcCurve>(); } void Ifc4x3::IfcPointByDistanceExpression::setBasisCurve(const ::Ifc4x3::IfcCurve& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } @@ -12769,7 +12769,7 @@ const ifcopenshell::entity& Ifc4x3::IfcPointByDistanceExpression::Class() { retu Ifc4x3::IfcPointByDistanceExpression Ifc4x3::IfcPointByDistanceExpression::initialize(::Ifc4x3::IfcCurveMeasureSelect v1_DistanceAlong, std::optional< double > v2_OffsetLateral, std::optional< double > v3_OffsetVertical, std::optional< double > v4_OffsetLongitudinal, ::Ifc4x3::IfcCurve v5_BasisCurve) { set_attribute_value(0, (v1_DistanceAlong)); if (v2_OffsetLateral) {set_attribute_value(1, (*v2_OffsetLateral)); } if (v3_OffsetVertical) {set_attribute_value(2, (*v3_OffsetVertical)); } if (v4_OffsetLongitudinal) {set_attribute_value(3, (*v4_OffsetLongitudinal)); }set_attribute_value(4, (v5_BasisCurve));; return *this; } // Function implementations for IfcPointOnCurve -::Ifc4x3::IfcCurve Ifc4x3::IfcPointOnCurve::BasisCurve() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3::IfcCurve>(); } +::Ifc4x3::IfcCurve Ifc4x3::IfcPointOnCurve::BasisCurve() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3::IfcCurve>(); } void Ifc4x3::IfcPointOnCurve::setBasisCurve(const ::Ifc4x3::IfcCurve& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } double Ifc4x3::IfcPointOnCurve::PointParameter() const { double v = get_attribute_value(1); return v; } void Ifc4x3::IfcPointOnCurve::setPointParameter(const double& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } @@ -12779,7 +12779,7 @@ const ifcopenshell::entity& Ifc4x3::IfcPointOnCurve::Class() { return *((ifcopen Ifc4x3::IfcPointOnCurve Ifc4x3::IfcPointOnCurve::initialize(::Ifc4x3::IfcCurve v1_BasisCurve, double v2_PointParameter) { set_attribute_value(0, (v1_BasisCurve));set_attribute_value(1, (v2_PointParameter));; return *this; } // Function implementations for IfcPointOnSurface -::Ifc4x3::IfcSurface Ifc4x3::IfcPointOnSurface::BasisSurface() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3::IfcSurface>(); } +::Ifc4x3::IfcSurface Ifc4x3::IfcPointOnSurface::BasisSurface() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3::IfcSurface>(); } void Ifc4x3::IfcPointOnSurface::setBasisSurface(const ::Ifc4x3::IfcSurface& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } double Ifc4x3::IfcPointOnSurface::PointParameterU() const { double v = get_attribute_value(1); return v; } void Ifc4x3::IfcPointOnSurface::setPointParameterU(const double& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } @@ -12791,17 +12791,17 @@ const ifcopenshell::entity& Ifc4x3::IfcPointOnSurface::Class() { return *((ifcop Ifc4x3::IfcPointOnSurface Ifc4x3::IfcPointOnSurface::initialize(::Ifc4x3::IfcSurface v1_BasisSurface, double v2_PointParameterU, double v3_PointParameterV) { set_attribute_value(0, (v1_BasisSurface));set_attribute_value(1, (v2_PointParameterU));set_attribute_value(2, (v3_PointParameterV));; return *this; } // Function implementations for IfcPolyLoop -std::vector< ::Ifc4x3::IfcCartesianPoint > Ifc4x3::IfcPolyLoop::Polygon() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3::IfcCartesianPoint>(es); } -void Ifc4x3::IfcPolyLoop::setPolygon(const std::vector< ::Ifc4x3::IfcCartesianPoint >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } +std::vector< ::Ifc4x3::IfcCartesianPoint > Ifc4x3::IfcPolyLoop::Polygon() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3::IfcCartesianPoint>(es); } +void Ifc4x3::IfcPolyLoop::setPolygon(const std::vector< ::Ifc4x3::IfcCartesianPoint >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } const ifcopenshell::entity& Ifc4x3::IfcPolyLoop::Class() { return *((ifcopenshell::entity*)IFC4X3_types[773]); } -Ifc4x3::IfcPolyLoop Ifc4x3::IfcPolyLoop::initialize(std::vector< ::Ifc4x3::IfcCartesianPoint > v1_Polygon) { set_attribute_value(0, cast_vector(v1_Polygon));; return *this; } +Ifc4x3::IfcPolyLoop Ifc4x3::IfcPolyLoop::initialize(std::vector< ::Ifc4x3::IfcCartesianPoint > v1_Polygon) { set_attribute_value(0, cast_vector(v1_Polygon));; return *this; } // Function implementations for IfcPolygonalBoundedHalfSpace -::Ifc4x3::IfcAxis2Placement3D Ifc4x3::IfcPolygonalBoundedHalfSpace::Position() const { return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3::IfcAxis2Placement3D>(); } +::Ifc4x3::IfcAxis2Placement3D Ifc4x3::IfcPolygonalBoundedHalfSpace::Position() const { return ((express::base)(get_attribute_value(2))).as<::Ifc4x3::IfcAxis2Placement3D>(); } void Ifc4x3::IfcPolygonalBoundedHalfSpace::setPosition(const ::Ifc4x3::IfcAxis2Placement3D& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } -::Ifc4x3::IfcBoundedCurve Ifc4x3::IfcPolygonalBoundedHalfSpace::PolygonalBoundary() const { return ((express::Base)(get_attribute_value(3))).as<::Ifc4x3::IfcBoundedCurve>(); } +::Ifc4x3::IfcBoundedCurve Ifc4x3::IfcPolygonalBoundedHalfSpace::PolygonalBoundary() const { return ((express::base)(get_attribute_value(3))).as<::Ifc4x3::IfcBoundedCurve>(); } void Ifc4x3::IfcPolygonalBoundedHalfSpace::setPolygonalBoundary(const ::Ifc4x3::IfcBoundedCurve& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } @@ -12809,25 +12809,25 @@ const ifcopenshell::entity& Ifc4x3::IfcPolygonalBoundedHalfSpace::Class() { retu Ifc4x3::IfcPolygonalBoundedHalfSpace Ifc4x3::IfcPolygonalBoundedHalfSpace::initialize(::Ifc4x3::IfcSurface v1_BaseSurface, bool v2_AgreementFlag, ::Ifc4x3::IfcAxis2Placement3D v3_Position, ::Ifc4x3::IfcBoundedCurve v4_PolygonalBoundary) { set_attribute_value(0, (v1_BaseSurface));set_attribute_value(1, (v2_AgreementFlag));set_attribute_value(2, (v3_Position));set_attribute_value(3, (v4_PolygonalBoundary));; return *this; } // Function implementations for IfcPolygonalFaceSet -std::vector< ::Ifc4x3::IfcIndexedPolygonalFace > Ifc4x3::IfcPolygonalFaceSet::Faces() const { std::vector es = get_attribute_value(2); return cast_vector<::Ifc4x3::IfcIndexedPolygonalFace>(es); } -void Ifc4x3::IfcPolygonalFaceSet::setFaces(const std::vector< ::Ifc4x3::IfcIndexedPolygonalFace >& v) { set_attribute_value(2, cast_vector(v));if constexpr (false)unset_attribute_value(2); } +std::vector< ::Ifc4x3::IfcIndexedPolygonalFace > Ifc4x3::IfcPolygonalFaceSet::Faces() const { std::vector es = get_attribute_value(2); return cast_vector<::Ifc4x3::IfcIndexedPolygonalFace>(es); } +void Ifc4x3::IfcPolygonalFaceSet::setFaces(const std::vector< ::Ifc4x3::IfcIndexedPolygonalFace >& v) { set_attribute_value(2, cast_vector(v));if constexpr (false)unset_attribute_value(2); } std::optional< std::vector< int64_t > /*[1:?]*/ > Ifc4x3::IfcPolygonalFaceSet::PnIndex() const { if(get_attribute_value(3).isNull()) { return std::nullopt; } std::vector< int64_t > /*[1:?]*/ v = get_attribute_value(3); return v; } void Ifc4x3::IfcPolygonalFaceSet::setPnIndex(const std::optional< std::vector< int64_t > /*[1:?]*/ >& v) { if (v) {set_attribute_value(3, *v);} else {unset_attribute_value(3);} } const ifcopenshell::entity& Ifc4x3::IfcPolygonalFaceSet::Class() { return *((ifcopenshell::entity*)IFC4X3_types[771]); } -Ifc4x3::IfcPolygonalFaceSet Ifc4x3::IfcPolygonalFaceSet::initialize(::Ifc4x3::IfcCartesianPointList3D v1_Coordinates, std::optional< bool > v2_Closed, std::vector< ::Ifc4x3::IfcIndexedPolygonalFace > v3_Faces, std::optional< std::vector< int64_t > /*[1:?]*/ > v4_PnIndex) { set_attribute_value(0, (v1_Coordinates)); if (v2_Closed) {set_attribute_value(1, (*v2_Closed)); }set_attribute_value(2, cast_vector(v3_Faces)); if (v4_PnIndex) {set_attribute_value(3, (*v4_PnIndex)); }; return *this; } +Ifc4x3::IfcPolygonalFaceSet Ifc4x3::IfcPolygonalFaceSet::initialize(::Ifc4x3::IfcCartesianPointList3D v1_Coordinates, std::optional< bool > v2_Closed, std::vector< ::Ifc4x3::IfcIndexedPolygonalFace > v3_Faces, std::optional< std::vector< int64_t > /*[1:?]*/ > v4_PnIndex) { set_attribute_value(0, (v1_Coordinates)); if (v2_Closed) {set_attribute_value(1, (*v2_Closed)); }set_attribute_value(2, cast_vector(v3_Faces)); if (v4_PnIndex) {set_attribute_value(3, (*v4_PnIndex)); }; return *this; } // Function implementations for IfcPolyline -std::vector< ::Ifc4x3::IfcCartesianPoint > Ifc4x3::IfcPolyline::Points() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3::IfcCartesianPoint>(es); } -void Ifc4x3::IfcPolyline::setPoints(const std::vector< ::Ifc4x3::IfcCartesianPoint >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } +std::vector< ::Ifc4x3::IfcCartesianPoint > Ifc4x3::IfcPolyline::Points() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3::IfcCartesianPoint>(es); } +void Ifc4x3::IfcPolyline::setPoints(const std::vector< ::Ifc4x3::IfcCartesianPoint >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } const ifcopenshell::entity& Ifc4x3::IfcPolyline::Class() { return *((ifcopenshell::entity*)IFC4X3_types[772]); } -Ifc4x3::IfcPolyline Ifc4x3::IfcPolyline::initialize(std::vector< ::Ifc4x3::IfcCartesianPoint > v1_Points) { set_attribute_value(0, cast_vector(v1_Points));; return *this; } +Ifc4x3::IfcPolyline Ifc4x3::IfcPolyline::initialize(std::vector< ::Ifc4x3::IfcCartesianPoint > v1_Points) { set_attribute_value(0, cast_vector(v1_Points));; return *this; } // Function implementations for IfcPolynomialCurve -::Ifc4x3::IfcPlacement Ifc4x3::IfcPolynomialCurve::Position() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3::IfcPlacement>(); } +::Ifc4x3::IfcPlacement Ifc4x3::IfcPolynomialCurve::Position() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3::IfcPlacement>(); } void Ifc4x3::IfcPolynomialCurve::setPosition(const ::Ifc4x3::IfcPlacement& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } std::optional< std::vector< double > /*[2:?]*/ > Ifc4x3::IfcPolynomialCurve::CoefficientsX() const { if(get_attribute_value(1).isNull()) { return std::nullopt; } std::vector< double > /*[2:?]*/ v = get_attribute_value(1); return v; } void Ifc4x3::IfcPolynomialCurve::setCoefficientsX(const std::optional< std::vector< double > /*[2:?]*/ >& v) { if (v) {set_attribute_value(1, *v);} else {unset_attribute_value(1);} } @@ -12926,14 +12926,14 @@ std::string Ifc4x3::IfcPresentationLayerAssignment::Name() const { std::string void Ifc4x3::IfcPresentationLayerAssignment::setName(const std::string& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } std::optional< std::string > Ifc4x3::IfcPresentationLayerAssignment::Description() const { if(get_attribute_value(1).isNull()) { return std::nullopt; } std::string v = get_attribute_value(1); return v; } void Ifc4x3::IfcPresentationLayerAssignment::setDescription(const std::optional< std::string >& v) { if (v) {set_attribute_value(1, *v);} else {unset_attribute_value(1);} } -std::vector< ::Ifc4x3::IfcLayeredItem > Ifc4x3::IfcPresentationLayerAssignment::AssignedItems() const { std::vector es = get_attribute_value(2); return cast_vector<::Ifc4x3::IfcLayeredItem>(es); } -void Ifc4x3::IfcPresentationLayerAssignment::setAssignedItems(const std::vector< ::Ifc4x3::IfcLayeredItem >& v) { set_attribute_value(2, cast_vector(v));if constexpr (false)unset_attribute_value(2); } +std::vector< ::Ifc4x3::IfcLayeredItem > Ifc4x3::IfcPresentationLayerAssignment::AssignedItems() const { std::vector es = get_attribute_value(2); return cast_vector<::Ifc4x3::IfcLayeredItem>(es); } +void Ifc4x3::IfcPresentationLayerAssignment::setAssignedItems(const std::vector< ::Ifc4x3::IfcLayeredItem >& v) { set_attribute_value(2, cast_vector(v));if constexpr (false)unset_attribute_value(2); } std::optional< std::string > Ifc4x3::IfcPresentationLayerAssignment::Identifier() const { if(get_attribute_value(3).isNull()) { return std::nullopt; } std::string v = get_attribute_value(3); return v; } void Ifc4x3::IfcPresentationLayerAssignment::setIdentifier(const std::optional< std::string >& v) { if (v) {set_attribute_value(3, *v);} else {unset_attribute_value(3);} } const ifcopenshell::entity& Ifc4x3::IfcPresentationLayerAssignment::Class() { return *((ifcopenshell::entity*)IFC4X3_types[792]); } -Ifc4x3::IfcPresentationLayerAssignment Ifc4x3::IfcPresentationLayerAssignment::initialize(std::string v1_Name, std::optional< std::string > v2_Description, std::vector< ::Ifc4x3::IfcLayeredItem > v3_AssignedItems, std::optional< std::string > v4_Identifier) { set_attribute_value(0, (v1_Name)); if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, cast_vector(v3_AssignedItems)); if (v4_Identifier) {set_attribute_value(3, (*v4_Identifier)); }; return *this; } +Ifc4x3::IfcPresentationLayerAssignment Ifc4x3::IfcPresentationLayerAssignment::initialize(std::string v1_Name, std::optional< std::string > v2_Description, std::vector< ::Ifc4x3::IfcLayeredItem > v3_AssignedItems, std::optional< std::string > v4_Identifier) { set_attribute_value(0, (v1_Name)); if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, cast_vector(v3_AssignedItems)); if (v4_Identifier) {set_attribute_value(3, (*v4_Identifier)); }; return *this; } // Function implementations for IfcPresentationLayerWithStyle boost::logic::tribool Ifc4x3::IfcPresentationLayerWithStyle::LayerOn() const { boost::logic::tribool v = get_attribute_value(4); return v; } @@ -12942,12 +12942,12 @@ boost::logic::tribool Ifc4x3::IfcPresentationLayerWithStyle::LayerFrozen() const void Ifc4x3::IfcPresentationLayerWithStyle::setLayerFrozen(const boost::logic::tribool& v) { set_attribute_value(5, v);if constexpr (false)unset_attribute_value(5); } boost::logic::tribool Ifc4x3::IfcPresentationLayerWithStyle::LayerBlocked() const { boost::logic::tribool v = get_attribute_value(6); return v; } void Ifc4x3::IfcPresentationLayerWithStyle::setLayerBlocked(const boost::logic::tribool& v) { set_attribute_value(6, v);if constexpr (false)unset_attribute_value(6); } -std::vector< ::Ifc4x3::IfcPresentationStyle > Ifc4x3::IfcPresentationLayerWithStyle::LayerStyles() const { std::vector es = get_attribute_value(7); return cast_vector<::Ifc4x3::IfcPresentationStyle>(es); } -void Ifc4x3::IfcPresentationLayerWithStyle::setLayerStyles(const std::vector< ::Ifc4x3::IfcPresentationStyle >& v) { set_attribute_value(7, cast_vector(v));if constexpr (false)unset_attribute_value(7); } +std::vector< ::Ifc4x3::IfcPresentationStyle > Ifc4x3::IfcPresentationLayerWithStyle::LayerStyles() const { std::vector es = get_attribute_value(7); return cast_vector<::Ifc4x3::IfcPresentationStyle>(es); } +void Ifc4x3::IfcPresentationLayerWithStyle::setLayerStyles(const std::vector< ::Ifc4x3::IfcPresentationStyle >& v) { set_attribute_value(7, cast_vector(v));if constexpr (false)unset_attribute_value(7); } const ifcopenshell::entity& Ifc4x3::IfcPresentationLayerWithStyle::Class() { return *((ifcopenshell::entity*)IFC4X3_types[793]); } -Ifc4x3::IfcPresentationLayerWithStyle Ifc4x3::IfcPresentationLayerWithStyle::initialize(std::string v1_Name, std::optional< std::string > v2_Description, std::vector< ::Ifc4x3::IfcLayeredItem > v3_AssignedItems, std::optional< std::string > v4_Identifier, boost::logic::tribool v5_LayerOn, boost::logic::tribool v6_LayerFrozen, boost::logic::tribool v7_LayerBlocked, std::vector< ::Ifc4x3::IfcPresentationStyle > v8_LayerStyles) { set_attribute_value(0, (v1_Name)); if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, cast_vector(v3_AssignedItems)); if (v4_Identifier) {set_attribute_value(3, (*v4_Identifier)); }set_attribute_value(4, (v5_LayerOn));set_attribute_value(5, (v6_LayerFrozen));set_attribute_value(6, (v7_LayerBlocked));set_attribute_value(7, cast_vector(v8_LayerStyles));; return *this; } +Ifc4x3::IfcPresentationLayerWithStyle Ifc4x3::IfcPresentationLayerWithStyle::initialize(std::string v1_Name, std::optional< std::string > v2_Description, std::vector< ::Ifc4x3::IfcLayeredItem > v3_AssignedItems, std::optional< std::string > v4_Identifier, boost::logic::tribool v5_LayerOn, boost::logic::tribool v6_LayerFrozen, boost::logic::tribool v7_LayerBlocked, std::vector< ::Ifc4x3::IfcPresentationStyle > v8_LayerStyles) { set_attribute_value(0, (v1_Name)); if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, cast_vector(v3_AssignedItems)); if (v4_Identifier) {set_attribute_value(3, (*v4_Identifier)); }set_attribute_value(4, (v5_LayerOn));set_attribute_value(5, (v6_LayerFrozen));set_attribute_value(6, (v7_LayerBlocked));set_attribute_value(7, cast_vector(v8_LayerStyles));; return *this; } // Function implementations for IfcPresentationStyle std::optional< std::string > Ifc4x3::IfcPresentationStyle::Name() const { if(get_attribute_value(0).isNull()) { return std::nullopt; } std::string v = get_attribute_value(0); return v; } @@ -12971,7 +12971,7 @@ void Ifc4x3::IfcProcedureType::setPredefinedType(const ::Ifc4x3::IfcProcedureTyp const ifcopenshell::entity& Ifc4x3::IfcProcedureType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[797]); } -Ifc4x3::IfcProcedureType Ifc4x3::IfcProcedureType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::string > v7_Identification, std::optional< std::string > v8_LongDescription, std::optional< std::string > v9_ProcessType, ::Ifc4x3::IfcProcedureTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_Identification) {set_attribute_value(6, (*v7_Identification)); } if (v8_LongDescription) {set_attribute_value(7, (*v8_LongDescription)); } if (v9_ProcessType) {set_attribute_value(8, (*v9_ProcessType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcProcedureTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3::IfcProcedureType Ifc4x3::IfcProcedureType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::string > v7_Identification, std::optional< std::string > v8_LongDescription, std::optional< std::string > v9_ProcessType, ::Ifc4x3::IfcProcedureTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_Identification) {set_attribute_value(6, (*v7_Identification)); } if (v8_LongDescription) {set_attribute_value(7, (*v8_LongDescription)); } if (v9_ProcessType) {set_attribute_value(8, (*v9_ProcessType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcProcedureTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcProcess std::optional< std::string > Ifc4x3::IfcProcess::Identification() const { if(get_attribute_value(5).isNull()) { return std::nullopt; } std::string v = get_attribute_value(5); return v; } @@ -12987,9 +12987,9 @@ const ifcopenshell::entity& Ifc4x3::IfcProcess::Class() { return *((ifcopenshell Ifc4x3::IfcProcess Ifc4x3::IfcProcess::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, std::optional< std::string > v6_Identification, std::optional< std::string > v7_LongDescription) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); } if (v6_Identification) {set_attribute_value(5, (*v6_Identification)); } if (v7_LongDescription) {set_attribute_value(6, (*v7_LongDescription)); }; return *this; } // Function implementations for IfcProduct -::Ifc4x3::IfcObjectPlacement Ifc4x3::IfcProduct::ObjectPlacement() const { if(get_attribute_value(5).isNull()) { return ::Ifc4x3::IfcObjectPlacement{}; } return ((express::Base)(get_attribute_value(5))).as<::Ifc4x3::IfcObjectPlacement>(); } +::Ifc4x3::IfcObjectPlacement Ifc4x3::IfcProduct::ObjectPlacement() const { if(get_attribute_value(5).isNull()) { return ::Ifc4x3::IfcObjectPlacement{}; } return ((express::base)(get_attribute_value(5))).as<::Ifc4x3::IfcObjectPlacement>(); } void Ifc4x3::IfcProduct::setObjectPlacement(const ::Ifc4x3::IfcObjectPlacement& v) { set_attribute_value(5, v);if constexpr (false)unset_attribute_value(5); } -::Ifc4x3::IfcProductRepresentation Ifc4x3::IfcProduct::Representation() const { if(get_attribute_value(6).isNull()) { return ::Ifc4x3::IfcProductRepresentation{}; } return ((express::Base)(get_attribute_value(6))).as<::Ifc4x3::IfcProductRepresentation>(); } +::Ifc4x3::IfcProductRepresentation Ifc4x3::IfcProduct::Representation() const { if(get_attribute_value(6).isNull()) { return ::Ifc4x3::IfcProductRepresentation{}; } return ((express::base)(get_attribute_value(6))).as<::Ifc4x3::IfcProductRepresentation>(); } void Ifc4x3::IfcProduct::setRepresentation(const ::Ifc4x3::IfcProductRepresentation& v) { set_attribute_value(6, v);if constexpr (false)unset_attribute_value(6); } std::vector<::Ifc4x3::IfcRelAssignsToProduct> Ifc4x3::IfcProduct::ReferencedBy() const { return cast_vector(file()->get_inverse(data()->id(), IFC4X3_types[907], 6)); } @@ -13005,19 +13005,19 @@ std::vector<::Ifc4x3::IfcProduct> Ifc4x3::IfcProductDefinitionShape::ShapeOfProd std::vector<::Ifc4x3::IfcShapeAspect> Ifc4x3::IfcProductDefinitionShape::HasShapeAspects() const { return cast_vector(file()->get_inverse(data()->id(), IFC4X3_types[1006], 4)); } const ifcopenshell::entity& Ifc4x3::IfcProductDefinitionShape::Class() { return *((ifcopenshell::entity*)IFC4X3_types[802]); } -Ifc4x3::IfcProductDefinitionShape Ifc4x3::IfcProductDefinitionShape::initialize(std::optional< std::string > v1_Name, std::optional< std::string > v2_Description, std::vector< ::Ifc4x3::IfcRepresentation > v3_Representations) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); } if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, cast_vector(v3_Representations));; return *this; } +Ifc4x3::IfcProductDefinitionShape Ifc4x3::IfcProductDefinitionShape::initialize(std::optional< std::string > v1_Name, std::optional< std::string > v2_Description, std::vector< ::Ifc4x3::IfcRepresentation > v3_Representations) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); } if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, cast_vector(v3_Representations));; return *this; } // Function implementations for IfcProductRepresentation std::optional< std::string > Ifc4x3::IfcProductRepresentation::Name() const { if(get_attribute_value(0).isNull()) { return std::nullopt; } std::string v = get_attribute_value(0); return v; } void Ifc4x3::IfcProductRepresentation::setName(const std::optional< std::string >& v) { if (v) {set_attribute_value(0, *v);} else {unset_attribute_value(0);} } std::optional< std::string > Ifc4x3::IfcProductRepresentation::Description() const { if(get_attribute_value(1).isNull()) { return std::nullopt; } std::string v = get_attribute_value(1); return v; } void Ifc4x3::IfcProductRepresentation::setDescription(const std::optional< std::string >& v) { if (v) {set_attribute_value(1, *v);} else {unset_attribute_value(1);} } -std::vector< ::Ifc4x3::IfcRepresentation > Ifc4x3::IfcProductRepresentation::Representations() const { std::vector es = get_attribute_value(2); return cast_vector<::Ifc4x3::IfcRepresentation>(es); } -void Ifc4x3::IfcProductRepresentation::setRepresentations(const std::vector< ::Ifc4x3::IfcRepresentation >& v) { set_attribute_value(2, cast_vector(v));if constexpr (false)unset_attribute_value(2); } +std::vector< ::Ifc4x3::IfcRepresentation > Ifc4x3::IfcProductRepresentation::Representations() const { std::vector es = get_attribute_value(2); return cast_vector<::Ifc4x3::IfcRepresentation>(es); } +void Ifc4x3::IfcProductRepresentation::setRepresentations(const std::vector< ::Ifc4x3::IfcRepresentation >& v) { set_attribute_value(2, cast_vector(v));if constexpr (false)unset_attribute_value(2); } const ifcopenshell::entity& Ifc4x3::IfcProductRepresentation::Class() { return *((ifcopenshell::entity*)IFC4X3_types[803]); } -Ifc4x3::IfcProductRepresentation Ifc4x3::IfcProductRepresentation::initialize(std::optional< std::string > v1_Name, std::optional< std::string > v2_Description, std::vector< ::Ifc4x3::IfcRepresentation > v3_Representations) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); } if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, cast_vector(v3_Representations));; return *this; } +Ifc4x3::IfcProductRepresentation Ifc4x3::IfcProductRepresentation::initialize(std::optional< std::string > v1_Name, std::optional< std::string > v2_Description, std::vector< ::Ifc4x3::IfcRepresentation > v3_Representations) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); } if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, cast_vector(v3_Representations));; return *this; } // Function implementations for IfcProfileDef ::Ifc4x3::IfcProfileTypeEnum::Value Ifc4x3::IfcProfileDef::ProfileType() const { return ::Ifc4x3::IfcProfileTypeEnum::FromString(get_attribute_value(0)); } @@ -13032,24 +13032,24 @@ const ifcopenshell::entity& Ifc4x3::IfcProfileDef::Class() { return *((ifcopensh Ifc4x3::IfcProfileDef Ifc4x3::IfcProfileDef::initialize(::Ifc4x3::IfcProfileTypeEnum::Value v1_ProfileType, std::optional< std::string > v2_ProfileName) { set_attribute_value(0, (enumeration_reference(&::Ifc4x3::IfcProfileTypeEnum::Class(),(size_t)v1_ProfileType))); if (v2_ProfileName) {set_attribute_value(1, (*v2_ProfileName)); }; return *this; } // Function implementations for IfcProfileProperties -::Ifc4x3::IfcProfileDef Ifc4x3::IfcProfileProperties::ProfileDefinition() const { return ((express::Base)(get_attribute_value(3))).as<::Ifc4x3::IfcProfileDef>(); } +::Ifc4x3::IfcProfileDef Ifc4x3::IfcProfileProperties::ProfileDefinition() const { return ((express::base)(get_attribute_value(3))).as<::Ifc4x3::IfcProfileDef>(); } void Ifc4x3::IfcProfileProperties::setProfileDefinition(const ::Ifc4x3::IfcProfileDef& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } const ifcopenshell::entity& Ifc4x3::IfcProfileProperties::Class() { return *((ifcopenshell::entity*)IFC4X3_types[807]); } -Ifc4x3::IfcProfileProperties Ifc4x3::IfcProfileProperties::initialize(std::optional< std::string > v1_Name, std::optional< std::string > v2_Description, std::vector< ::Ifc4x3::IfcProperty > v3_Properties, ::Ifc4x3::IfcProfileDef v4_ProfileDefinition) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); } if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, cast_vector(v3_Properties));set_attribute_value(3, (v4_ProfileDefinition));; return *this; } +Ifc4x3::IfcProfileProperties Ifc4x3::IfcProfileProperties::initialize(std::optional< std::string > v1_Name, std::optional< std::string > v2_Description, std::vector< ::Ifc4x3::IfcProperty > v3_Properties, ::Ifc4x3::IfcProfileDef v4_ProfileDefinition) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); } if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, cast_vector(v3_Properties));set_attribute_value(3, (v4_ProfileDefinition));; return *this; } // Function implementations for IfcProject const ifcopenshell::entity& Ifc4x3::IfcProject::Class() { return *((ifcopenshell::entity*)IFC4X3_types[809]); } -Ifc4x3::IfcProject Ifc4x3::IfcProject::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, std::optional< std::string > v6_LongName, std::optional< std::string > v7_Phase, std::optional< std::vector< ::Ifc4x3::IfcRepresentationContext > > v8_RepresentationContexts, ::Ifc4x3::IfcUnitAssignment v9_UnitsInContext) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); } if (v6_LongName) {set_attribute_value(5, (*v6_LongName)); } if (v7_Phase) {set_attribute_value(6, (*v7_Phase)); } if (v8_RepresentationContexts) {set_attribute_value(7, cast_vector(*v8_RepresentationContexts)); }set_attribute_value(8, (v9_UnitsInContext));; return *this; } +Ifc4x3::IfcProject Ifc4x3::IfcProject::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, std::optional< std::string > v6_LongName, std::optional< std::string > v7_Phase, std::optional< std::vector< ::Ifc4x3::IfcRepresentationContext > > v8_RepresentationContexts, ::Ifc4x3::IfcUnitAssignment v9_UnitsInContext) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); } if (v6_LongName) {set_attribute_value(5, (*v6_LongName)); } if (v7_Phase) {set_attribute_value(6, (*v7_Phase)); } if (v8_RepresentationContexts) {set_attribute_value(7, cast_vector(*v8_RepresentationContexts)); }set_attribute_value(8, (v9_UnitsInContext));; return *this; } // Function implementations for IfcProjectLibrary const ifcopenshell::entity& Ifc4x3::IfcProjectLibrary::Class() { return *((ifcopenshell::entity*)IFC4X3_types[814]); } -Ifc4x3::IfcProjectLibrary Ifc4x3::IfcProjectLibrary::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, std::optional< std::string > v6_LongName, std::optional< std::string > v7_Phase, std::optional< std::vector< ::Ifc4x3::IfcRepresentationContext > > v8_RepresentationContexts, ::Ifc4x3::IfcUnitAssignment v9_UnitsInContext) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); } if (v6_LongName) {set_attribute_value(5, (*v6_LongName)); } if (v7_Phase) {set_attribute_value(6, (*v7_Phase)); } if (v8_RepresentationContexts) {set_attribute_value(7, cast_vector(*v8_RepresentationContexts)); }set_attribute_value(8, (v9_UnitsInContext));; return *this; } +Ifc4x3::IfcProjectLibrary Ifc4x3::IfcProjectLibrary::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, std::optional< std::string > v6_LongName, std::optional< std::string > v7_Phase, std::optional< std::vector< ::Ifc4x3::IfcRepresentationContext > > v8_RepresentationContexts, ::Ifc4x3::IfcUnitAssignment v9_UnitsInContext) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); } if (v6_LongName) {set_attribute_value(5, (*v6_LongName)); } if (v7_Phase) {set_attribute_value(6, (*v7_Phase)); } if (v8_RepresentationContexts) {set_attribute_value(7, cast_vector(*v8_RepresentationContexts)); }set_attribute_value(8, (v9_UnitsInContext));; return *this; } // Function implementations for IfcProjectOrder std::optional< ::Ifc4x3::IfcProjectOrderTypeEnum::Value > Ifc4x3::IfcProjectOrder::PredefinedType() const { if(get_attribute_value(6).isNull()) { return std::nullopt; } return ::Ifc4x3::IfcProjectOrderTypeEnum::FromString(get_attribute_value(6)); } @@ -13068,7 +13068,7 @@ std::optional< std::string > Ifc4x3::IfcProjectedCRS::MapProjection() const { if void Ifc4x3::IfcProjectedCRS::setMapProjection(const std::optional< std::string >& v) { if (v) {set_attribute_value(4, *v);} else {unset_attribute_value(4);} } std::optional< std::string > Ifc4x3::IfcProjectedCRS::MapZone() const { if(get_attribute_value(5).isNull()) { return std::nullopt; } std::string v = get_attribute_value(5); return v; } void Ifc4x3::IfcProjectedCRS::setMapZone(const std::optional< std::string >& v) { if (v) {set_attribute_value(5, *v);} else {unset_attribute_value(5);} } -::Ifc4x3::IfcNamedUnit Ifc4x3::IfcProjectedCRS::MapUnit() const { if(get_attribute_value(6).isNull()) { return ::Ifc4x3::IfcNamedUnit{}; } return ((express::Base)(get_attribute_value(6))).as<::Ifc4x3::IfcNamedUnit>(); } +::Ifc4x3::IfcNamedUnit Ifc4x3::IfcProjectedCRS::MapUnit() const { if(get_attribute_value(6).isNull()) { return ::Ifc4x3::IfcNamedUnit{}; } return ((express::base)(get_attribute_value(6))).as<::Ifc4x3::IfcNamedUnit>(); } void Ifc4x3::IfcProjectedCRS::setMapUnit(const ::Ifc4x3::IfcNamedUnit& v) { set_attribute_value(6, v);if constexpr (false)unset_attribute_value(6); } @@ -13107,13 +13107,13 @@ const ifcopenshell::entity& Ifc4x3::IfcPropertyAbstraction::Class() { return *(( Ifc4x3::IfcPropertyAbstraction Ifc4x3::IfcPropertyAbstraction::initialize() { ; return *this; } // Function implementations for IfcPropertyBoundedValue -::Ifc4x3::IfcValue Ifc4x3::IfcPropertyBoundedValue::UpperBoundValue() const { if(get_attribute_value(2).isNull()) { return ::Ifc4x3::IfcValue{}; } return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3::IfcValue>(); } +::Ifc4x3::IfcValue Ifc4x3::IfcPropertyBoundedValue::UpperBoundValue() const { if(get_attribute_value(2).isNull()) { return ::Ifc4x3::IfcValue{}; } return ((express::base)(get_attribute_value(2))).as<::Ifc4x3::IfcValue>(); } void Ifc4x3::IfcPropertyBoundedValue::setUpperBoundValue(const ::Ifc4x3::IfcValue& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } -::Ifc4x3::IfcValue Ifc4x3::IfcPropertyBoundedValue::LowerBoundValue() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3::IfcValue{}; } return ((express::Base)(get_attribute_value(3))).as<::Ifc4x3::IfcValue>(); } +::Ifc4x3::IfcValue Ifc4x3::IfcPropertyBoundedValue::LowerBoundValue() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3::IfcValue{}; } return ((express::base)(get_attribute_value(3))).as<::Ifc4x3::IfcValue>(); } void Ifc4x3::IfcPropertyBoundedValue::setLowerBoundValue(const ::Ifc4x3::IfcValue& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } -::Ifc4x3::IfcUnit Ifc4x3::IfcPropertyBoundedValue::Unit() const { if(get_attribute_value(4).isNull()) { return ::Ifc4x3::IfcUnit{}; } return ((express::Base)(get_attribute_value(4))).as<::Ifc4x3::IfcUnit>(); } +::Ifc4x3::IfcUnit Ifc4x3::IfcPropertyBoundedValue::Unit() const { if(get_attribute_value(4).isNull()) { return ::Ifc4x3::IfcUnit{}; } return ((express::base)(get_attribute_value(4))).as<::Ifc4x3::IfcUnit>(); } void Ifc4x3::IfcPropertyBoundedValue::setUnit(const ::Ifc4x3::IfcUnit& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } -::Ifc4x3::IfcValue Ifc4x3::IfcPropertyBoundedValue::SetPointValue() const { if(get_attribute_value(5).isNull()) { return ::Ifc4x3::IfcValue{}; } return ((express::Base)(get_attribute_value(5))).as<::Ifc4x3::IfcValue>(); } +::Ifc4x3::IfcValue Ifc4x3::IfcPropertyBoundedValue::SetPointValue() const { if(get_attribute_value(5).isNull()) { return ::Ifc4x3::IfcValue{}; } return ((express::base)(get_attribute_value(5))).as<::Ifc4x3::IfcValue>(); } void Ifc4x3::IfcPropertyBoundedValue::setSetPointValue(const ::Ifc4x3::IfcValue& v) { set_attribute_value(5, v);if constexpr (false)unset_attribute_value(5); } @@ -13129,9 +13129,9 @@ const ifcopenshell::entity& Ifc4x3::IfcPropertyDefinition::Class() { return *((i Ifc4x3::IfcPropertyDefinition Ifc4x3::IfcPropertyDefinition::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }; return *this; } // Function implementations for IfcPropertyDependencyRelationship -::Ifc4x3::IfcProperty Ifc4x3::IfcPropertyDependencyRelationship::DependingProperty() const { return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3::IfcProperty>(); } +::Ifc4x3::IfcProperty Ifc4x3::IfcPropertyDependencyRelationship::DependingProperty() const { return ((express::base)(get_attribute_value(2))).as<::Ifc4x3::IfcProperty>(); } void Ifc4x3::IfcPropertyDependencyRelationship::setDependingProperty(const ::Ifc4x3::IfcProperty& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } -::Ifc4x3::IfcProperty Ifc4x3::IfcPropertyDependencyRelationship::DependantProperty() const { return ((express::Base)(get_attribute_value(3))).as<::Ifc4x3::IfcProperty>(); } +::Ifc4x3::IfcProperty Ifc4x3::IfcPropertyDependencyRelationship::DependantProperty() const { return ((express::base)(get_attribute_value(3))).as<::Ifc4x3::IfcProperty>(); } void Ifc4x3::IfcPropertyDependencyRelationship::setDependantProperty(const ::Ifc4x3::IfcProperty& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } std::optional< std::string > Ifc4x3::IfcPropertyDependencyRelationship::Expression() const { if(get_attribute_value(4).isNull()) { return std::nullopt; } std::string v = get_attribute_value(4); return v; } void Ifc4x3::IfcPropertyDependencyRelationship::setExpression(const std::optional< std::string >& v) { if (v) {set_attribute_value(4, *v);} else {unset_attribute_value(4);} } @@ -13141,41 +13141,41 @@ const ifcopenshell::entity& Ifc4x3::IfcPropertyDependencyRelationship::Class() { Ifc4x3::IfcPropertyDependencyRelationship Ifc4x3::IfcPropertyDependencyRelationship::initialize(std::optional< std::string > v1_Name, std::optional< std::string > v2_Description, ::Ifc4x3::IfcProperty v3_DependingProperty, ::Ifc4x3::IfcProperty v4_DependantProperty, std::optional< std::string > v5_Expression) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); } if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, (v3_DependingProperty));set_attribute_value(3, (v4_DependantProperty)); if (v5_Expression) {set_attribute_value(4, (*v5_Expression)); }; return *this; } // Function implementations for IfcPropertyEnumeratedValue -std::optional< std::vector< ::Ifc4x3::IfcValue > > Ifc4x3::IfcPropertyEnumeratedValue::EnumerationValues() const { if(get_attribute_value(2).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(2); return cast_vector<::Ifc4x3::IfcValue>(es); } -void Ifc4x3::IfcPropertyEnumeratedValue::setEnumerationValues(const std::optional< std::vector< ::Ifc4x3::IfcValue > >& v) { if (v) {set_attribute_value(2, cast_vector(*v));} else {unset_attribute_value(2);} } -::Ifc4x3::IfcPropertyEnumeration Ifc4x3::IfcPropertyEnumeratedValue::EnumerationReference() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3::IfcPropertyEnumeration{}; } return ((express::Base)(get_attribute_value(3))).as<::Ifc4x3::IfcPropertyEnumeration>(); } +std::optional< std::vector< ::Ifc4x3::IfcValue > > Ifc4x3::IfcPropertyEnumeratedValue::EnumerationValues() const { if(get_attribute_value(2).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(2); return cast_vector<::Ifc4x3::IfcValue>(es); } +void Ifc4x3::IfcPropertyEnumeratedValue::setEnumerationValues(const std::optional< std::vector< ::Ifc4x3::IfcValue > >& v) { if (v) {set_attribute_value(2, cast_vector(*v));} else {unset_attribute_value(2);} } +::Ifc4x3::IfcPropertyEnumeration Ifc4x3::IfcPropertyEnumeratedValue::EnumerationReference() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3::IfcPropertyEnumeration{}; } return ((express::base)(get_attribute_value(3))).as<::Ifc4x3::IfcPropertyEnumeration>(); } void Ifc4x3::IfcPropertyEnumeratedValue::setEnumerationReference(const ::Ifc4x3::IfcPropertyEnumeration& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } const ifcopenshell::entity& Ifc4x3::IfcPropertyEnumeratedValue::Class() { return *((ifcopenshell::entity*)IFC4X3_types[822]); } -Ifc4x3::IfcPropertyEnumeratedValue Ifc4x3::IfcPropertyEnumeratedValue::initialize(std::string v1_Name, std::optional< std::string > v2_Specification, std::optional< std::vector< ::Ifc4x3::IfcValue > > v3_EnumerationValues, ::Ifc4x3::IfcPropertyEnumeration v4_EnumerationReference) { set_attribute_value(0, (v1_Name)); if (v2_Specification) {set_attribute_value(1, (*v2_Specification)); } if (v3_EnumerationValues) {set_attribute_value(2, cast_vector(*v3_EnumerationValues)); }set_attribute_value(3, (v4_EnumerationReference));; return *this; } +Ifc4x3::IfcPropertyEnumeratedValue Ifc4x3::IfcPropertyEnumeratedValue::initialize(std::string v1_Name, std::optional< std::string > v2_Specification, std::optional< std::vector< ::Ifc4x3::IfcValue > > v3_EnumerationValues, ::Ifc4x3::IfcPropertyEnumeration v4_EnumerationReference) { set_attribute_value(0, (v1_Name)); if (v2_Specification) {set_attribute_value(1, (*v2_Specification)); } if (v3_EnumerationValues) {set_attribute_value(2, cast_vector(*v3_EnumerationValues)); }set_attribute_value(3, (v4_EnumerationReference));; return *this; } // Function implementations for IfcPropertyEnumeration std::string Ifc4x3::IfcPropertyEnumeration::Name() const { std::string v = get_attribute_value(0); return v; } void Ifc4x3::IfcPropertyEnumeration::setName(const std::string& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } -std::vector< ::Ifc4x3::IfcValue > Ifc4x3::IfcPropertyEnumeration::EnumerationValues() const { std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3::IfcValue>(es); } -void Ifc4x3::IfcPropertyEnumeration::setEnumerationValues(const std::vector< ::Ifc4x3::IfcValue >& v) { set_attribute_value(1, cast_vector(v));if constexpr (false)unset_attribute_value(1); } -::Ifc4x3::IfcUnit Ifc4x3::IfcPropertyEnumeration::Unit() const { if(get_attribute_value(2).isNull()) { return ::Ifc4x3::IfcUnit{}; } return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3::IfcUnit>(); } +std::vector< ::Ifc4x3::IfcValue > Ifc4x3::IfcPropertyEnumeration::EnumerationValues() const { std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3::IfcValue>(es); } +void Ifc4x3::IfcPropertyEnumeration::setEnumerationValues(const std::vector< ::Ifc4x3::IfcValue >& v) { set_attribute_value(1, cast_vector(v));if constexpr (false)unset_attribute_value(1); } +::Ifc4x3::IfcUnit Ifc4x3::IfcPropertyEnumeration::Unit() const { if(get_attribute_value(2).isNull()) { return ::Ifc4x3::IfcUnit{}; } return ((express::base)(get_attribute_value(2))).as<::Ifc4x3::IfcUnit>(); } void Ifc4x3::IfcPropertyEnumeration::setUnit(const ::Ifc4x3::IfcUnit& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } const ifcopenshell::entity& Ifc4x3::IfcPropertyEnumeration::Class() { return *((ifcopenshell::entity*)IFC4X3_types[823]); } -Ifc4x3::IfcPropertyEnumeration Ifc4x3::IfcPropertyEnumeration::initialize(std::string v1_Name, std::vector< ::Ifc4x3::IfcValue > v2_EnumerationValues, ::Ifc4x3::IfcUnit v3_Unit) { set_attribute_value(0, (v1_Name));set_attribute_value(1, cast_vector(v2_EnumerationValues));set_attribute_value(2, (v3_Unit));; return *this; } +Ifc4x3::IfcPropertyEnumeration Ifc4x3::IfcPropertyEnumeration::initialize(std::string v1_Name, std::vector< ::Ifc4x3::IfcValue > v2_EnumerationValues, ::Ifc4x3::IfcUnit v3_Unit) { set_attribute_value(0, (v1_Name));set_attribute_value(1, cast_vector(v2_EnumerationValues));set_attribute_value(2, (v3_Unit));; return *this; } // Function implementations for IfcPropertyListValue -std::optional< std::vector< ::Ifc4x3::IfcValue > > Ifc4x3::IfcPropertyListValue::ListValues() const { if(get_attribute_value(2).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(2); return cast_vector<::Ifc4x3::IfcValue>(es); } -void Ifc4x3::IfcPropertyListValue::setListValues(const std::optional< std::vector< ::Ifc4x3::IfcValue > >& v) { if (v) {set_attribute_value(2, cast_vector(*v));} else {unset_attribute_value(2);} } -::Ifc4x3::IfcUnit Ifc4x3::IfcPropertyListValue::Unit() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3::IfcUnit{}; } return ((express::Base)(get_attribute_value(3))).as<::Ifc4x3::IfcUnit>(); } +std::optional< std::vector< ::Ifc4x3::IfcValue > > Ifc4x3::IfcPropertyListValue::ListValues() const { if(get_attribute_value(2).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(2); return cast_vector<::Ifc4x3::IfcValue>(es); } +void Ifc4x3::IfcPropertyListValue::setListValues(const std::optional< std::vector< ::Ifc4x3::IfcValue > >& v) { if (v) {set_attribute_value(2, cast_vector(*v));} else {unset_attribute_value(2);} } +::Ifc4x3::IfcUnit Ifc4x3::IfcPropertyListValue::Unit() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3::IfcUnit{}; } return ((express::base)(get_attribute_value(3))).as<::Ifc4x3::IfcUnit>(); } void Ifc4x3::IfcPropertyListValue::setUnit(const ::Ifc4x3::IfcUnit& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } const ifcopenshell::entity& Ifc4x3::IfcPropertyListValue::Class() { return *((ifcopenshell::entity*)IFC4X3_types[824]); } -Ifc4x3::IfcPropertyListValue Ifc4x3::IfcPropertyListValue::initialize(std::string v1_Name, std::optional< std::string > v2_Specification, std::optional< std::vector< ::Ifc4x3::IfcValue > > v3_ListValues, ::Ifc4x3::IfcUnit v4_Unit) { set_attribute_value(0, (v1_Name)); if (v2_Specification) {set_attribute_value(1, (*v2_Specification)); } if (v3_ListValues) {set_attribute_value(2, cast_vector(*v3_ListValues)); }set_attribute_value(3, (v4_Unit));; return *this; } +Ifc4x3::IfcPropertyListValue Ifc4x3::IfcPropertyListValue::initialize(std::string v1_Name, std::optional< std::string > v2_Specification, std::optional< std::vector< ::Ifc4x3::IfcValue > > v3_ListValues, ::Ifc4x3::IfcUnit v4_Unit) { set_attribute_value(0, (v1_Name)); if (v2_Specification) {set_attribute_value(1, (*v2_Specification)); } if (v3_ListValues) {set_attribute_value(2, cast_vector(*v3_ListValues)); }set_attribute_value(3, (v4_Unit));; return *this; } // Function implementations for IfcPropertyReferenceValue std::optional< std::string > Ifc4x3::IfcPropertyReferenceValue::UsageName() const { if(get_attribute_value(2).isNull()) { return std::nullopt; } std::string v = get_attribute_value(2); return v; } void Ifc4x3::IfcPropertyReferenceValue::setUsageName(const std::optional< std::string >& v) { if (v) {set_attribute_value(2, *v);} else {unset_attribute_value(2);} } -::Ifc4x3::IfcObjectReferenceSelect Ifc4x3::IfcPropertyReferenceValue::PropertyReference() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3::IfcObjectReferenceSelect{}; } return ((express::Base)(get_attribute_value(3))).as<::Ifc4x3::IfcObjectReferenceSelect>(); } +::Ifc4x3::IfcObjectReferenceSelect Ifc4x3::IfcPropertyReferenceValue::PropertyReference() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3::IfcObjectReferenceSelect{}; } return ((express::base)(get_attribute_value(3))).as<::Ifc4x3::IfcObjectReferenceSelect>(); } void Ifc4x3::IfcPropertyReferenceValue::setPropertyReference(const ::Ifc4x3::IfcObjectReferenceSelect& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } @@ -13183,12 +13183,12 @@ const ifcopenshell::entity& Ifc4x3::IfcPropertyReferenceValue::Class() { return Ifc4x3::IfcPropertyReferenceValue Ifc4x3::IfcPropertyReferenceValue::initialize(std::string v1_Name, std::optional< std::string > v2_Specification, std::optional< std::string > v3_UsageName, ::Ifc4x3::IfcObjectReferenceSelect v4_PropertyReference) { set_attribute_value(0, (v1_Name)); if (v2_Specification) {set_attribute_value(1, (*v2_Specification)); } if (v3_UsageName) {set_attribute_value(2, (*v3_UsageName)); }set_attribute_value(3, (v4_PropertyReference));; return *this; } // Function implementations for IfcPropertySet -std::vector< ::Ifc4x3::IfcProperty > Ifc4x3::IfcPropertySet::HasProperties() const { std::vector es = get_attribute_value(4); return cast_vector<::Ifc4x3::IfcProperty>(es); } -void Ifc4x3::IfcPropertySet::setHasProperties(const std::vector< ::Ifc4x3::IfcProperty >& v) { set_attribute_value(4, cast_vector(v));if constexpr (false)unset_attribute_value(4); } +std::vector< ::Ifc4x3::IfcProperty > Ifc4x3::IfcPropertySet::HasProperties() const { std::vector es = get_attribute_value(4); return cast_vector<::Ifc4x3::IfcProperty>(es); } +void Ifc4x3::IfcPropertySet::setHasProperties(const std::vector< ::Ifc4x3::IfcProperty >& v) { set_attribute_value(4, cast_vector(v));if constexpr (false)unset_attribute_value(4); } const ifcopenshell::entity& Ifc4x3::IfcPropertySet::Class() { return *((ifcopenshell::entity*)IFC4X3_types[826]); } -Ifc4x3::IfcPropertySet Ifc4x3::IfcPropertySet::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3::IfcProperty > v5_HasProperties) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_HasProperties));; return *this; } +Ifc4x3::IfcPropertySet Ifc4x3::IfcPropertySet::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3::IfcProperty > v5_HasProperties) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_HasProperties));; return *this; } // Function implementations for IfcPropertySetDefinition @@ -13204,18 +13204,18 @@ std::optional< ::Ifc4x3::IfcPropertySetTemplateTypeEnum::Value > Ifc4x3::IfcProp void Ifc4x3::IfcPropertySetTemplate::setTemplateType(const std::optional< ::Ifc4x3::IfcPropertySetTemplateTypeEnum::Value >& v) { if (v) {set_attribute_value(4, enumeration_reference(&::Ifc4x3::IfcPropertySetTemplateTypeEnum::Class(), (size_t) *v));} else {unset_attribute_value(4);} } std::optional< std::string > Ifc4x3::IfcPropertySetTemplate::ApplicableEntity() const { if(get_attribute_value(5).isNull()) { return std::nullopt; } std::string v = get_attribute_value(5); return v; } void Ifc4x3::IfcPropertySetTemplate::setApplicableEntity(const std::optional< std::string >& v) { if (v) {set_attribute_value(5, *v);} else {unset_attribute_value(5);} } -std::vector< ::Ifc4x3::IfcPropertyTemplate > Ifc4x3::IfcPropertySetTemplate::HasPropertyTemplates() const { std::vector es = get_attribute_value(6); return cast_vector<::Ifc4x3::IfcPropertyTemplate>(es); } -void Ifc4x3::IfcPropertySetTemplate::setHasPropertyTemplates(const std::vector< ::Ifc4x3::IfcPropertyTemplate >& v) { set_attribute_value(6, cast_vector(v));if constexpr (false)unset_attribute_value(6); } +std::vector< ::Ifc4x3::IfcPropertyTemplate > Ifc4x3::IfcPropertySetTemplate::HasPropertyTemplates() const { std::vector es = get_attribute_value(6); return cast_vector<::Ifc4x3::IfcPropertyTemplate>(es); } +void Ifc4x3::IfcPropertySetTemplate::setHasPropertyTemplates(const std::vector< ::Ifc4x3::IfcPropertyTemplate >& v) { set_attribute_value(6, cast_vector(v));if constexpr (false)unset_attribute_value(6); } std::vector<::Ifc4x3::IfcRelDefinesByTemplate> Ifc4x3::IfcPropertySetTemplate::Defines() const { return cast_vector(file()->get_inverse(data()->id(), IFC4X3_types[935], 5)); } const ifcopenshell::entity& Ifc4x3::IfcPropertySetTemplate::Class() { return *((ifcopenshell::entity*)IFC4X3_types[830]); } -Ifc4x3::IfcPropertySetTemplate Ifc4x3::IfcPropertySetTemplate::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< ::Ifc4x3::IfcPropertySetTemplateTypeEnum::Value > v5_TemplateType, std::optional< std::string > v6_ApplicableEntity, std::vector< ::Ifc4x3::IfcPropertyTemplate > v7_HasPropertyTemplates) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_TemplateType) {set_attribute_value(4, (enumeration_reference(&::Ifc4x3::IfcPropertySetTemplateTypeEnum::Class(),(size_t)*v5_TemplateType))); } if (v6_ApplicableEntity) {set_attribute_value(5, (*v6_ApplicableEntity)); }set_attribute_value(6, cast_vector(v7_HasPropertyTemplates));; return *this; } +Ifc4x3::IfcPropertySetTemplate Ifc4x3::IfcPropertySetTemplate::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< ::Ifc4x3::IfcPropertySetTemplateTypeEnum::Value > v5_TemplateType, std::optional< std::string > v6_ApplicableEntity, std::vector< ::Ifc4x3::IfcPropertyTemplate > v7_HasPropertyTemplates) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_TemplateType) {set_attribute_value(4, (enumeration_reference(&::Ifc4x3::IfcPropertySetTemplateTypeEnum::Class(),(size_t)*v5_TemplateType))); } if (v6_ApplicableEntity) {set_attribute_value(5, (*v6_ApplicableEntity)); }set_attribute_value(6, cast_vector(v7_HasPropertyTemplates));; return *this; } // Function implementations for IfcPropertySingleValue -::Ifc4x3::IfcValue Ifc4x3::IfcPropertySingleValue::NominalValue() const { if(get_attribute_value(2).isNull()) { return ::Ifc4x3::IfcValue{}; } return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3::IfcValue>(); } +::Ifc4x3::IfcValue Ifc4x3::IfcPropertySingleValue::NominalValue() const { if(get_attribute_value(2).isNull()) { return ::Ifc4x3::IfcValue{}; } return ((express::base)(get_attribute_value(2))).as<::Ifc4x3::IfcValue>(); } void Ifc4x3::IfcPropertySingleValue::setNominalValue(const ::Ifc4x3::IfcValue& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } -::Ifc4x3::IfcUnit Ifc4x3::IfcPropertySingleValue::Unit() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3::IfcUnit{}; } return ((express::Base)(get_attribute_value(3))).as<::Ifc4x3::IfcUnit>(); } +::Ifc4x3::IfcUnit Ifc4x3::IfcPropertySingleValue::Unit() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3::IfcUnit{}; } return ((express::base)(get_attribute_value(3))).as<::Ifc4x3::IfcUnit>(); } void Ifc4x3::IfcPropertySingleValue::setUnit(const ::Ifc4x3::IfcUnit& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } @@ -13223,22 +13223,22 @@ const ifcopenshell::entity& Ifc4x3::IfcPropertySingleValue::Class() { return *(( Ifc4x3::IfcPropertySingleValue Ifc4x3::IfcPropertySingleValue::initialize(std::string v1_Name, std::optional< std::string > v2_Specification, ::Ifc4x3::IfcValue v3_NominalValue, ::Ifc4x3::IfcUnit v4_Unit) { set_attribute_value(0, (v1_Name)); if (v2_Specification) {set_attribute_value(1, (*v2_Specification)); }set_attribute_value(2, (v3_NominalValue));set_attribute_value(3, (v4_Unit));; return *this; } // Function implementations for IfcPropertyTableValue -std::optional< std::vector< ::Ifc4x3::IfcValue > > Ifc4x3::IfcPropertyTableValue::DefiningValues() const { if(get_attribute_value(2).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(2); return cast_vector<::Ifc4x3::IfcValue>(es); } -void Ifc4x3::IfcPropertyTableValue::setDefiningValues(const std::optional< std::vector< ::Ifc4x3::IfcValue > >& v) { if (v) {set_attribute_value(2, cast_vector(*v));} else {unset_attribute_value(2);} } -std::optional< std::vector< ::Ifc4x3::IfcValue > > Ifc4x3::IfcPropertyTableValue::DefinedValues() const { if(get_attribute_value(3).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(3); return cast_vector<::Ifc4x3::IfcValue>(es); } -void Ifc4x3::IfcPropertyTableValue::setDefinedValues(const std::optional< std::vector< ::Ifc4x3::IfcValue > >& v) { if (v) {set_attribute_value(3, cast_vector(*v));} else {unset_attribute_value(3);} } +std::optional< std::vector< ::Ifc4x3::IfcValue > > Ifc4x3::IfcPropertyTableValue::DefiningValues() const { if(get_attribute_value(2).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(2); return cast_vector<::Ifc4x3::IfcValue>(es); } +void Ifc4x3::IfcPropertyTableValue::setDefiningValues(const std::optional< std::vector< ::Ifc4x3::IfcValue > >& v) { if (v) {set_attribute_value(2, cast_vector(*v));} else {unset_attribute_value(2);} } +std::optional< std::vector< ::Ifc4x3::IfcValue > > Ifc4x3::IfcPropertyTableValue::DefinedValues() const { if(get_attribute_value(3).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(3); return cast_vector<::Ifc4x3::IfcValue>(es); } +void Ifc4x3::IfcPropertyTableValue::setDefinedValues(const std::optional< std::vector< ::Ifc4x3::IfcValue > >& v) { if (v) {set_attribute_value(3, cast_vector(*v));} else {unset_attribute_value(3);} } std::optional< std::string > Ifc4x3::IfcPropertyTableValue::Expression() const { if(get_attribute_value(4).isNull()) { return std::nullopt; } std::string v = get_attribute_value(4); return v; } void Ifc4x3::IfcPropertyTableValue::setExpression(const std::optional< std::string >& v) { if (v) {set_attribute_value(4, *v);} else {unset_attribute_value(4);} } -::Ifc4x3::IfcUnit Ifc4x3::IfcPropertyTableValue::DefiningUnit() const { if(get_attribute_value(5).isNull()) { return ::Ifc4x3::IfcUnit{}; } return ((express::Base)(get_attribute_value(5))).as<::Ifc4x3::IfcUnit>(); } +::Ifc4x3::IfcUnit Ifc4x3::IfcPropertyTableValue::DefiningUnit() const { if(get_attribute_value(5).isNull()) { return ::Ifc4x3::IfcUnit{}; } return ((express::base)(get_attribute_value(5))).as<::Ifc4x3::IfcUnit>(); } void Ifc4x3::IfcPropertyTableValue::setDefiningUnit(const ::Ifc4x3::IfcUnit& v) { set_attribute_value(5, v);if constexpr (false)unset_attribute_value(5); } -::Ifc4x3::IfcUnit Ifc4x3::IfcPropertyTableValue::DefinedUnit() const { if(get_attribute_value(6).isNull()) { return ::Ifc4x3::IfcUnit{}; } return ((express::Base)(get_attribute_value(6))).as<::Ifc4x3::IfcUnit>(); } +::Ifc4x3::IfcUnit Ifc4x3::IfcPropertyTableValue::DefinedUnit() const { if(get_attribute_value(6).isNull()) { return ::Ifc4x3::IfcUnit{}; } return ((express::base)(get_attribute_value(6))).as<::Ifc4x3::IfcUnit>(); } void Ifc4x3::IfcPropertyTableValue::setDefinedUnit(const ::Ifc4x3::IfcUnit& v) { set_attribute_value(6, v);if constexpr (false)unset_attribute_value(6); } std::optional< ::Ifc4x3::IfcCurveInterpolationEnum::Value > Ifc4x3::IfcPropertyTableValue::CurveInterpolation() const { if(get_attribute_value(7).isNull()) { return std::nullopt; } return ::Ifc4x3::IfcCurveInterpolationEnum::FromString(get_attribute_value(7)); } void Ifc4x3::IfcPropertyTableValue::setCurveInterpolation(const std::optional< ::Ifc4x3::IfcCurveInterpolationEnum::Value >& v) { if (v) {set_attribute_value(7, enumeration_reference(&::Ifc4x3::IfcCurveInterpolationEnum::Class(), (size_t) *v));} else {unset_attribute_value(7);} } const ifcopenshell::entity& Ifc4x3::IfcPropertyTableValue::Class() { return *((ifcopenshell::entity*)IFC4X3_types[833]); } -Ifc4x3::IfcPropertyTableValue Ifc4x3::IfcPropertyTableValue::initialize(std::string v1_Name, std::optional< std::string > v2_Specification, std::optional< std::vector< ::Ifc4x3::IfcValue > > v3_DefiningValues, std::optional< std::vector< ::Ifc4x3::IfcValue > > v4_DefinedValues, std::optional< std::string > v5_Expression, ::Ifc4x3::IfcUnit v6_DefiningUnit, ::Ifc4x3::IfcUnit v7_DefinedUnit, std::optional< ::Ifc4x3::IfcCurveInterpolationEnum::Value > v8_CurveInterpolation) { set_attribute_value(0, (v1_Name)); if (v2_Specification) {set_attribute_value(1, (*v2_Specification)); } if (v3_DefiningValues) {set_attribute_value(2, cast_vector(*v3_DefiningValues)); } if (v4_DefinedValues) {set_attribute_value(3, cast_vector(*v4_DefinedValues)); } if (v5_Expression) {set_attribute_value(4, (*v5_Expression)); }set_attribute_value(5, (v6_DefiningUnit));set_attribute_value(6, (v7_DefinedUnit)); if (v8_CurveInterpolation) {set_attribute_value(7, (enumeration_reference(&::Ifc4x3::IfcCurveInterpolationEnum::Class(),(size_t)*v8_CurveInterpolation))); }; return *this; } +Ifc4x3::IfcPropertyTableValue Ifc4x3::IfcPropertyTableValue::initialize(std::string v1_Name, std::optional< std::string > v2_Specification, std::optional< std::vector< ::Ifc4x3::IfcValue > > v3_DefiningValues, std::optional< std::vector< ::Ifc4x3::IfcValue > > v4_DefinedValues, std::optional< std::string > v5_Expression, ::Ifc4x3::IfcUnit v6_DefiningUnit, ::Ifc4x3::IfcUnit v7_DefinedUnit, std::optional< ::Ifc4x3::IfcCurveInterpolationEnum::Value > v8_CurveInterpolation) { set_attribute_value(0, (v1_Name)); if (v2_Specification) {set_attribute_value(1, (*v2_Specification)); } if (v3_DefiningValues) {set_attribute_value(2, cast_vector(*v3_DefiningValues)); } if (v4_DefinedValues) {set_attribute_value(3, cast_vector(*v4_DefinedValues)); } if (v5_Expression) {set_attribute_value(4, (*v5_Expression)); }set_attribute_value(5, (v6_DefiningUnit));set_attribute_value(6, (v7_DefinedUnit)); if (v8_CurveInterpolation) {set_attribute_value(7, (enumeration_reference(&::Ifc4x3::IfcCurveInterpolationEnum::Class(),(size_t)*v8_CurveInterpolation))); }; return *this; } // Function implementations for IfcPropertyTemplate @@ -13276,7 +13276,7 @@ void Ifc4x3::IfcProtectiveDeviceTrippingUnitType::setPredefinedType(const ::Ifc4 const ifcopenshell::entity& Ifc4x3::IfcProtectiveDeviceTrippingUnitType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[838]); } -Ifc4x3::IfcProtectiveDeviceTrippingUnitType Ifc4x3::IfcProtectiveDeviceTrippingUnitType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcProtectiveDeviceTrippingUnitTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcProtectiveDeviceTrippingUnitTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3::IfcProtectiveDeviceTrippingUnitType Ifc4x3::IfcProtectiveDeviceTrippingUnitType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcProtectiveDeviceTrippingUnitTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcProtectiveDeviceTrippingUnitTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcProtectiveDeviceType ::Ifc4x3::IfcProtectiveDeviceTypeEnum::Value Ifc4x3::IfcProtectiveDeviceType::PredefinedType() const { return ::Ifc4x3::IfcProtectiveDeviceTypeEnum::FromString(get_attribute_value(9)); } @@ -13284,7 +13284,7 @@ void Ifc4x3::IfcProtectiveDeviceType::setPredefinedType(const ::Ifc4x3::IfcProte const ifcopenshell::entity& Ifc4x3::IfcProtectiveDeviceType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[840]); } -Ifc4x3::IfcProtectiveDeviceType Ifc4x3::IfcProtectiveDeviceType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcProtectiveDeviceTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcProtectiveDeviceTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3::IfcProtectiveDeviceType Ifc4x3::IfcProtectiveDeviceType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcProtectiveDeviceTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcProtectiveDeviceTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcPump std::optional< ::Ifc4x3::IfcPumpTypeEnum::Value > Ifc4x3::IfcPump::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3::IfcPumpTypeEnum::FromString(get_attribute_value(8)); } @@ -13300,7 +13300,7 @@ void Ifc4x3::IfcPumpType::setPredefinedType(const ::Ifc4x3::IfcPumpTypeEnum::Val const ifcopenshell::entity& Ifc4x3::IfcPumpType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[843]); } -Ifc4x3::IfcPumpType Ifc4x3::IfcPumpType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcPumpTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcPumpTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3::IfcPumpType Ifc4x3::IfcPumpType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcPumpTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcPumpTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcQuantityArea double Ifc4x3::IfcQuantityArea::AreaValue() const { double v = get_attribute_value(3); return v; } @@ -13392,7 +13392,7 @@ void Ifc4x3::IfcRailType::setPredefinedType(const ::Ifc4x3::IfcRailTypeEnum::Val const ifcopenshell::entity& Ifc4x3::IfcRailType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[858]); } -Ifc4x3::IfcRailType Ifc4x3::IfcRailType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcRailTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcRailTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3::IfcRailType Ifc4x3::IfcRailType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcRailTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcRailTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcRailing std::optional< ::Ifc4x3::IfcRailingTypeEnum::Value > Ifc4x3::IfcRailing::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3::IfcRailingTypeEnum::FromString(get_attribute_value(8)); } @@ -13408,7 +13408,7 @@ void Ifc4x3::IfcRailingType::setPredefinedType(const ::Ifc4x3::IfcRailingTypeEnu const ifcopenshell::entity& Ifc4x3::IfcRailingType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[856]); } -Ifc4x3::IfcRailingType Ifc4x3::IfcRailingType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcRailingTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcRailingTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3::IfcRailingType Ifc4x3::IfcRailingType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcRailingTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcRailingTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcRailway std::optional< ::Ifc4x3::IfcRailwayTypeEnum::Value > Ifc4x3::IfcRailway::PredefinedType() const { if(get_attribute_value(9).isNull()) { return std::nullopt; } return ::Ifc4x3::IfcRailwayTypeEnum::FromString(get_attribute_value(9)); } @@ -13448,7 +13448,7 @@ void Ifc4x3::IfcRampFlightType::setPredefinedType(const ::Ifc4x3::IfcRampFlightT const ifcopenshell::entity& Ifc4x3::IfcRampFlightType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[866]); } -Ifc4x3::IfcRampFlightType Ifc4x3::IfcRampFlightType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcRampFlightTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcRampFlightTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3::IfcRampFlightType Ifc4x3::IfcRampFlightType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcRampFlightTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcRampFlightTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcRampType ::Ifc4x3::IfcRampTypeEnum::Value Ifc4x3::IfcRampType::PredefinedType() const { return ::Ifc4x3::IfcRampTypeEnum::FromString(get_attribute_value(9)); } @@ -13456,7 +13456,7 @@ void Ifc4x3::IfcRampType::setPredefinedType(const ::Ifc4x3::IfcRampTypeEnum::Val const ifcopenshell::entity& Ifc4x3::IfcRampType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[868]); } -Ifc4x3::IfcRampType Ifc4x3::IfcRampType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcRampTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcRampTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3::IfcRampType Ifc4x3::IfcRampType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcRampTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcRampTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcRationalBSplineCurveWithKnots std::vector< double > /*[2:?]*/ Ifc4x3::IfcRationalBSplineCurveWithKnots::WeightsData() const { std::vector< double > /*[2:?]*/ v = get_attribute_value(8); return v; } @@ -13464,7 +13464,7 @@ void Ifc4x3::IfcRationalBSplineCurveWithKnots::setWeightsData(const std::vector< const ifcopenshell::entity& Ifc4x3::IfcRationalBSplineCurveWithKnots::Class() { return *((ifcopenshell::entity*)IFC4X3_types[871]); } -Ifc4x3::IfcRationalBSplineCurveWithKnots Ifc4x3::IfcRationalBSplineCurveWithKnots::initialize(int64_t v1_Degree, std::vector< ::Ifc4x3::IfcCartesianPoint > v2_ControlPointsList, ::Ifc4x3::IfcBSplineCurveForm::Value v3_CurveForm, boost::logic::tribool v4_ClosedCurve, boost::logic::tribool v5_SelfIntersect, std::vector< int64_t > /*[2:?]*/ v6_KnotMultiplicities, std::vector< double > /*[2:?]*/ v7_Knots, ::Ifc4x3::IfcKnotType::Value v8_KnotSpec, std::vector< double > /*[2:?]*/ v9_WeightsData) { set_attribute_value(0, (v1_Degree));set_attribute_value(1, cast_vector(v2_ControlPointsList));set_attribute_value(2, (enumeration_reference(&::Ifc4x3::IfcBSplineCurveForm::Class(),(size_t)v3_CurveForm)));set_attribute_value(3, (v4_ClosedCurve));set_attribute_value(4, (v5_SelfIntersect));set_attribute_value(5, (v6_KnotMultiplicities));set_attribute_value(6, (v7_Knots));set_attribute_value(7, (enumeration_reference(&::Ifc4x3::IfcKnotType::Class(),(size_t)v8_KnotSpec)));set_attribute_value(8, (v9_WeightsData));; return *this; } +Ifc4x3::IfcRationalBSplineCurveWithKnots Ifc4x3::IfcRationalBSplineCurveWithKnots::initialize(int64_t v1_Degree, std::vector< ::Ifc4x3::IfcCartesianPoint > v2_ControlPointsList, ::Ifc4x3::IfcBSplineCurveForm::Value v3_CurveForm, boost::logic::tribool v4_ClosedCurve, boost::logic::tribool v5_SelfIntersect, std::vector< int64_t > /*[2:?]*/ v6_KnotMultiplicities, std::vector< double > /*[2:?]*/ v7_Knots, ::Ifc4x3::IfcKnotType::Value v8_KnotSpec, std::vector< double > /*[2:?]*/ v9_WeightsData) { set_attribute_value(0, (v1_Degree));set_attribute_value(1, cast_vector(v2_ControlPointsList));set_attribute_value(2, (enumeration_reference(&::Ifc4x3::IfcBSplineCurveForm::Class(),(size_t)v3_CurveForm)));set_attribute_value(3, (v4_ClosedCurve));set_attribute_value(4, (v5_SelfIntersect));set_attribute_value(5, (v6_KnotMultiplicities));set_attribute_value(6, (v7_Knots));set_attribute_value(7, (enumeration_reference(&::Ifc4x3::IfcKnotType::Class(),(size_t)v8_KnotSpec)));set_attribute_value(8, (v9_WeightsData));; return *this; } // Function implementations for IfcRationalBSplineSurfaceWithKnots std::vector< std::vector< double > > Ifc4x3::IfcRationalBSplineSurfaceWithKnots::WeightsData() const { std::vector< std::vector< double > > v = get_attribute_value(12); return v; } @@ -13472,7 +13472,7 @@ void Ifc4x3::IfcRationalBSplineSurfaceWithKnots::setWeightsData(const std::vecto const ifcopenshell::entity& Ifc4x3::IfcRationalBSplineSurfaceWithKnots::Class() { return *((ifcopenshell::entity*)IFC4X3_types[872]); } -Ifc4x3::IfcRationalBSplineSurfaceWithKnots Ifc4x3::IfcRationalBSplineSurfaceWithKnots::initialize(int64_t v1_UDegree, int64_t v2_VDegree, std::vector< std::vector< ::Ifc4x3::IfcCartesianPoint > > v3_ControlPointsList, ::Ifc4x3::IfcBSplineSurfaceForm::Value v4_SurfaceForm, boost::logic::tribool v5_UClosed, boost::logic::tribool v6_VClosed, boost::logic::tribool v7_SelfIntersect, std::vector< int64_t > /*[2:?]*/ v8_UMultiplicities, std::vector< int64_t > /*[2:?]*/ v9_VMultiplicities, std::vector< double > /*[2:?]*/ v10_UKnots, std::vector< double > /*[2:?]*/ v11_VKnots, ::Ifc4x3::IfcKnotType::Value v12_KnotSpec, std::vector< std::vector< double > > v13_WeightsData) { set_attribute_value(0, (v1_UDegree));set_attribute_value(1, (v2_VDegree));set_attribute_value(2, cast_vector(v3_ControlPointsList));set_attribute_value(3, (enumeration_reference(&::Ifc4x3::IfcBSplineSurfaceForm::Class(),(size_t)v4_SurfaceForm)));set_attribute_value(4, (v5_UClosed));set_attribute_value(5, (v6_VClosed));set_attribute_value(6, (v7_SelfIntersect));set_attribute_value(7, (v8_UMultiplicities));set_attribute_value(8, (v9_VMultiplicities));set_attribute_value(9, (v10_UKnots));set_attribute_value(10, (v11_VKnots));set_attribute_value(11, (enumeration_reference(&::Ifc4x3::IfcKnotType::Class(),(size_t)v12_KnotSpec)));set_attribute_value(12, (v13_WeightsData));; return *this; } +Ifc4x3::IfcRationalBSplineSurfaceWithKnots Ifc4x3::IfcRationalBSplineSurfaceWithKnots::initialize(int64_t v1_UDegree, int64_t v2_VDegree, std::vector< std::vector< ::Ifc4x3::IfcCartesianPoint > > v3_ControlPointsList, ::Ifc4x3::IfcBSplineSurfaceForm::Value v4_SurfaceForm, boost::logic::tribool v5_UClosed, boost::logic::tribool v6_VClosed, boost::logic::tribool v7_SelfIntersect, std::vector< int64_t > /*[2:?]*/ v8_UMultiplicities, std::vector< int64_t > /*[2:?]*/ v9_VMultiplicities, std::vector< double > /*[2:?]*/ v10_UKnots, std::vector< double > /*[2:?]*/ v11_VKnots, ::Ifc4x3::IfcKnotType::Value v12_KnotSpec, std::vector< std::vector< double > > v13_WeightsData) { set_attribute_value(0, (v1_UDegree));set_attribute_value(1, (v2_VDegree));set_attribute_value(2, cast_vector(v3_ControlPointsList));set_attribute_value(3, (enumeration_reference(&::Ifc4x3::IfcBSplineSurfaceForm::Class(),(size_t)v4_SurfaceForm)));set_attribute_value(4, (v5_UClosed));set_attribute_value(5, (v6_VClosed));set_attribute_value(6, (v7_SelfIntersect));set_attribute_value(7, (v8_UMultiplicities));set_attribute_value(8, (v9_VMultiplicities));set_attribute_value(9, (v10_UKnots));set_attribute_value(10, (v11_VKnots));set_attribute_value(11, (enumeration_reference(&::Ifc4x3::IfcKnotType::Class(),(size_t)v12_KnotSpec)));set_attribute_value(12, (v13_WeightsData));; return *this; } // Function implementations for IfcRectangleHollowProfileDef double Ifc4x3::IfcRectangleHollowProfileDef::WallThickness() const { double v = get_attribute_value(5); return v; } @@ -13509,7 +13509,7 @@ const ifcopenshell::entity& Ifc4x3::IfcRectangularPyramid::Class() { return *((i Ifc4x3::IfcRectangularPyramid Ifc4x3::IfcRectangularPyramid::initialize(::Ifc4x3::IfcAxis2Placement3D v1_Position, double v2_XLength, double v3_YLength, double v4_Height) { set_attribute_value(0, (v1_Position));set_attribute_value(1, (v2_XLength));set_attribute_value(2, (v3_YLength));set_attribute_value(3, (v4_Height));; return *this; } // Function implementations for IfcRectangularTrimmedSurface -::Ifc4x3::IfcSurface Ifc4x3::IfcRectangularTrimmedSurface::BasisSurface() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3::IfcSurface>(); } +::Ifc4x3::IfcSurface Ifc4x3::IfcRectangularTrimmedSurface::BasisSurface() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3::IfcSurface>(); } void Ifc4x3::IfcRectangularTrimmedSurface::setBasisSurface(const ::Ifc4x3::IfcSurface& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } double Ifc4x3::IfcRectangularTrimmedSurface::U1() const { double v = get_attribute_value(1); return v; } void Ifc4x3::IfcRectangularTrimmedSurface::setU1(const double& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } @@ -13543,12 +13543,12 @@ std::optional< int64_t > Ifc4x3::IfcRecurrencePattern::Interval() const { if(get void Ifc4x3::IfcRecurrencePattern::setInterval(const std::optional< int64_t >& v) { if (v) {set_attribute_value(5, *v);} else {unset_attribute_value(5);} } std::optional< int64_t > Ifc4x3::IfcRecurrencePattern::Occurrences() const { if(get_attribute_value(6).isNull()) { return std::nullopt; } int64_t v = get_attribute_value(6); return v; } void Ifc4x3::IfcRecurrencePattern::setOccurrences(const std::optional< int64_t >& v) { if (v) {set_attribute_value(6, *v);} else {unset_attribute_value(6);} } -std::optional< std::vector< ::Ifc4x3::IfcTimePeriod > > Ifc4x3::IfcRecurrencePattern::TimePeriods() const { if(get_attribute_value(7).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(7); return cast_vector<::Ifc4x3::IfcTimePeriod>(es); } -void Ifc4x3::IfcRecurrencePattern::setTimePeriods(const std::optional< std::vector< ::Ifc4x3::IfcTimePeriod > >& v) { if (v) {set_attribute_value(7, cast_vector(*v));} else {unset_attribute_value(7);} } +std::optional< std::vector< ::Ifc4x3::IfcTimePeriod > > Ifc4x3::IfcRecurrencePattern::TimePeriods() const { if(get_attribute_value(7).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(7); return cast_vector<::Ifc4x3::IfcTimePeriod>(es); } +void Ifc4x3::IfcRecurrencePattern::setTimePeriods(const std::optional< std::vector< ::Ifc4x3::IfcTimePeriod > >& v) { if (v) {set_attribute_value(7, cast_vector(*v));} else {unset_attribute_value(7);} } const ifcopenshell::entity& Ifc4x3::IfcRecurrencePattern::Class() { return *((ifcopenshell::entity*)IFC4X3_types[878]); } -Ifc4x3::IfcRecurrencePattern Ifc4x3::IfcRecurrencePattern::initialize(::Ifc4x3::IfcRecurrenceTypeEnum::Value v1_RecurrenceType, std::optional< std::vector< int64_t > /*[1:?]*/ > v2_DayComponent, std::optional< std::vector< int64_t > /*[1:?]*/ > v3_WeekdayComponent, std::optional< std::vector< int64_t > /*[1:?]*/ > v4_MonthComponent, std::optional< int64_t > v5_Position, std::optional< int64_t > v6_Interval, std::optional< int64_t > v7_Occurrences, std::optional< std::vector< ::Ifc4x3::IfcTimePeriod > > v8_TimePeriods) { set_attribute_value(0, (enumeration_reference(&::Ifc4x3::IfcRecurrenceTypeEnum::Class(),(size_t)v1_RecurrenceType))); if (v2_DayComponent) {set_attribute_value(1, (*v2_DayComponent)); } if (v3_WeekdayComponent) {set_attribute_value(2, (*v3_WeekdayComponent)); } if (v4_MonthComponent) {set_attribute_value(3, (*v4_MonthComponent)); } if (v5_Position) {set_attribute_value(4, (*v5_Position)); } if (v6_Interval) {set_attribute_value(5, (*v6_Interval)); } if (v7_Occurrences) {set_attribute_value(6, (*v7_Occurrences)); } if (v8_TimePeriods) {set_attribute_value(7, cast_vector(*v8_TimePeriods)); }; return *this; } +Ifc4x3::IfcRecurrencePattern Ifc4x3::IfcRecurrencePattern::initialize(::Ifc4x3::IfcRecurrenceTypeEnum::Value v1_RecurrenceType, std::optional< std::vector< int64_t > /*[1:?]*/ > v2_DayComponent, std::optional< std::vector< int64_t > /*[1:?]*/ > v3_WeekdayComponent, std::optional< std::vector< int64_t > /*[1:?]*/ > v4_MonthComponent, std::optional< int64_t > v5_Position, std::optional< int64_t > v6_Interval, std::optional< int64_t > v7_Occurrences, std::optional< std::vector< ::Ifc4x3::IfcTimePeriod > > v8_TimePeriods) { set_attribute_value(0, (enumeration_reference(&::Ifc4x3::IfcRecurrenceTypeEnum::Class(),(size_t)v1_RecurrenceType))); if (v2_DayComponent) {set_attribute_value(1, (*v2_DayComponent)); } if (v3_WeekdayComponent) {set_attribute_value(2, (*v3_WeekdayComponent)); } if (v4_MonthComponent) {set_attribute_value(3, (*v4_MonthComponent)); } if (v5_Position) {set_attribute_value(4, (*v5_Position)); } if (v6_Interval) {set_attribute_value(5, (*v6_Interval)); } if (v7_Occurrences) {set_attribute_value(6, (*v7_Occurrences)); } if (v8_TimePeriods) {set_attribute_value(7, cast_vector(*v8_TimePeriods)); }; return *this; } // Function implementations for IfcReference std::optional< std::string > Ifc4x3::IfcReference::TypeIdentifier() const { if(get_attribute_value(0).isNull()) { return std::nullopt; } std::string v = get_attribute_value(0); return v; } @@ -13559,7 +13559,7 @@ std::optional< std::string > Ifc4x3::IfcReference::InstanceName() const { if(get void Ifc4x3::IfcReference::setInstanceName(const std::optional< std::string >& v) { if (v) {set_attribute_value(2, *v);} else {unset_attribute_value(2);} } std::optional< std::vector< int64_t > /*[1:?]*/ > Ifc4x3::IfcReference::ListPositions() const { if(get_attribute_value(3).isNull()) { return std::nullopt; } std::vector< int64_t > /*[1:?]*/ v = get_attribute_value(3); return v; } void Ifc4x3::IfcReference::setListPositions(const std::optional< std::vector< int64_t > /*[1:?]*/ >& v) { if (v) {set_attribute_value(3, *v);} else {unset_attribute_value(3);} } -::Ifc4x3::IfcReference Ifc4x3::IfcReference::InnerReference() const { if(get_attribute_value(4).isNull()) { return ::Ifc4x3::IfcReference{}; } return ((express::Base)(get_attribute_value(4))).as<::Ifc4x3::IfcReference>(); } +::Ifc4x3::IfcReference Ifc4x3::IfcReference::InnerReference() const { if(get_attribute_value(4).isNull()) { return ::Ifc4x3::IfcReference{}; } return ((express::base)(get_attribute_value(4))).as<::Ifc4x3::IfcReference>(); } void Ifc4x3::IfcReference::setInnerReference(const ::Ifc4x3::IfcReference& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } @@ -13577,12 +13577,12 @@ Ifc4x3::IfcReferent Ifc4x3::IfcReferent::initialize(std::string v1_GlobalId, ::I // Function implementations for IfcRegularTimeSeries double Ifc4x3::IfcRegularTimeSeries::TimeStep() const { double v = get_attribute_value(8); return v; } void Ifc4x3::IfcRegularTimeSeries::setTimeStep(const double& v) { set_attribute_value(8, v);if constexpr (false)unset_attribute_value(8); } -std::vector< ::Ifc4x3::IfcTimeSeriesValue > Ifc4x3::IfcRegularTimeSeries::Values() const { std::vector es = get_attribute_value(9); return cast_vector<::Ifc4x3::IfcTimeSeriesValue>(es); } -void Ifc4x3::IfcRegularTimeSeries::setValues(const std::vector< ::Ifc4x3::IfcTimeSeriesValue >& v) { set_attribute_value(9, cast_vector(v));if constexpr (false)unset_attribute_value(9); } +std::vector< ::Ifc4x3::IfcTimeSeriesValue > Ifc4x3::IfcRegularTimeSeries::Values() const { std::vector es = get_attribute_value(9); return cast_vector<::Ifc4x3::IfcTimeSeriesValue>(es); } +void Ifc4x3::IfcRegularTimeSeries::setValues(const std::vector< ::Ifc4x3::IfcTimeSeriesValue >& v) { set_attribute_value(9, cast_vector(v));if constexpr (false)unset_attribute_value(9); } const ifcopenshell::entity& Ifc4x3::IfcRegularTimeSeries::Class() { return *((ifcopenshell::entity*)IFC4X3_types[884]); } -Ifc4x3::IfcRegularTimeSeries Ifc4x3::IfcRegularTimeSeries::initialize(std::string v1_Name, std::optional< std::string > v2_Description, std::string v3_StartTime, std::string v4_EndTime, ::Ifc4x3::IfcTimeSeriesDataTypeEnum::Value v5_TimeSeriesDataType, ::Ifc4x3::IfcDataOriginEnum::Value v6_DataOrigin, std::optional< std::string > v7_UserDefinedDataOrigin, ::Ifc4x3::IfcUnit v8_Unit, double v9_TimeStep, std::vector< ::Ifc4x3::IfcTimeSeriesValue > v10_Values) { set_attribute_value(0, (v1_Name)); if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, (v3_StartTime));set_attribute_value(3, (v4_EndTime));set_attribute_value(4, (enumeration_reference(&::Ifc4x3::IfcTimeSeriesDataTypeEnum::Class(),(size_t)v5_TimeSeriesDataType)));set_attribute_value(5, (enumeration_reference(&::Ifc4x3::IfcDataOriginEnum::Class(),(size_t)v6_DataOrigin))); if (v7_UserDefinedDataOrigin) {set_attribute_value(6, (*v7_UserDefinedDataOrigin)); }set_attribute_value(7, (v8_Unit));set_attribute_value(8, (v9_TimeStep));set_attribute_value(9, cast_vector(v10_Values));; return *this; } +Ifc4x3::IfcRegularTimeSeries Ifc4x3::IfcRegularTimeSeries::initialize(std::string v1_Name, std::optional< std::string > v2_Description, std::string v3_StartTime, std::string v4_EndTime, ::Ifc4x3::IfcTimeSeriesDataTypeEnum::Value v5_TimeSeriesDataType, ::Ifc4x3::IfcDataOriginEnum::Value v6_DataOrigin, std::optional< std::string > v7_UserDefinedDataOrigin, ::Ifc4x3::IfcUnit v8_Unit, double v9_TimeStep, std::vector< ::Ifc4x3::IfcTimeSeriesValue > v10_Values) { set_attribute_value(0, (v1_Name)); if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, (v3_StartTime));set_attribute_value(3, (v4_EndTime));set_attribute_value(4, (enumeration_reference(&::Ifc4x3::IfcTimeSeriesDataTypeEnum::Class(),(size_t)v5_TimeSeriesDataType)));set_attribute_value(5, (enumeration_reference(&::Ifc4x3::IfcDataOriginEnum::Class(),(size_t)v6_DataOrigin))); if (v7_UserDefinedDataOrigin) {set_attribute_value(6, (*v7_UserDefinedDataOrigin)); }set_attribute_value(7, (v8_Unit));set_attribute_value(8, (v9_TimeStep));set_attribute_value(9, cast_vector(v10_Values));; return *this; } // Function implementations for IfcReinforcedSoil std::optional< ::Ifc4x3::IfcReinforcedSoilTypeEnum::Value > Ifc4x3::IfcReinforcedSoil::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3::IfcReinforcedSoilTypeEnum::FromString(get_attribute_value(8)); } @@ -13613,12 +13613,12 @@ Ifc4x3::IfcReinforcementBarProperties Ifc4x3::IfcReinforcementBarProperties::ini // Function implementations for IfcReinforcementDefinitionProperties std::optional< std::string > Ifc4x3::IfcReinforcementDefinitionProperties::DefinitionType() const { if(get_attribute_value(4).isNull()) { return std::nullopt; } std::string v = get_attribute_value(4); return v; } void Ifc4x3::IfcReinforcementDefinitionProperties::setDefinitionType(const std::optional< std::string >& v) { if (v) {set_attribute_value(4, *v);} else {unset_attribute_value(4);} } -std::vector< ::Ifc4x3::IfcSectionReinforcementProperties > Ifc4x3::IfcReinforcementDefinitionProperties::ReinforcementSectionDefinitions() const { std::vector es = get_attribute_value(5); return cast_vector<::Ifc4x3::IfcSectionReinforcementProperties>(es); } -void Ifc4x3::IfcReinforcementDefinitionProperties::setReinforcementSectionDefinitions(const std::vector< ::Ifc4x3::IfcSectionReinforcementProperties >& v) { set_attribute_value(5, cast_vector(v));if constexpr (false)unset_attribute_value(5); } +std::vector< ::Ifc4x3::IfcSectionReinforcementProperties > Ifc4x3::IfcReinforcementDefinitionProperties::ReinforcementSectionDefinitions() const { std::vector es = get_attribute_value(5); return cast_vector<::Ifc4x3::IfcSectionReinforcementProperties>(es); } +void Ifc4x3::IfcReinforcementDefinitionProperties::setReinforcementSectionDefinitions(const std::vector< ::Ifc4x3::IfcSectionReinforcementProperties >& v) { set_attribute_value(5, cast_vector(v));if constexpr (false)unset_attribute_value(5); } const ifcopenshell::entity& Ifc4x3::IfcReinforcementDefinitionProperties::Class() { return *((ifcopenshell::entity*)IFC4X3_types[888]); } -Ifc4x3::IfcReinforcementDefinitionProperties Ifc4x3::IfcReinforcementDefinitionProperties::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_DefinitionType, std::vector< ::Ifc4x3::IfcSectionReinforcementProperties > v6_ReinforcementSectionDefinitions) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_DefinitionType) {set_attribute_value(4, (*v5_DefinitionType)); }set_attribute_value(5, cast_vector(v6_ReinforcementSectionDefinitions));; return *this; } +Ifc4x3::IfcReinforcementDefinitionProperties Ifc4x3::IfcReinforcementDefinitionProperties::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_DefinitionType, std::vector< ::Ifc4x3::IfcSectionReinforcementProperties > v6_ReinforcementSectionDefinitions) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_DefinitionType) {set_attribute_value(4, (*v5_DefinitionType)); }set_attribute_value(5, cast_vector(v6_ReinforcementSectionDefinitions));; return *this; } // Function implementations for IfcReinforcingBar std::optional< double > Ifc4x3::IfcReinforcingBar::NominalDiameter() const { if(get_attribute_value(9).isNull()) { return std::nullopt; } double v = get_attribute_value(9); return v; } @@ -13649,12 +13649,12 @@ std::optional< ::Ifc4x3::IfcReinforcingBarSurfaceEnum::Value > Ifc4x3::IfcReinfo void Ifc4x3::IfcReinforcingBarType::setBarSurface(const std::optional< ::Ifc4x3::IfcReinforcingBarSurfaceEnum::Value >& v) { if (v) {set_attribute_value(13, enumeration_reference(&::Ifc4x3::IfcReinforcingBarSurfaceEnum::Class(), (size_t) *v));} else {unset_attribute_value(13);} } std::optional< std::string > Ifc4x3::IfcReinforcingBarType::BendingShapeCode() const { if(get_attribute_value(14).isNull()) { return std::nullopt; } std::string v = get_attribute_value(14); return v; } void Ifc4x3::IfcReinforcingBarType::setBendingShapeCode(const std::optional< std::string >& v) { if (v) {set_attribute_value(14, *v);} else {unset_attribute_value(14);} } -std::optional< std::vector< ::Ifc4x3::IfcBendingParameterSelect > > Ifc4x3::IfcReinforcingBarType::BendingParameters() const { if(get_attribute_value(15).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(15); return cast_vector<::Ifc4x3::IfcBendingParameterSelect>(es); } -void Ifc4x3::IfcReinforcingBarType::setBendingParameters(const std::optional< std::vector< ::Ifc4x3::IfcBendingParameterSelect > >& v) { if (v) {set_attribute_value(15, cast_vector(*v));} else {unset_attribute_value(15);} } +std::optional< std::vector< ::Ifc4x3::IfcBendingParameterSelect > > Ifc4x3::IfcReinforcingBarType::BendingParameters() const { if(get_attribute_value(15).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(15); return cast_vector<::Ifc4x3::IfcBendingParameterSelect>(es); } +void Ifc4x3::IfcReinforcingBarType::setBendingParameters(const std::optional< std::vector< ::Ifc4x3::IfcBendingParameterSelect > >& v) { if (v) {set_attribute_value(15, cast_vector(*v));} else {unset_attribute_value(15);} } const ifcopenshell::entity& Ifc4x3::IfcReinforcingBarType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[892]); } -Ifc4x3::IfcReinforcingBarType Ifc4x3::IfcReinforcingBarType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcReinforcingBarTypeEnum::Value v10_PredefinedType, std::optional< double > v11_NominalDiameter, std::optional< double > v12_CrossSectionArea, std::optional< double > v13_BarLength, std::optional< ::Ifc4x3::IfcReinforcingBarSurfaceEnum::Value > v14_BarSurface, std::optional< std::string > v15_BendingShapeCode, std::optional< std::vector< ::Ifc4x3::IfcBendingParameterSelect > > v16_BendingParameters) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcReinforcingBarTypeEnum::Class(),(size_t)v10_PredefinedType))); if (v11_NominalDiameter) {set_attribute_value(10, (*v11_NominalDiameter)); } if (v12_CrossSectionArea) {set_attribute_value(11, (*v12_CrossSectionArea)); } if (v13_BarLength) {set_attribute_value(12, (*v13_BarLength)); } if (v14_BarSurface) {set_attribute_value(13, (enumeration_reference(&::Ifc4x3::IfcReinforcingBarSurfaceEnum::Class(),(size_t)*v14_BarSurface))); } if (v15_BendingShapeCode) {set_attribute_value(14, (*v15_BendingShapeCode)); } if (v16_BendingParameters) {set_attribute_value(15, cast_vector(*v16_BendingParameters)); }; return *this; } +Ifc4x3::IfcReinforcingBarType Ifc4x3::IfcReinforcingBarType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcReinforcingBarTypeEnum::Value v10_PredefinedType, std::optional< double > v11_NominalDiameter, std::optional< double > v12_CrossSectionArea, std::optional< double > v13_BarLength, std::optional< ::Ifc4x3::IfcReinforcingBarSurfaceEnum::Value > v14_BarSurface, std::optional< std::string > v15_BendingShapeCode, std::optional< std::vector< ::Ifc4x3::IfcBendingParameterSelect > > v16_BendingParameters) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcReinforcingBarTypeEnum::Class(),(size_t)v10_PredefinedType))); if (v11_NominalDiameter) {set_attribute_value(10, (*v11_NominalDiameter)); } if (v12_CrossSectionArea) {set_attribute_value(11, (*v12_CrossSectionArea)); } if (v13_BarLength) {set_attribute_value(12, (*v13_BarLength)); } if (v14_BarSurface) {set_attribute_value(13, (enumeration_reference(&::Ifc4x3::IfcReinforcingBarSurfaceEnum::Class(),(size_t)*v14_BarSurface))); } if (v15_BendingShapeCode) {set_attribute_value(14, (*v15_BendingShapeCode)); } if (v16_BendingParameters) {set_attribute_value(15, cast_vector(*v16_BendingParameters)); }; return *this; } // Function implementations for IfcReinforcingElement std::optional< std::string > Ifc4x3::IfcReinforcingElement::SteelGrade() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } std::string v = get_attribute_value(8); return v; } @@ -13668,7 +13668,7 @@ Ifc4x3::IfcReinforcingElement Ifc4x3::IfcReinforcingElement::initialize(std::str const ifcopenshell::entity& Ifc4x3::IfcReinforcingElementType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[895]); } -Ifc4x3::IfcReinforcingElementType Ifc4x3::IfcReinforcingElementType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } +Ifc4x3::IfcReinforcingElementType Ifc4x3::IfcReinforcingElementType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } // Function implementations for IfcReinforcingMesh std::optional< double > Ifc4x3::IfcReinforcingMesh::MeshLength() const { if(get_attribute_value(9).isNull()) { return std::nullopt; } double v = get_attribute_value(9); return v; } @@ -13715,68 +13715,68 @@ std::optional< double > Ifc4x3::IfcReinforcingMeshType::TransverseBarSpacing() c void Ifc4x3::IfcReinforcingMeshType::setTransverseBarSpacing(const std::optional< double >& v) { if (v) {set_attribute_value(17, *v);} else {unset_attribute_value(17);} } std::optional< std::string > Ifc4x3::IfcReinforcingMeshType::BendingShapeCode() const { if(get_attribute_value(18).isNull()) { return std::nullopt; } std::string v = get_attribute_value(18); return v; } void Ifc4x3::IfcReinforcingMeshType::setBendingShapeCode(const std::optional< std::string >& v) { if (v) {set_attribute_value(18, *v);} else {unset_attribute_value(18);} } -std::optional< std::vector< ::Ifc4x3::IfcBendingParameterSelect > > Ifc4x3::IfcReinforcingMeshType::BendingParameters() const { if(get_attribute_value(19).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(19); return cast_vector<::Ifc4x3::IfcBendingParameterSelect>(es); } -void Ifc4x3::IfcReinforcingMeshType::setBendingParameters(const std::optional< std::vector< ::Ifc4x3::IfcBendingParameterSelect > >& v) { if (v) {set_attribute_value(19, cast_vector(*v));} else {unset_attribute_value(19);} } +std::optional< std::vector< ::Ifc4x3::IfcBendingParameterSelect > > Ifc4x3::IfcReinforcingMeshType::BendingParameters() const { if(get_attribute_value(19).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(19); return cast_vector<::Ifc4x3::IfcBendingParameterSelect>(es); } +void Ifc4x3::IfcReinforcingMeshType::setBendingParameters(const std::optional< std::vector< ::Ifc4x3::IfcBendingParameterSelect > >& v) { if (v) {set_attribute_value(19, cast_vector(*v));} else {unset_attribute_value(19);} } const ifcopenshell::entity& Ifc4x3::IfcReinforcingMeshType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[897]); } -Ifc4x3::IfcReinforcingMeshType Ifc4x3::IfcReinforcingMeshType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcReinforcingMeshTypeEnum::Value v10_PredefinedType, std::optional< double > v11_MeshLength, std::optional< double > v12_MeshWidth, std::optional< double > v13_LongitudinalBarNominalDiameter, std::optional< double > v14_TransverseBarNominalDiameter, std::optional< double > v15_LongitudinalBarCrossSectionArea, std::optional< double > v16_TransverseBarCrossSectionArea, std::optional< double > v17_LongitudinalBarSpacing, std::optional< double > v18_TransverseBarSpacing, std::optional< std::string > v19_BendingShapeCode, std::optional< std::vector< ::Ifc4x3::IfcBendingParameterSelect > > v20_BendingParameters) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcReinforcingMeshTypeEnum::Class(),(size_t)v10_PredefinedType))); if (v11_MeshLength) {set_attribute_value(10, (*v11_MeshLength)); } if (v12_MeshWidth) {set_attribute_value(11, (*v12_MeshWidth)); } if (v13_LongitudinalBarNominalDiameter) {set_attribute_value(12, (*v13_LongitudinalBarNominalDiameter)); } if (v14_TransverseBarNominalDiameter) {set_attribute_value(13, (*v14_TransverseBarNominalDiameter)); } if (v15_LongitudinalBarCrossSectionArea) {set_attribute_value(14, (*v15_LongitudinalBarCrossSectionArea)); } if (v16_TransverseBarCrossSectionArea) {set_attribute_value(15, (*v16_TransverseBarCrossSectionArea)); } if (v17_LongitudinalBarSpacing) {set_attribute_value(16, (*v17_LongitudinalBarSpacing)); } if (v18_TransverseBarSpacing) {set_attribute_value(17, (*v18_TransverseBarSpacing)); } if (v19_BendingShapeCode) {set_attribute_value(18, (*v19_BendingShapeCode)); } if (v20_BendingParameters) {set_attribute_value(19, cast_vector(*v20_BendingParameters)); }; return *this; } +Ifc4x3::IfcReinforcingMeshType Ifc4x3::IfcReinforcingMeshType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcReinforcingMeshTypeEnum::Value v10_PredefinedType, std::optional< double > v11_MeshLength, std::optional< double > v12_MeshWidth, std::optional< double > v13_LongitudinalBarNominalDiameter, std::optional< double > v14_TransverseBarNominalDiameter, std::optional< double > v15_LongitudinalBarCrossSectionArea, std::optional< double > v16_TransverseBarCrossSectionArea, std::optional< double > v17_LongitudinalBarSpacing, std::optional< double > v18_TransverseBarSpacing, std::optional< std::string > v19_BendingShapeCode, std::optional< std::vector< ::Ifc4x3::IfcBendingParameterSelect > > v20_BendingParameters) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcReinforcingMeshTypeEnum::Class(),(size_t)v10_PredefinedType))); if (v11_MeshLength) {set_attribute_value(10, (*v11_MeshLength)); } if (v12_MeshWidth) {set_attribute_value(11, (*v12_MeshWidth)); } if (v13_LongitudinalBarNominalDiameter) {set_attribute_value(12, (*v13_LongitudinalBarNominalDiameter)); } if (v14_TransverseBarNominalDiameter) {set_attribute_value(13, (*v14_TransverseBarNominalDiameter)); } if (v15_LongitudinalBarCrossSectionArea) {set_attribute_value(14, (*v15_LongitudinalBarCrossSectionArea)); } if (v16_TransverseBarCrossSectionArea) {set_attribute_value(15, (*v16_TransverseBarCrossSectionArea)); } if (v17_LongitudinalBarSpacing) {set_attribute_value(16, (*v17_LongitudinalBarSpacing)); } if (v18_TransverseBarSpacing) {set_attribute_value(17, (*v18_TransverseBarSpacing)); } if (v19_BendingShapeCode) {set_attribute_value(18, (*v19_BendingShapeCode)); } if (v20_BendingParameters) {set_attribute_value(19, cast_vector(*v20_BendingParameters)); }; return *this; } // Function implementations for IfcRelAdheresToElement -::Ifc4x3::IfcElement Ifc4x3::IfcRelAdheresToElement::RelatingElement() const { return ((express::Base)(get_attribute_value(4))).as<::Ifc4x3::IfcElement>(); } +::Ifc4x3::IfcElement Ifc4x3::IfcRelAdheresToElement::RelatingElement() const { return ((express::base)(get_attribute_value(4))).as<::Ifc4x3::IfcElement>(); } void Ifc4x3::IfcRelAdheresToElement::setRelatingElement(const ::Ifc4x3::IfcElement& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } -std::vector< ::Ifc4x3::IfcSurfaceFeature > Ifc4x3::IfcRelAdheresToElement::RelatedSurfaceFeatures() const { std::vector es = get_attribute_value(5); return cast_vector<::Ifc4x3::IfcSurfaceFeature>(es); } -void Ifc4x3::IfcRelAdheresToElement::setRelatedSurfaceFeatures(const std::vector< ::Ifc4x3::IfcSurfaceFeature >& v) { set_attribute_value(5, cast_vector(v));if constexpr (false)unset_attribute_value(5); } +std::vector< ::Ifc4x3::IfcSurfaceFeature > Ifc4x3::IfcRelAdheresToElement::RelatedSurfaceFeatures() const { std::vector es = get_attribute_value(5); return cast_vector<::Ifc4x3::IfcSurfaceFeature>(es); } +void Ifc4x3::IfcRelAdheresToElement::setRelatedSurfaceFeatures(const std::vector< ::Ifc4x3::IfcSurfaceFeature >& v) { set_attribute_value(5, cast_vector(v));if constexpr (false)unset_attribute_value(5); } const ifcopenshell::entity& Ifc4x3::IfcRelAdheresToElement::Class() { return *((ifcopenshell::entity*)IFC4X3_types[899]); } -Ifc4x3::IfcRelAdheresToElement Ifc4x3::IfcRelAdheresToElement::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, ::Ifc4x3::IfcElement v5_RelatingElement, std::vector< ::Ifc4x3::IfcSurfaceFeature > v6_RelatedSurfaceFeatures) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, (v5_RelatingElement));set_attribute_value(5, cast_vector(v6_RelatedSurfaceFeatures));; return *this; } +Ifc4x3::IfcRelAdheresToElement Ifc4x3::IfcRelAdheresToElement::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, ::Ifc4x3::IfcElement v5_RelatingElement, std::vector< ::Ifc4x3::IfcSurfaceFeature > v6_RelatedSurfaceFeatures) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, (v5_RelatingElement));set_attribute_value(5, cast_vector(v6_RelatedSurfaceFeatures));; return *this; } // Function implementations for IfcRelAggregates -::Ifc4x3::IfcObjectDefinition Ifc4x3::IfcRelAggregates::RelatingObject() const { return ((express::Base)(get_attribute_value(4))).as<::Ifc4x3::IfcObjectDefinition>(); } +::Ifc4x3::IfcObjectDefinition Ifc4x3::IfcRelAggregates::RelatingObject() const { return ((express::base)(get_attribute_value(4))).as<::Ifc4x3::IfcObjectDefinition>(); } void Ifc4x3::IfcRelAggregates::setRelatingObject(const ::Ifc4x3::IfcObjectDefinition& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } -std::vector< ::Ifc4x3::IfcObjectDefinition > Ifc4x3::IfcRelAggregates::RelatedObjects() const { std::vector es = get_attribute_value(5); return cast_vector<::Ifc4x3::IfcObjectDefinition>(es); } -void Ifc4x3::IfcRelAggregates::setRelatedObjects(const std::vector< ::Ifc4x3::IfcObjectDefinition >& v) { set_attribute_value(5, cast_vector(v));if constexpr (false)unset_attribute_value(5); } +std::vector< ::Ifc4x3::IfcObjectDefinition > Ifc4x3::IfcRelAggregates::RelatedObjects() const { std::vector es = get_attribute_value(5); return cast_vector<::Ifc4x3::IfcObjectDefinition>(es); } +void Ifc4x3::IfcRelAggregates::setRelatedObjects(const std::vector< ::Ifc4x3::IfcObjectDefinition >& v) { set_attribute_value(5, cast_vector(v));if constexpr (false)unset_attribute_value(5); } const ifcopenshell::entity& Ifc4x3::IfcRelAggregates::Class() { return *((ifcopenshell::entity*)IFC4X3_types[900]); } -Ifc4x3::IfcRelAggregates Ifc4x3::IfcRelAggregates::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, ::Ifc4x3::IfcObjectDefinition v5_RelatingObject, std::vector< ::Ifc4x3::IfcObjectDefinition > v6_RelatedObjects) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, (v5_RelatingObject));set_attribute_value(5, cast_vector(v6_RelatedObjects));; return *this; } +Ifc4x3::IfcRelAggregates Ifc4x3::IfcRelAggregates::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, ::Ifc4x3::IfcObjectDefinition v5_RelatingObject, std::vector< ::Ifc4x3::IfcObjectDefinition > v6_RelatedObjects) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, (v5_RelatingObject));set_attribute_value(5, cast_vector(v6_RelatedObjects));; return *this; } // Function implementations for IfcRelAssigns -std::vector< ::Ifc4x3::IfcObjectDefinition > Ifc4x3::IfcRelAssigns::RelatedObjects() const { std::vector es = get_attribute_value(4); return cast_vector<::Ifc4x3::IfcObjectDefinition>(es); } -void Ifc4x3::IfcRelAssigns::setRelatedObjects(const std::vector< ::Ifc4x3::IfcObjectDefinition >& v) { set_attribute_value(4, cast_vector(v));if constexpr (false)unset_attribute_value(4); } +std::vector< ::Ifc4x3::IfcObjectDefinition > Ifc4x3::IfcRelAssigns::RelatedObjects() const { std::vector es = get_attribute_value(4); return cast_vector<::Ifc4x3::IfcObjectDefinition>(es); } +void Ifc4x3::IfcRelAssigns::setRelatedObjects(const std::vector< ::Ifc4x3::IfcObjectDefinition >& v) { set_attribute_value(4, cast_vector(v));if constexpr (false)unset_attribute_value(4); } std::optional< ::Ifc4x3::IfcObjectTypeEnum::Value > Ifc4x3::IfcRelAssigns::RelatedObjectsType() const { if(get_attribute_value(5).isNull()) { return std::nullopt; } return ::Ifc4x3::IfcObjectTypeEnum::FromString(get_attribute_value(5)); } void Ifc4x3::IfcRelAssigns::setRelatedObjectsType(const std::optional< ::Ifc4x3::IfcObjectTypeEnum::Value >& v) { if (v) {set_attribute_value(5, enumeration_reference(&::Ifc4x3::IfcObjectTypeEnum::Class(), (size_t) *v));} else {unset_attribute_value(5);} } const ifcopenshell::entity& Ifc4x3::IfcRelAssigns::Class() { return *((ifcopenshell::entity*)IFC4X3_types[901]); } -Ifc4x3::IfcRelAssigns Ifc4x3::IfcRelAssigns::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3::IfcObjectDefinition > v5_RelatedObjects, std::optional< ::Ifc4x3::IfcObjectTypeEnum::Value > v6_RelatedObjectsType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedObjects)); if (v6_RelatedObjectsType) {set_attribute_value(5, (enumeration_reference(&::Ifc4x3::IfcObjectTypeEnum::Class(),(size_t)*v6_RelatedObjectsType))); }; return *this; } +Ifc4x3::IfcRelAssigns Ifc4x3::IfcRelAssigns::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3::IfcObjectDefinition > v5_RelatedObjects, std::optional< ::Ifc4x3::IfcObjectTypeEnum::Value > v6_RelatedObjectsType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedObjects)); if (v6_RelatedObjectsType) {set_attribute_value(5, (enumeration_reference(&::Ifc4x3::IfcObjectTypeEnum::Class(),(size_t)*v6_RelatedObjectsType))); }; return *this; } // Function implementations for IfcRelAssignsToActor -::Ifc4x3::IfcActor Ifc4x3::IfcRelAssignsToActor::RelatingActor() const { return ((express::Base)(get_attribute_value(6))).as<::Ifc4x3::IfcActor>(); } +::Ifc4x3::IfcActor Ifc4x3::IfcRelAssignsToActor::RelatingActor() const { return ((express::base)(get_attribute_value(6))).as<::Ifc4x3::IfcActor>(); } void Ifc4x3::IfcRelAssignsToActor::setRelatingActor(const ::Ifc4x3::IfcActor& v) { set_attribute_value(6, v);if constexpr (false)unset_attribute_value(6); } -::Ifc4x3::IfcActorRole Ifc4x3::IfcRelAssignsToActor::ActingRole() const { if(get_attribute_value(7).isNull()) { return ::Ifc4x3::IfcActorRole{}; } return ((express::Base)(get_attribute_value(7))).as<::Ifc4x3::IfcActorRole>(); } +::Ifc4x3::IfcActorRole Ifc4x3::IfcRelAssignsToActor::ActingRole() const { if(get_attribute_value(7).isNull()) { return ::Ifc4x3::IfcActorRole{}; } return ((express::base)(get_attribute_value(7))).as<::Ifc4x3::IfcActorRole>(); } void Ifc4x3::IfcRelAssignsToActor::setActingRole(const ::Ifc4x3::IfcActorRole& v) { set_attribute_value(7, v);if constexpr (false)unset_attribute_value(7); } const ifcopenshell::entity& Ifc4x3::IfcRelAssignsToActor::Class() { return *((ifcopenshell::entity*)IFC4X3_types[902]); } -Ifc4x3::IfcRelAssignsToActor Ifc4x3::IfcRelAssignsToActor::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3::IfcObjectDefinition > v5_RelatedObjects, std::optional< ::Ifc4x3::IfcObjectTypeEnum::Value > v6_RelatedObjectsType, ::Ifc4x3::IfcActor v7_RelatingActor, ::Ifc4x3::IfcActorRole v8_ActingRole) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedObjects)); if (v6_RelatedObjectsType) {set_attribute_value(5, (enumeration_reference(&::Ifc4x3::IfcObjectTypeEnum::Class(),(size_t)*v6_RelatedObjectsType))); }set_attribute_value(6, (v7_RelatingActor));set_attribute_value(7, (v8_ActingRole));; return *this; } +Ifc4x3::IfcRelAssignsToActor Ifc4x3::IfcRelAssignsToActor::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3::IfcObjectDefinition > v5_RelatedObjects, std::optional< ::Ifc4x3::IfcObjectTypeEnum::Value > v6_RelatedObjectsType, ::Ifc4x3::IfcActor v7_RelatingActor, ::Ifc4x3::IfcActorRole v8_ActingRole) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedObjects)); if (v6_RelatedObjectsType) {set_attribute_value(5, (enumeration_reference(&::Ifc4x3::IfcObjectTypeEnum::Class(),(size_t)*v6_RelatedObjectsType))); }set_attribute_value(6, (v7_RelatingActor));set_attribute_value(7, (v8_ActingRole));; return *this; } // Function implementations for IfcRelAssignsToControl -::Ifc4x3::IfcControl Ifc4x3::IfcRelAssignsToControl::RelatingControl() const { return ((express::Base)(get_attribute_value(6))).as<::Ifc4x3::IfcControl>(); } +::Ifc4x3::IfcControl Ifc4x3::IfcRelAssignsToControl::RelatingControl() const { return ((express::base)(get_attribute_value(6))).as<::Ifc4x3::IfcControl>(); } void Ifc4x3::IfcRelAssignsToControl::setRelatingControl(const ::Ifc4x3::IfcControl& v) { set_attribute_value(6, v);if constexpr (false)unset_attribute_value(6); } const ifcopenshell::entity& Ifc4x3::IfcRelAssignsToControl::Class() { return *((ifcopenshell::entity*)IFC4X3_types[903]); } -Ifc4x3::IfcRelAssignsToControl Ifc4x3::IfcRelAssignsToControl::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3::IfcObjectDefinition > v5_RelatedObjects, std::optional< ::Ifc4x3::IfcObjectTypeEnum::Value > v6_RelatedObjectsType, ::Ifc4x3::IfcControl v7_RelatingControl) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedObjects)); if (v6_RelatedObjectsType) {set_attribute_value(5, (enumeration_reference(&::Ifc4x3::IfcObjectTypeEnum::Class(),(size_t)*v6_RelatedObjectsType))); }set_attribute_value(6, (v7_RelatingControl));; return *this; } +Ifc4x3::IfcRelAssignsToControl Ifc4x3::IfcRelAssignsToControl::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3::IfcObjectDefinition > v5_RelatedObjects, std::optional< ::Ifc4x3::IfcObjectTypeEnum::Value > v6_RelatedObjectsType, ::Ifc4x3::IfcControl v7_RelatingControl) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedObjects)); if (v6_RelatedObjectsType) {set_attribute_value(5, (enumeration_reference(&::Ifc4x3::IfcObjectTypeEnum::Class(),(size_t)*v6_RelatedObjectsType))); }set_attribute_value(6, (v7_RelatingControl));; return *this; } // Function implementations for IfcRelAssignsToGroup -::Ifc4x3::IfcGroup Ifc4x3::IfcRelAssignsToGroup::RelatingGroup() const { return ((express::Base)(get_attribute_value(6))).as<::Ifc4x3::IfcGroup>(); } +::Ifc4x3::IfcGroup Ifc4x3::IfcRelAssignsToGroup::RelatingGroup() const { return ((express::base)(get_attribute_value(6))).as<::Ifc4x3::IfcGroup>(); } void Ifc4x3::IfcRelAssignsToGroup::setRelatingGroup(const ::Ifc4x3::IfcGroup& v) { set_attribute_value(6, v);if constexpr (false)unset_attribute_value(6); } const ifcopenshell::entity& Ifc4x3::IfcRelAssignsToGroup::Class() { return *((ifcopenshell::entity*)IFC4X3_types[904]); } -Ifc4x3::IfcRelAssignsToGroup Ifc4x3::IfcRelAssignsToGroup::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3::IfcObjectDefinition > v5_RelatedObjects, std::optional< ::Ifc4x3::IfcObjectTypeEnum::Value > v6_RelatedObjectsType, ::Ifc4x3::IfcGroup v7_RelatingGroup) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedObjects)); if (v6_RelatedObjectsType) {set_attribute_value(5, (enumeration_reference(&::Ifc4x3::IfcObjectTypeEnum::Class(),(size_t)*v6_RelatedObjectsType))); }set_attribute_value(6, (v7_RelatingGroup));; return *this; } +Ifc4x3::IfcRelAssignsToGroup Ifc4x3::IfcRelAssignsToGroup::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3::IfcObjectDefinition > v5_RelatedObjects, std::optional< ::Ifc4x3::IfcObjectTypeEnum::Value > v6_RelatedObjectsType, ::Ifc4x3::IfcGroup v7_RelatingGroup) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedObjects)); if (v6_RelatedObjectsType) {set_attribute_value(5, (enumeration_reference(&::Ifc4x3::IfcObjectTypeEnum::Class(),(size_t)*v6_RelatedObjectsType))); }set_attribute_value(6, (v7_RelatingGroup));; return *this; } // Function implementations for IfcRelAssignsToGroupByFactor double Ifc4x3::IfcRelAssignsToGroupByFactor::Factor() const { double v = get_attribute_value(7); return v; } @@ -13784,99 +13784,99 @@ void Ifc4x3::IfcRelAssignsToGroupByFactor::setFactor(const double& v) { set_attr const ifcopenshell::entity& Ifc4x3::IfcRelAssignsToGroupByFactor::Class() { return *((ifcopenshell::entity*)IFC4X3_types[905]); } -Ifc4x3::IfcRelAssignsToGroupByFactor Ifc4x3::IfcRelAssignsToGroupByFactor::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3::IfcObjectDefinition > v5_RelatedObjects, std::optional< ::Ifc4x3::IfcObjectTypeEnum::Value > v6_RelatedObjectsType, ::Ifc4x3::IfcGroup v7_RelatingGroup, double v8_Factor) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedObjects)); if (v6_RelatedObjectsType) {set_attribute_value(5, (enumeration_reference(&::Ifc4x3::IfcObjectTypeEnum::Class(),(size_t)*v6_RelatedObjectsType))); }set_attribute_value(6, (v7_RelatingGroup));set_attribute_value(7, (v8_Factor));; return *this; } +Ifc4x3::IfcRelAssignsToGroupByFactor Ifc4x3::IfcRelAssignsToGroupByFactor::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3::IfcObjectDefinition > v5_RelatedObjects, std::optional< ::Ifc4x3::IfcObjectTypeEnum::Value > v6_RelatedObjectsType, ::Ifc4x3::IfcGroup v7_RelatingGroup, double v8_Factor) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedObjects)); if (v6_RelatedObjectsType) {set_attribute_value(5, (enumeration_reference(&::Ifc4x3::IfcObjectTypeEnum::Class(),(size_t)*v6_RelatedObjectsType))); }set_attribute_value(6, (v7_RelatingGroup));set_attribute_value(7, (v8_Factor));; return *this; } // Function implementations for IfcRelAssignsToProcess -::Ifc4x3::IfcProcessSelect Ifc4x3::IfcRelAssignsToProcess::RelatingProcess() const { return ((express::Base)(get_attribute_value(6))).as<::Ifc4x3::IfcProcessSelect>(); } +::Ifc4x3::IfcProcessSelect Ifc4x3::IfcRelAssignsToProcess::RelatingProcess() const { return ((express::base)(get_attribute_value(6))).as<::Ifc4x3::IfcProcessSelect>(); } void Ifc4x3::IfcRelAssignsToProcess::setRelatingProcess(const ::Ifc4x3::IfcProcessSelect& v) { set_attribute_value(6, v);if constexpr (false)unset_attribute_value(6); } -::Ifc4x3::IfcMeasureWithUnit Ifc4x3::IfcRelAssignsToProcess::QuantityInProcess() const { if(get_attribute_value(7).isNull()) { return ::Ifc4x3::IfcMeasureWithUnit{}; } return ((express::Base)(get_attribute_value(7))).as<::Ifc4x3::IfcMeasureWithUnit>(); } +::Ifc4x3::IfcMeasureWithUnit Ifc4x3::IfcRelAssignsToProcess::QuantityInProcess() const { if(get_attribute_value(7).isNull()) { return ::Ifc4x3::IfcMeasureWithUnit{}; } return ((express::base)(get_attribute_value(7))).as<::Ifc4x3::IfcMeasureWithUnit>(); } void Ifc4x3::IfcRelAssignsToProcess::setQuantityInProcess(const ::Ifc4x3::IfcMeasureWithUnit& v) { set_attribute_value(7, v);if constexpr (false)unset_attribute_value(7); } const ifcopenshell::entity& Ifc4x3::IfcRelAssignsToProcess::Class() { return *((ifcopenshell::entity*)IFC4X3_types[906]); } -Ifc4x3::IfcRelAssignsToProcess Ifc4x3::IfcRelAssignsToProcess::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3::IfcObjectDefinition > v5_RelatedObjects, std::optional< ::Ifc4x3::IfcObjectTypeEnum::Value > v6_RelatedObjectsType, ::Ifc4x3::IfcProcessSelect v7_RelatingProcess, ::Ifc4x3::IfcMeasureWithUnit v8_QuantityInProcess) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedObjects)); if (v6_RelatedObjectsType) {set_attribute_value(5, (enumeration_reference(&::Ifc4x3::IfcObjectTypeEnum::Class(),(size_t)*v6_RelatedObjectsType))); }set_attribute_value(6, (v7_RelatingProcess));set_attribute_value(7, (v8_QuantityInProcess));; return *this; } +Ifc4x3::IfcRelAssignsToProcess Ifc4x3::IfcRelAssignsToProcess::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3::IfcObjectDefinition > v5_RelatedObjects, std::optional< ::Ifc4x3::IfcObjectTypeEnum::Value > v6_RelatedObjectsType, ::Ifc4x3::IfcProcessSelect v7_RelatingProcess, ::Ifc4x3::IfcMeasureWithUnit v8_QuantityInProcess) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedObjects)); if (v6_RelatedObjectsType) {set_attribute_value(5, (enumeration_reference(&::Ifc4x3::IfcObjectTypeEnum::Class(),(size_t)*v6_RelatedObjectsType))); }set_attribute_value(6, (v7_RelatingProcess));set_attribute_value(7, (v8_QuantityInProcess));; return *this; } // Function implementations for IfcRelAssignsToProduct -::Ifc4x3::IfcProductSelect Ifc4x3::IfcRelAssignsToProduct::RelatingProduct() const { return ((express::Base)(get_attribute_value(6))).as<::Ifc4x3::IfcProductSelect>(); } +::Ifc4x3::IfcProductSelect Ifc4x3::IfcRelAssignsToProduct::RelatingProduct() const { return ((express::base)(get_attribute_value(6))).as<::Ifc4x3::IfcProductSelect>(); } void Ifc4x3::IfcRelAssignsToProduct::setRelatingProduct(const ::Ifc4x3::IfcProductSelect& v) { set_attribute_value(6, v);if constexpr (false)unset_attribute_value(6); } const ifcopenshell::entity& Ifc4x3::IfcRelAssignsToProduct::Class() { return *((ifcopenshell::entity*)IFC4X3_types[907]); } -Ifc4x3::IfcRelAssignsToProduct Ifc4x3::IfcRelAssignsToProduct::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3::IfcObjectDefinition > v5_RelatedObjects, std::optional< ::Ifc4x3::IfcObjectTypeEnum::Value > v6_RelatedObjectsType, ::Ifc4x3::IfcProductSelect v7_RelatingProduct) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedObjects)); if (v6_RelatedObjectsType) {set_attribute_value(5, (enumeration_reference(&::Ifc4x3::IfcObjectTypeEnum::Class(),(size_t)*v6_RelatedObjectsType))); }set_attribute_value(6, (v7_RelatingProduct));; return *this; } +Ifc4x3::IfcRelAssignsToProduct Ifc4x3::IfcRelAssignsToProduct::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3::IfcObjectDefinition > v5_RelatedObjects, std::optional< ::Ifc4x3::IfcObjectTypeEnum::Value > v6_RelatedObjectsType, ::Ifc4x3::IfcProductSelect v7_RelatingProduct) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedObjects)); if (v6_RelatedObjectsType) {set_attribute_value(5, (enumeration_reference(&::Ifc4x3::IfcObjectTypeEnum::Class(),(size_t)*v6_RelatedObjectsType))); }set_attribute_value(6, (v7_RelatingProduct));; return *this; } // Function implementations for IfcRelAssignsToResource -::Ifc4x3::IfcResourceSelect Ifc4x3::IfcRelAssignsToResource::RelatingResource() const { return ((express::Base)(get_attribute_value(6))).as<::Ifc4x3::IfcResourceSelect>(); } +::Ifc4x3::IfcResourceSelect Ifc4x3::IfcRelAssignsToResource::RelatingResource() const { return ((express::base)(get_attribute_value(6))).as<::Ifc4x3::IfcResourceSelect>(); } void Ifc4x3::IfcRelAssignsToResource::setRelatingResource(const ::Ifc4x3::IfcResourceSelect& v) { set_attribute_value(6, v);if constexpr (false)unset_attribute_value(6); } const ifcopenshell::entity& Ifc4x3::IfcRelAssignsToResource::Class() { return *((ifcopenshell::entity*)IFC4X3_types[908]); } -Ifc4x3::IfcRelAssignsToResource Ifc4x3::IfcRelAssignsToResource::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3::IfcObjectDefinition > v5_RelatedObjects, std::optional< ::Ifc4x3::IfcObjectTypeEnum::Value > v6_RelatedObjectsType, ::Ifc4x3::IfcResourceSelect v7_RelatingResource) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedObjects)); if (v6_RelatedObjectsType) {set_attribute_value(5, (enumeration_reference(&::Ifc4x3::IfcObjectTypeEnum::Class(),(size_t)*v6_RelatedObjectsType))); }set_attribute_value(6, (v7_RelatingResource));; return *this; } +Ifc4x3::IfcRelAssignsToResource Ifc4x3::IfcRelAssignsToResource::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3::IfcObjectDefinition > v5_RelatedObjects, std::optional< ::Ifc4x3::IfcObjectTypeEnum::Value > v6_RelatedObjectsType, ::Ifc4x3::IfcResourceSelect v7_RelatingResource) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedObjects)); if (v6_RelatedObjectsType) {set_attribute_value(5, (enumeration_reference(&::Ifc4x3::IfcObjectTypeEnum::Class(),(size_t)*v6_RelatedObjectsType))); }set_attribute_value(6, (v7_RelatingResource));; return *this; } // Function implementations for IfcRelAssociates -std::vector< ::Ifc4x3::IfcDefinitionSelect > Ifc4x3::IfcRelAssociates::RelatedObjects() const { std::vector es = get_attribute_value(4); return cast_vector<::Ifc4x3::IfcDefinitionSelect>(es); } -void Ifc4x3::IfcRelAssociates::setRelatedObjects(const std::vector< ::Ifc4x3::IfcDefinitionSelect >& v) { set_attribute_value(4, cast_vector(v));if constexpr (false)unset_attribute_value(4); } +std::vector< ::Ifc4x3::IfcDefinitionSelect > Ifc4x3::IfcRelAssociates::RelatedObjects() const { std::vector es = get_attribute_value(4); return cast_vector<::Ifc4x3::IfcDefinitionSelect>(es); } +void Ifc4x3::IfcRelAssociates::setRelatedObjects(const std::vector< ::Ifc4x3::IfcDefinitionSelect >& v) { set_attribute_value(4, cast_vector(v));if constexpr (false)unset_attribute_value(4); } const ifcopenshell::entity& Ifc4x3::IfcRelAssociates::Class() { return *((ifcopenshell::entity*)IFC4X3_types[909]); } -Ifc4x3::IfcRelAssociates Ifc4x3::IfcRelAssociates::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3::IfcDefinitionSelect > v5_RelatedObjects) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedObjects));; return *this; } +Ifc4x3::IfcRelAssociates Ifc4x3::IfcRelAssociates::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3::IfcDefinitionSelect > v5_RelatedObjects) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedObjects));; return *this; } // Function implementations for IfcRelAssociatesApproval -::Ifc4x3::IfcApproval Ifc4x3::IfcRelAssociatesApproval::RelatingApproval() const { return ((express::Base)(get_attribute_value(5))).as<::Ifc4x3::IfcApproval>(); } +::Ifc4x3::IfcApproval Ifc4x3::IfcRelAssociatesApproval::RelatingApproval() const { return ((express::base)(get_attribute_value(5))).as<::Ifc4x3::IfcApproval>(); } void Ifc4x3::IfcRelAssociatesApproval::setRelatingApproval(const ::Ifc4x3::IfcApproval& v) { set_attribute_value(5, v);if constexpr (false)unset_attribute_value(5); } const ifcopenshell::entity& Ifc4x3::IfcRelAssociatesApproval::Class() { return *((ifcopenshell::entity*)IFC4X3_types[910]); } -Ifc4x3::IfcRelAssociatesApproval Ifc4x3::IfcRelAssociatesApproval::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3::IfcDefinitionSelect > v5_RelatedObjects, ::Ifc4x3::IfcApproval v6_RelatingApproval) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedObjects));set_attribute_value(5, (v6_RelatingApproval));; return *this; } +Ifc4x3::IfcRelAssociatesApproval Ifc4x3::IfcRelAssociatesApproval::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3::IfcDefinitionSelect > v5_RelatedObjects, ::Ifc4x3::IfcApproval v6_RelatingApproval) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedObjects));set_attribute_value(5, (v6_RelatingApproval));; return *this; } // Function implementations for IfcRelAssociatesClassification -::Ifc4x3::IfcClassificationSelect Ifc4x3::IfcRelAssociatesClassification::RelatingClassification() const { return ((express::Base)(get_attribute_value(5))).as<::Ifc4x3::IfcClassificationSelect>(); } +::Ifc4x3::IfcClassificationSelect Ifc4x3::IfcRelAssociatesClassification::RelatingClassification() const { return ((express::base)(get_attribute_value(5))).as<::Ifc4x3::IfcClassificationSelect>(); } void Ifc4x3::IfcRelAssociatesClassification::setRelatingClassification(const ::Ifc4x3::IfcClassificationSelect& v) { set_attribute_value(5, v);if constexpr (false)unset_attribute_value(5); } const ifcopenshell::entity& Ifc4x3::IfcRelAssociatesClassification::Class() { return *((ifcopenshell::entity*)IFC4X3_types[911]); } -Ifc4x3::IfcRelAssociatesClassification Ifc4x3::IfcRelAssociatesClassification::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3::IfcDefinitionSelect > v5_RelatedObjects, ::Ifc4x3::IfcClassificationSelect v6_RelatingClassification) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedObjects));set_attribute_value(5, (v6_RelatingClassification));; return *this; } +Ifc4x3::IfcRelAssociatesClassification Ifc4x3::IfcRelAssociatesClassification::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3::IfcDefinitionSelect > v5_RelatedObjects, ::Ifc4x3::IfcClassificationSelect v6_RelatingClassification) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedObjects));set_attribute_value(5, (v6_RelatingClassification));; return *this; } // Function implementations for IfcRelAssociatesConstraint std::optional< std::string > Ifc4x3::IfcRelAssociatesConstraint::Intent() const { if(get_attribute_value(5).isNull()) { return std::nullopt; } std::string v = get_attribute_value(5); return v; } void Ifc4x3::IfcRelAssociatesConstraint::setIntent(const std::optional< std::string >& v) { if (v) {set_attribute_value(5, *v);} else {unset_attribute_value(5);} } -::Ifc4x3::IfcConstraint Ifc4x3::IfcRelAssociatesConstraint::RelatingConstraint() const { return ((express::Base)(get_attribute_value(6))).as<::Ifc4x3::IfcConstraint>(); } +::Ifc4x3::IfcConstraint Ifc4x3::IfcRelAssociatesConstraint::RelatingConstraint() const { return ((express::base)(get_attribute_value(6))).as<::Ifc4x3::IfcConstraint>(); } void Ifc4x3::IfcRelAssociatesConstraint::setRelatingConstraint(const ::Ifc4x3::IfcConstraint& v) { set_attribute_value(6, v);if constexpr (false)unset_attribute_value(6); } const ifcopenshell::entity& Ifc4x3::IfcRelAssociatesConstraint::Class() { return *((ifcopenshell::entity*)IFC4X3_types[912]); } -Ifc4x3::IfcRelAssociatesConstraint Ifc4x3::IfcRelAssociatesConstraint::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3::IfcDefinitionSelect > v5_RelatedObjects, std::optional< std::string > v6_Intent, ::Ifc4x3::IfcConstraint v7_RelatingConstraint) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedObjects)); if (v6_Intent) {set_attribute_value(5, (*v6_Intent)); }set_attribute_value(6, (v7_RelatingConstraint));; return *this; } +Ifc4x3::IfcRelAssociatesConstraint Ifc4x3::IfcRelAssociatesConstraint::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3::IfcDefinitionSelect > v5_RelatedObjects, std::optional< std::string > v6_Intent, ::Ifc4x3::IfcConstraint v7_RelatingConstraint) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedObjects)); if (v6_Intent) {set_attribute_value(5, (*v6_Intent)); }set_attribute_value(6, (v7_RelatingConstraint));; return *this; } // Function implementations for IfcRelAssociatesDocument -::Ifc4x3::IfcDocumentSelect Ifc4x3::IfcRelAssociatesDocument::RelatingDocument() const { return ((express::Base)(get_attribute_value(5))).as<::Ifc4x3::IfcDocumentSelect>(); } +::Ifc4x3::IfcDocumentSelect Ifc4x3::IfcRelAssociatesDocument::RelatingDocument() const { return ((express::base)(get_attribute_value(5))).as<::Ifc4x3::IfcDocumentSelect>(); } void Ifc4x3::IfcRelAssociatesDocument::setRelatingDocument(const ::Ifc4x3::IfcDocumentSelect& v) { set_attribute_value(5, v);if constexpr (false)unset_attribute_value(5); } const ifcopenshell::entity& Ifc4x3::IfcRelAssociatesDocument::Class() { return *((ifcopenshell::entity*)IFC4X3_types[913]); } -Ifc4x3::IfcRelAssociatesDocument Ifc4x3::IfcRelAssociatesDocument::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3::IfcDefinitionSelect > v5_RelatedObjects, ::Ifc4x3::IfcDocumentSelect v6_RelatingDocument) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedObjects));set_attribute_value(5, (v6_RelatingDocument));; return *this; } +Ifc4x3::IfcRelAssociatesDocument Ifc4x3::IfcRelAssociatesDocument::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3::IfcDefinitionSelect > v5_RelatedObjects, ::Ifc4x3::IfcDocumentSelect v6_RelatingDocument) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedObjects));set_attribute_value(5, (v6_RelatingDocument));; return *this; } // Function implementations for IfcRelAssociatesLibrary -::Ifc4x3::IfcLibrarySelect Ifc4x3::IfcRelAssociatesLibrary::RelatingLibrary() const { return ((express::Base)(get_attribute_value(5))).as<::Ifc4x3::IfcLibrarySelect>(); } +::Ifc4x3::IfcLibrarySelect Ifc4x3::IfcRelAssociatesLibrary::RelatingLibrary() const { return ((express::base)(get_attribute_value(5))).as<::Ifc4x3::IfcLibrarySelect>(); } void Ifc4x3::IfcRelAssociatesLibrary::setRelatingLibrary(const ::Ifc4x3::IfcLibrarySelect& v) { set_attribute_value(5, v);if constexpr (false)unset_attribute_value(5); } const ifcopenshell::entity& Ifc4x3::IfcRelAssociatesLibrary::Class() { return *((ifcopenshell::entity*)IFC4X3_types[914]); } -Ifc4x3::IfcRelAssociatesLibrary Ifc4x3::IfcRelAssociatesLibrary::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3::IfcDefinitionSelect > v5_RelatedObjects, ::Ifc4x3::IfcLibrarySelect v6_RelatingLibrary) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedObjects));set_attribute_value(5, (v6_RelatingLibrary));; return *this; } +Ifc4x3::IfcRelAssociatesLibrary Ifc4x3::IfcRelAssociatesLibrary::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3::IfcDefinitionSelect > v5_RelatedObjects, ::Ifc4x3::IfcLibrarySelect v6_RelatingLibrary) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedObjects));set_attribute_value(5, (v6_RelatingLibrary));; return *this; } // Function implementations for IfcRelAssociatesMaterial -::Ifc4x3::IfcMaterialSelect Ifc4x3::IfcRelAssociatesMaterial::RelatingMaterial() const { return ((express::Base)(get_attribute_value(5))).as<::Ifc4x3::IfcMaterialSelect>(); } +::Ifc4x3::IfcMaterialSelect Ifc4x3::IfcRelAssociatesMaterial::RelatingMaterial() const { return ((express::base)(get_attribute_value(5))).as<::Ifc4x3::IfcMaterialSelect>(); } void Ifc4x3::IfcRelAssociatesMaterial::setRelatingMaterial(const ::Ifc4x3::IfcMaterialSelect& v) { set_attribute_value(5, v);if constexpr (false)unset_attribute_value(5); } const ifcopenshell::entity& Ifc4x3::IfcRelAssociatesMaterial::Class() { return *((ifcopenshell::entity*)IFC4X3_types[915]); } -Ifc4x3::IfcRelAssociatesMaterial Ifc4x3::IfcRelAssociatesMaterial::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3::IfcDefinitionSelect > v5_RelatedObjects, ::Ifc4x3::IfcMaterialSelect v6_RelatingMaterial) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedObjects));set_attribute_value(5, (v6_RelatingMaterial));; return *this; } +Ifc4x3::IfcRelAssociatesMaterial Ifc4x3::IfcRelAssociatesMaterial::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3::IfcDefinitionSelect > v5_RelatedObjects, ::Ifc4x3::IfcMaterialSelect v6_RelatingMaterial) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedObjects));set_attribute_value(5, (v6_RelatingMaterial));; return *this; } // Function implementations for IfcRelAssociatesProfileDef -::Ifc4x3::IfcProfileDef Ifc4x3::IfcRelAssociatesProfileDef::RelatingProfileDef() const { return ((express::Base)(get_attribute_value(5))).as<::Ifc4x3::IfcProfileDef>(); } +::Ifc4x3::IfcProfileDef Ifc4x3::IfcRelAssociatesProfileDef::RelatingProfileDef() const { return ((express::base)(get_attribute_value(5))).as<::Ifc4x3::IfcProfileDef>(); } void Ifc4x3::IfcRelAssociatesProfileDef::setRelatingProfileDef(const ::Ifc4x3::IfcProfileDef& v) { set_attribute_value(5, v);if constexpr (false)unset_attribute_value(5); } const ifcopenshell::entity& Ifc4x3::IfcRelAssociatesProfileDef::Class() { return *((ifcopenshell::entity*)IFC4X3_types[916]); } -Ifc4x3::IfcRelAssociatesProfileDef Ifc4x3::IfcRelAssociatesProfileDef::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3::IfcDefinitionSelect > v5_RelatedObjects, ::Ifc4x3::IfcProfileDef v6_RelatingProfileDef) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedObjects));set_attribute_value(5, (v6_RelatingProfileDef));; return *this; } +Ifc4x3::IfcRelAssociatesProfileDef Ifc4x3::IfcRelAssociatesProfileDef::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3::IfcDefinitionSelect > v5_RelatedObjects, ::Ifc4x3::IfcProfileDef v6_RelatingProfileDef) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedObjects));set_attribute_value(5, (v6_RelatingProfileDef));; return *this; } // Function implementations for IfcRelConnects @@ -13885,11 +13885,11 @@ const ifcopenshell::entity& Ifc4x3::IfcRelConnects::Class() { return *((ifcopens Ifc4x3::IfcRelConnects Ifc4x3::IfcRelConnects::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }; return *this; } // Function implementations for IfcRelConnectsElements -::Ifc4x3::IfcConnectionGeometry Ifc4x3::IfcRelConnectsElements::ConnectionGeometry() const { if(get_attribute_value(4).isNull()) { return ::Ifc4x3::IfcConnectionGeometry{}; } return ((express::Base)(get_attribute_value(4))).as<::Ifc4x3::IfcConnectionGeometry>(); } +::Ifc4x3::IfcConnectionGeometry Ifc4x3::IfcRelConnectsElements::ConnectionGeometry() const { if(get_attribute_value(4).isNull()) { return ::Ifc4x3::IfcConnectionGeometry{}; } return ((express::base)(get_attribute_value(4))).as<::Ifc4x3::IfcConnectionGeometry>(); } void Ifc4x3::IfcRelConnectsElements::setConnectionGeometry(const ::Ifc4x3::IfcConnectionGeometry& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } -::Ifc4x3::IfcElement Ifc4x3::IfcRelConnectsElements::RelatingElement() const { return ((express::Base)(get_attribute_value(5))).as<::Ifc4x3::IfcElement>(); } +::Ifc4x3::IfcElement Ifc4x3::IfcRelConnectsElements::RelatingElement() const { return ((express::base)(get_attribute_value(5))).as<::Ifc4x3::IfcElement>(); } void Ifc4x3::IfcRelConnectsElements::setRelatingElement(const ::Ifc4x3::IfcElement& v) { set_attribute_value(5, v);if constexpr (false)unset_attribute_value(5); } -::Ifc4x3::IfcElement Ifc4x3::IfcRelConnectsElements::RelatedElement() const { return ((express::Base)(get_attribute_value(6))).as<::Ifc4x3::IfcElement>(); } +::Ifc4x3::IfcElement Ifc4x3::IfcRelConnectsElements::RelatedElement() const { return ((express::base)(get_attribute_value(6))).as<::Ifc4x3::IfcElement>(); } void Ifc4x3::IfcRelConnectsElements::setRelatedElement(const ::Ifc4x3::IfcElement& v) { set_attribute_value(6, v);if constexpr (false)unset_attribute_value(6); } @@ -13911,9 +13911,9 @@ const ifcopenshell::entity& Ifc4x3::IfcRelConnectsPathElements::Class() { return Ifc4x3::IfcRelConnectsPathElements Ifc4x3::IfcRelConnectsPathElements::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, ::Ifc4x3::IfcConnectionGeometry v5_ConnectionGeometry, ::Ifc4x3::IfcElement v6_RelatingElement, ::Ifc4x3::IfcElement v7_RelatedElement, std::vector< int64_t > /*[0:?]*/ v8_RelatingPriorities, std::vector< int64_t > /*[0:?]*/ v9_RelatedPriorities, ::Ifc4x3::IfcConnectionTypeEnum::Value v10_RelatedConnectionType, ::Ifc4x3::IfcConnectionTypeEnum::Value v11_RelatingConnectionType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, (v5_ConnectionGeometry));set_attribute_value(5, (v6_RelatingElement));set_attribute_value(6, (v7_RelatedElement));set_attribute_value(7, (v8_RelatingPriorities));set_attribute_value(8, (v9_RelatedPriorities));set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcConnectionTypeEnum::Class(),(size_t)v10_RelatedConnectionType)));set_attribute_value(10, (enumeration_reference(&::Ifc4x3::IfcConnectionTypeEnum::Class(),(size_t)v11_RelatingConnectionType)));; return *this; } // Function implementations for IfcRelConnectsPortToElement -::Ifc4x3::IfcPort Ifc4x3::IfcRelConnectsPortToElement::RelatingPort() const { return ((express::Base)(get_attribute_value(4))).as<::Ifc4x3::IfcPort>(); } +::Ifc4x3::IfcPort Ifc4x3::IfcRelConnectsPortToElement::RelatingPort() const { return ((express::base)(get_attribute_value(4))).as<::Ifc4x3::IfcPort>(); } void Ifc4x3::IfcRelConnectsPortToElement::setRelatingPort(const ::Ifc4x3::IfcPort& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } -::Ifc4x3::IfcDistributionElement Ifc4x3::IfcRelConnectsPortToElement::RelatedElement() const { return ((express::Base)(get_attribute_value(5))).as<::Ifc4x3::IfcDistributionElement>(); } +::Ifc4x3::IfcDistributionElement Ifc4x3::IfcRelConnectsPortToElement::RelatedElement() const { return ((express::base)(get_attribute_value(5))).as<::Ifc4x3::IfcDistributionElement>(); } void Ifc4x3::IfcRelConnectsPortToElement::setRelatedElement(const ::Ifc4x3::IfcDistributionElement& v) { set_attribute_value(5, v);if constexpr (false)unset_attribute_value(5); } @@ -13921,11 +13921,11 @@ const ifcopenshell::entity& Ifc4x3::IfcRelConnectsPortToElement::Class() { retur Ifc4x3::IfcRelConnectsPortToElement Ifc4x3::IfcRelConnectsPortToElement::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, ::Ifc4x3::IfcPort v5_RelatingPort, ::Ifc4x3::IfcDistributionElement v6_RelatedElement) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, (v5_RelatingPort));set_attribute_value(5, (v6_RelatedElement));; return *this; } // Function implementations for IfcRelConnectsPorts -::Ifc4x3::IfcPort Ifc4x3::IfcRelConnectsPorts::RelatingPort() const { return ((express::Base)(get_attribute_value(4))).as<::Ifc4x3::IfcPort>(); } +::Ifc4x3::IfcPort Ifc4x3::IfcRelConnectsPorts::RelatingPort() const { return ((express::base)(get_attribute_value(4))).as<::Ifc4x3::IfcPort>(); } void Ifc4x3::IfcRelConnectsPorts::setRelatingPort(const ::Ifc4x3::IfcPort& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } -::Ifc4x3::IfcPort Ifc4x3::IfcRelConnectsPorts::RelatedPort() const { return ((express::Base)(get_attribute_value(5))).as<::Ifc4x3::IfcPort>(); } +::Ifc4x3::IfcPort Ifc4x3::IfcRelConnectsPorts::RelatedPort() const { return ((express::base)(get_attribute_value(5))).as<::Ifc4x3::IfcPort>(); } void Ifc4x3::IfcRelConnectsPorts::setRelatedPort(const ::Ifc4x3::IfcPort& v) { set_attribute_value(5, v);if constexpr (false)unset_attribute_value(5); } -::Ifc4x3::IfcElement Ifc4x3::IfcRelConnectsPorts::RealizingElement() const { if(get_attribute_value(6).isNull()) { return ::Ifc4x3::IfcElement{}; } return ((express::Base)(get_attribute_value(6))).as<::Ifc4x3::IfcElement>(); } +::Ifc4x3::IfcElement Ifc4x3::IfcRelConnectsPorts::RealizingElement() const { if(get_attribute_value(6).isNull()) { return ::Ifc4x3::IfcElement{}; } return ((express::base)(get_attribute_value(6))).as<::Ifc4x3::IfcElement>(); } void Ifc4x3::IfcRelConnectsPorts::setRealizingElement(const ::Ifc4x3::IfcElement& v) { set_attribute_value(6, v);if constexpr (false)unset_attribute_value(6); } @@ -13933,9 +13933,9 @@ const ifcopenshell::entity& Ifc4x3::IfcRelConnectsPorts::Class() { return *((ifc Ifc4x3::IfcRelConnectsPorts Ifc4x3::IfcRelConnectsPorts::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, ::Ifc4x3::IfcPort v5_RelatingPort, ::Ifc4x3::IfcPort v6_RelatedPort, ::Ifc4x3::IfcElement v7_RealizingElement) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, (v5_RelatingPort));set_attribute_value(5, (v6_RelatedPort));set_attribute_value(6, (v7_RealizingElement));; return *this; } // Function implementations for IfcRelConnectsStructuralActivity -::Ifc4x3::IfcStructuralActivityAssignmentSelect Ifc4x3::IfcRelConnectsStructuralActivity::RelatingElement() const { return ((express::Base)(get_attribute_value(4))).as<::Ifc4x3::IfcStructuralActivityAssignmentSelect>(); } +::Ifc4x3::IfcStructuralActivityAssignmentSelect Ifc4x3::IfcRelConnectsStructuralActivity::RelatingElement() const { return ((express::base)(get_attribute_value(4))).as<::Ifc4x3::IfcStructuralActivityAssignmentSelect>(); } void Ifc4x3::IfcRelConnectsStructuralActivity::setRelatingElement(const ::Ifc4x3::IfcStructuralActivityAssignmentSelect& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } -::Ifc4x3::IfcStructuralActivity Ifc4x3::IfcRelConnectsStructuralActivity::RelatedStructuralActivity() const { return ((express::Base)(get_attribute_value(5))).as<::Ifc4x3::IfcStructuralActivity>(); } +::Ifc4x3::IfcStructuralActivity Ifc4x3::IfcRelConnectsStructuralActivity::RelatedStructuralActivity() const { return ((express::base)(get_attribute_value(5))).as<::Ifc4x3::IfcStructuralActivity>(); } void Ifc4x3::IfcRelConnectsStructuralActivity::setRelatedStructuralActivity(const ::Ifc4x3::IfcStructuralActivity& v) { set_attribute_value(5, v);if constexpr (false)unset_attribute_value(5); } @@ -13943,17 +13943,17 @@ const ifcopenshell::entity& Ifc4x3::IfcRelConnectsStructuralActivity::Class() { Ifc4x3::IfcRelConnectsStructuralActivity Ifc4x3::IfcRelConnectsStructuralActivity::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, ::Ifc4x3::IfcStructuralActivityAssignmentSelect v5_RelatingElement, ::Ifc4x3::IfcStructuralActivity v6_RelatedStructuralActivity) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, (v5_RelatingElement));set_attribute_value(5, (v6_RelatedStructuralActivity));; return *this; } // Function implementations for IfcRelConnectsStructuralMember -::Ifc4x3::IfcStructuralMember Ifc4x3::IfcRelConnectsStructuralMember::RelatingStructuralMember() const { return ((express::Base)(get_attribute_value(4))).as<::Ifc4x3::IfcStructuralMember>(); } +::Ifc4x3::IfcStructuralMember Ifc4x3::IfcRelConnectsStructuralMember::RelatingStructuralMember() const { return ((express::base)(get_attribute_value(4))).as<::Ifc4x3::IfcStructuralMember>(); } void Ifc4x3::IfcRelConnectsStructuralMember::setRelatingStructuralMember(const ::Ifc4x3::IfcStructuralMember& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } -::Ifc4x3::IfcStructuralConnection Ifc4x3::IfcRelConnectsStructuralMember::RelatedStructuralConnection() const { return ((express::Base)(get_attribute_value(5))).as<::Ifc4x3::IfcStructuralConnection>(); } +::Ifc4x3::IfcStructuralConnection Ifc4x3::IfcRelConnectsStructuralMember::RelatedStructuralConnection() const { return ((express::base)(get_attribute_value(5))).as<::Ifc4x3::IfcStructuralConnection>(); } void Ifc4x3::IfcRelConnectsStructuralMember::setRelatedStructuralConnection(const ::Ifc4x3::IfcStructuralConnection& v) { set_attribute_value(5, v);if constexpr (false)unset_attribute_value(5); } -::Ifc4x3::IfcBoundaryCondition Ifc4x3::IfcRelConnectsStructuralMember::AppliedCondition() const { if(get_attribute_value(6).isNull()) { return ::Ifc4x3::IfcBoundaryCondition{}; } return ((express::Base)(get_attribute_value(6))).as<::Ifc4x3::IfcBoundaryCondition>(); } +::Ifc4x3::IfcBoundaryCondition Ifc4x3::IfcRelConnectsStructuralMember::AppliedCondition() const { if(get_attribute_value(6).isNull()) { return ::Ifc4x3::IfcBoundaryCondition{}; } return ((express::base)(get_attribute_value(6))).as<::Ifc4x3::IfcBoundaryCondition>(); } void Ifc4x3::IfcRelConnectsStructuralMember::setAppliedCondition(const ::Ifc4x3::IfcBoundaryCondition& v) { set_attribute_value(6, v);if constexpr (false)unset_attribute_value(6); } -::Ifc4x3::IfcStructuralConnectionCondition Ifc4x3::IfcRelConnectsStructuralMember::AdditionalConditions() const { if(get_attribute_value(7).isNull()) { return ::Ifc4x3::IfcStructuralConnectionCondition{}; } return ((express::Base)(get_attribute_value(7))).as<::Ifc4x3::IfcStructuralConnectionCondition>(); } +::Ifc4x3::IfcStructuralConnectionCondition Ifc4x3::IfcRelConnectsStructuralMember::AdditionalConditions() const { if(get_attribute_value(7).isNull()) { return ::Ifc4x3::IfcStructuralConnectionCondition{}; } return ((express::base)(get_attribute_value(7))).as<::Ifc4x3::IfcStructuralConnectionCondition>(); } void Ifc4x3::IfcRelConnectsStructuralMember::setAdditionalConditions(const ::Ifc4x3::IfcStructuralConnectionCondition& v) { set_attribute_value(7, v);if constexpr (false)unset_attribute_value(7); } std::optional< double > Ifc4x3::IfcRelConnectsStructuralMember::SupportedLength() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } double v = get_attribute_value(8); return v; } void Ifc4x3::IfcRelConnectsStructuralMember::setSupportedLength(const std::optional< double >& v) { if (v) {set_attribute_value(8, *v);} else {unset_attribute_value(8);} } -::Ifc4x3::IfcAxis2Placement3D Ifc4x3::IfcRelConnectsStructuralMember::ConditionCoordinateSystem() const { if(get_attribute_value(9).isNull()) { return ::Ifc4x3::IfcAxis2Placement3D{}; } return ((express::Base)(get_attribute_value(9))).as<::Ifc4x3::IfcAxis2Placement3D>(); } +::Ifc4x3::IfcAxis2Placement3D Ifc4x3::IfcRelConnectsStructuralMember::ConditionCoordinateSystem() const { if(get_attribute_value(9).isNull()) { return ::Ifc4x3::IfcAxis2Placement3D{}; } return ((express::base)(get_attribute_value(9))).as<::Ifc4x3::IfcAxis2Placement3D>(); } void Ifc4x3::IfcRelConnectsStructuralMember::setConditionCoordinateSystem(const ::Ifc4x3::IfcAxis2Placement3D& v) { set_attribute_value(9, v);if constexpr (false)unset_attribute_value(9); } @@ -13961,7 +13961,7 @@ const ifcopenshell::entity& Ifc4x3::IfcRelConnectsStructuralMember::Class() { re Ifc4x3::IfcRelConnectsStructuralMember Ifc4x3::IfcRelConnectsStructuralMember::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, ::Ifc4x3::IfcStructuralMember v5_RelatingStructuralMember, ::Ifc4x3::IfcStructuralConnection v6_RelatedStructuralConnection, ::Ifc4x3::IfcBoundaryCondition v7_AppliedCondition, ::Ifc4x3::IfcStructuralConnectionCondition v8_AdditionalConditions, std::optional< double > v9_SupportedLength, ::Ifc4x3::IfcAxis2Placement3D v10_ConditionCoordinateSystem) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, (v5_RelatingStructuralMember));set_attribute_value(5, (v6_RelatedStructuralConnection));set_attribute_value(6, (v7_AppliedCondition));set_attribute_value(7, (v8_AdditionalConditions)); if (v9_SupportedLength) {set_attribute_value(8, (*v9_SupportedLength)); }set_attribute_value(9, (v10_ConditionCoordinateSystem));; return *this; } // Function implementations for IfcRelConnectsWithEccentricity -::Ifc4x3::IfcConnectionGeometry Ifc4x3::IfcRelConnectsWithEccentricity::ConnectionConstraint() const { return ((express::Base)(get_attribute_value(10))).as<::Ifc4x3::IfcConnectionGeometry>(); } +::Ifc4x3::IfcConnectionGeometry Ifc4x3::IfcRelConnectsWithEccentricity::ConnectionConstraint() const { return ((express::base)(get_attribute_value(10))).as<::Ifc4x3::IfcConnectionGeometry>(); } void Ifc4x3::IfcRelConnectsWithEccentricity::setConnectionConstraint(const ::Ifc4x3::IfcConnectionGeometry& v) { set_attribute_value(10, v);if constexpr (false)unset_attribute_value(10); } @@ -13969,54 +13969,54 @@ const ifcopenshell::entity& Ifc4x3::IfcRelConnectsWithEccentricity::Class() { re Ifc4x3::IfcRelConnectsWithEccentricity Ifc4x3::IfcRelConnectsWithEccentricity::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, ::Ifc4x3::IfcStructuralMember v5_RelatingStructuralMember, ::Ifc4x3::IfcStructuralConnection v6_RelatedStructuralConnection, ::Ifc4x3::IfcBoundaryCondition v7_AppliedCondition, ::Ifc4x3::IfcStructuralConnectionCondition v8_AdditionalConditions, std::optional< double > v9_SupportedLength, ::Ifc4x3::IfcAxis2Placement3D v10_ConditionCoordinateSystem, ::Ifc4x3::IfcConnectionGeometry v11_ConnectionConstraint) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, (v5_RelatingStructuralMember));set_attribute_value(5, (v6_RelatedStructuralConnection));set_attribute_value(6, (v7_AppliedCondition));set_attribute_value(7, (v8_AdditionalConditions)); if (v9_SupportedLength) {set_attribute_value(8, (*v9_SupportedLength)); }set_attribute_value(9, (v10_ConditionCoordinateSystem));set_attribute_value(10, (v11_ConnectionConstraint));; return *this; } // Function implementations for IfcRelConnectsWithRealizingElements -std::vector< ::Ifc4x3::IfcElement > Ifc4x3::IfcRelConnectsWithRealizingElements::RealizingElements() const { std::vector es = get_attribute_value(7); return cast_vector<::Ifc4x3::IfcElement>(es); } -void Ifc4x3::IfcRelConnectsWithRealizingElements::setRealizingElements(const std::vector< ::Ifc4x3::IfcElement >& v) { set_attribute_value(7, cast_vector(v));if constexpr (false)unset_attribute_value(7); } +std::vector< ::Ifc4x3::IfcElement > Ifc4x3::IfcRelConnectsWithRealizingElements::RealizingElements() const { std::vector es = get_attribute_value(7); return cast_vector<::Ifc4x3::IfcElement>(es); } +void Ifc4x3::IfcRelConnectsWithRealizingElements::setRealizingElements(const std::vector< ::Ifc4x3::IfcElement >& v) { set_attribute_value(7, cast_vector(v));if constexpr (false)unset_attribute_value(7); } std::optional< std::string > Ifc4x3::IfcRelConnectsWithRealizingElements::ConnectionType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } std::string v = get_attribute_value(8); return v; } void Ifc4x3::IfcRelConnectsWithRealizingElements::setConnectionType(const std::optional< std::string >& v) { if (v) {set_attribute_value(8, *v);} else {unset_attribute_value(8);} } const ifcopenshell::entity& Ifc4x3::IfcRelConnectsWithRealizingElements::Class() { return *((ifcopenshell::entity*)IFC4X3_types[926]); } -Ifc4x3::IfcRelConnectsWithRealizingElements Ifc4x3::IfcRelConnectsWithRealizingElements::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, ::Ifc4x3::IfcConnectionGeometry v5_ConnectionGeometry, ::Ifc4x3::IfcElement v6_RelatingElement, ::Ifc4x3::IfcElement v7_RelatedElement, std::vector< ::Ifc4x3::IfcElement > v8_RealizingElements, std::optional< std::string > v9_ConnectionType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, (v5_ConnectionGeometry));set_attribute_value(5, (v6_RelatingElement));set_attribute_value(6, (v7_RelatedElement));set_attribute_value(7, cast_vector(v8_RealizingElements)); if (v9_ConnectionType) {set_attribute_value(8, (*v9_ConnectionType)); }; return *this; } +Ifc4x3::IfcRelConnectsWithRealizingElements Ifc4x3::IfcRelConnectsWithRealizingElements::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, ::Ifc4x3::IfcConnectionGeometry v5_ConnectionGeometry, ::Ifc4x3::IfcElement v6_RelatingElement, ::Ifc4x3::IfcElement v7_RelatedElement, std::vector< ::Ifc4x3::IfcElement > v8_RealizingElements, std::optional< std::string > v9_ConnectionType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, (v5_ConnectionGeometry));set_attribute_value(5, (v6_RelatingElement));set_attribute_value(6, (v7_RelatedElement));set_attribute_value(7, cast_vector(v8_RealizingElements)); if (v9_ConnectionType) {set_attribute_value(8, (*v9_ConnectionType)); }; return *this; } // Function implementations for IfcRelContainedInSpatialStructure -std::vector< ::Ifc4x3::IfcProduct > Ifc4x3::IfcRelContainedInSpatialStructure::RelatedElements() const { std::vector es = get_attribute_value(4); return cast_vector<::Ifc4x3::IfcProduct>(es); } -void Ifc4x3::IfcRelContainedInSpatialStructure::setRelatedElements(const std::vector< ::Ifc4x3::IfcProduct >& v) { set_attribute_value(4, cast_vector(v));if constexpr (false)unset_attribute_value(4); } -::Ifc4x3::IfcSpatialElement Ifc4x3::IfcRelContainedInSpatialStructure::RelatingStructure() const { return ((express::Base)(get_attribute_value(5))).as<::Ifc4x3::IfcSpatialElement>(); } +std::vector< ::Ifc4x3::IfcProduct > Ifc4x3::IfcRelContainedInSpatialStructure::RelatedElements() const { std::vector es = get_attribute_value(4); return cast_vector<::Ifc4x3::IfcProduct>(es); } +void Ifc4x3::IfcRelContainedInSpatialStructure::setRelatedElements(const std::vector< ::Ifc4x3::IfcProduct >& v) { set_attribute_value(4, cast_vector(v));if constexpr (false)unset_attribute_value(4); } +::Ifc4x3::IfcSpatialElement Ifc4x3::IfcRelContainedInSpatialStructure::RelatingStructure() const { return ((express::base)(get_attribute_value(5))).as<::Ifc4x3::IfcSpatialElement>(); } void Ifc4x3::IfcRelContainedInSpatialStructure::setRelatingStructure(const ::Ifc4x3::IfcSpatialElement& v) { set_attribute_value(5, v);if constexpr (false)unset_attribute_value(5); } const ifcopenshell::entity& Ifc4x3::IfcRelContainedInSpatialStructure::Class() { return *((ifcopenshell::entity*)IFC4X3_types[927]); } -Ifc4x3::IfcRelContainedInSpatialStructure Ifc4x3::IfcRelContainedInSpatialStructure::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3::IfcProduct > v5_RelatedElements, ::Ifc4x3::IfcSpatialElement v6_RelatingStructure) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedElements));set_attribute_value(5, (v6_RelatingStructure));; return *this; } +Ifc4x3::IfcRelContainedInSpatialStructure Ifc4x3::IfcRelContainedInSpatialStructure::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3::IfcProduct > v5_RelatedElements, ::Ifc4x3::IfcSpatialElement v6_RelatingStructure) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedElements));set_attribute_value(5, (v6_RelatingStructure));; return *this; } // Function implementations for IfcRelCoversBldgElements -::Ifc4x3::IfcElement Ifc4x3::IfcRelCoversBldgElements::RelatingBuildingElement() const { return ((express::Base)(get_attribute_value(4))).as<::Ifc4x3::IfcElement>(); } +::Ifc4x3::IfcElement Ifc4x3::IfcRelCoversBldgElements::RelatingBuildingElement() const { return ((express::base)(get_attribute_value(4))).as<::Ifc4x3::IfcElement>(); } void Ifc4x3::IfcRelCoversBldgElements::setRelatingBuildingElement(const ::Ifc4x3::IfcElement& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } -std::vector< ::Ifc4x3::IfcCovering > Ifc4x3::IfcRelCoversBldgElements::RelatedCoverings() const { std::vector es = get_attribute_value(5); return cast_vector<::Ifc4x3::IfcCovering>(es); } -void Ifc4x3::IfcRelCoversBldgElements::setRelatedCoverings(const std::vector< ::Ifc4x3::IfcCovering >& v) { set_attribute_value(5, cast_vector(v));if constexpr (false)unset_attribute_value(5); } +std::vector< ::Ifc4x3::IfcCovering > Ifc4x3::IfcRelCoversBldgElements::RelatedCoverings() const { std::vector es = get_attribute_value(5); return cast_vector<::Ifc4x3::IfcCovering>(es); } +void Ifc4x3::IfcRelCoversBldgElements::setRelatedCoverings(const std::vector< ::Ifc4x3::IfcCovering >& v) { set_attribute_value(5, cast_vector(v));if constexpr (false)unset_attribute_value(5); } const ifcopenshell::entity& Ifc4x3::IfcRelCoversBldgElements::Class() { return *((ifcopenshell::entity*)IFC4X3_types[928]); } -Ifc4x3::IfcRelCoversBldgElements Ifc4x3::IfcRelCoversBldgElements::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, ::Ifc4x3::IfcElement v5_RelatingBuildingElement, std::vector< ::Ifc4x3::IfcCovering > v6_RelatedCoverings) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, (v5_RelatingBuildingElement));set_attribute_value(5, cast_vector(v6_RelatedCoverings));; return *this; } +Ifc4x3::IfcRelCoversBldgElements Ifc4x3::IfcRelCoversBldgElements::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, ::Ifc4x3::IfcElement v5_RelatingBuildingElement, std::vector< ::Ifc4x3::IfcCovering > v6_RelatedCoverings) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, (v5_RelatingBuildingElement));set_attribute_value(5, cast_vector(v6_RelatedCoverings));; return *this; } // Function implementations for IfcRelCoversSpaces -::Ifc4x3::IfcSpace Ifc4x3::IfcRelCoversSpaces::RelatingSpace() const { return ((express::Base)(get_attribute_value(4))).as<::Ifc4x3::IfcSpace>(); } +::Ifc4x3::IfcSpace Ifc4x3::IfcRelCoversSpaces::RelatingSpace() const { return ((express::base)(get_attribute_value(4))).as<::Ifc4x3::IfcSpace>(); } void Ifc4x3::IfcRelCoversSpaces::setRelatingSpace(const ::Ifc4x3::IfcSpace& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } -std::vector< ::Ifc4x3::IfcCovering > Ifc4x3::IfcRelCoversSpaces::RelatedCoverings() const { std::vector es = get_attribute_value(5); return cast_vector<::Ifc4x3::IfcCovering>(es); } -void Ifc4x3::IfcRelCoversSpaces::setRelatedCoverings(const std::vector< ::Ifc4x3::IfcCovering >& v) { set_attribute_value(5, cast_vector(v));if constexpr (false)unset_attribute_value(5); } +std::vector< ::Ifc4x3::IfcCovering > Ifc4x3::IfcRelCoversSpaces::RelatedCoverings() const { std::vector es = get_attribute_value(5); return cast_vector<::Ifc4x3::IfcCovering>(es); } +void Ifc4x3::IfcRelCoversSpaces::setRelatedCoverings(const std::vector< ::Ifc4x3::IfcCovering >& v) { set_attribute_value(5, cast_vector(v));if constexpr (false)unset_attribute_value(5); } const ifcopenshell::entity& Ifc4x3::IfcRelCoversSpaces::Class() { return *((ifcopenshell::entity*)IFC4X3_types[929]); } -Ifc4x3::IfcRelCoversSpaces Ifc4x3::IfcRelCoversSpaces::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, ::Ifc4x3::IfcSpace v5_RelatingSpace, std::vector< ::Ifc4x3::IfcCovering > v6_RelatedCoverings) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, (v5_RelatingSpace));set_attribute_value(5, cast_vector(v6_RelatedCoverings));; return *this; } +Ifc4x3::IfcRelCoversSpaces Ifc4x3::IfcRelCoversSpaces::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, ::Ifc4x3::IfcSpace v5_RelatingSpace, std::vector< ::Ifc4x3::IfcCovering > v6_RelatedCoverings) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, (v5_RelatingSpace));set_attribute_value(5, cast_vector(v6_RelatedCoverings));; return *this; } // Function implementations for IfcRelDeclares -::Ifc4x3::IfcContext Ifc4x3::IfcRelDeclares::RelatingContext() const { return ((express::Base)(get_attribute_value(4))).as<::Ifc4x3::IfcContext>(); } +::Ifc4x3::IfcContext Ifc4x3::IfcRelDeclares::RelatingContext() const { return ((express::base)(get_attribute_value(4))).as<::Ifc4x3::IfcContext>(); } void Ifc4x3::IfcRelDeclares::setRelatingContext(const ::Ifc4x3::IfcContext& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } -std::vector< ::Ifc4x3::IfcDefinitionSelect > Ifc4x3::IfcRelDeclares::RelatedDefinitions() const { std::vector es = get_attribute_value(5); return cast_vector<::Ifc4x3::IfcDefinitionSelect>(es); } -void Ifc4x3::IfcRelDeclares::setRelatedDefinitions(const std::vector< ::Ifc4x3::IfcDefinitionSelect >& v) { set_attribute_value(5, cast_vector(v));if constexpr (false)unset_attribute_value(5); } +std::vector< ::Ifc4x3::IfcDefinitionSelect > Ifc4x3::IfcRelDeclares::RelatedDefinitions() const { std::vector es = get_attribute_value(5); return cast_vector<::Ifc4x3::IfcDefinitionSelect>(es); } +void Ifc4x3::IfcRelDeclares::setRelatedDefinitions(const std::vector< ::Ifc4x3::IfcDefinitionSelect >& v) { set_attribute_value(5, cast_vector(v));if constexpr (false)unset_attribute_value(5); } const ifcopenshell::entity& Ifc4x3::IfcRelDeclares::Class() { return *((ifcopenshell::entity*)IFC4X3_types[930]); } -Ifc4x3::IfcRelDeclares Ifc4x3::IfcRelDeclares::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, ::Ifc4x3::IfcContext v5_RelatingContext, std::vector< ::Ifc4x3::IfcDefinitionSelect > v6_RelatedDefinitions) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, (v5_RelatingContext));set_attribute_value(5, cast_vector(v6_RelatedDefinitions));; return *this; } +Ifc4x3::IfcRelDeclares Ifc4x3::IfcRelDeclares::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, ::Ifc4x3::IfcContext v5_RelatingContext, std::vector< ::Ifc4x3::IfcDefinitionSelect > v6_RelatedDefinitions) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, (v5_RelatingContext));set_attribute_value(5, cast_vector(v6_RelatedDefinitions));; return *this; } // Function implementations for IfcRelDecomposes @@ -14031,49 +14031,49 @@ const ifcopenshell::entity& Ifc4x3::IfcRelDefines::Class() { return *((ifcopensh Ifc4x3::IfcRelDefines Ifc4x3::IfcRelDefines::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }; return *this; } // Function implementations for IfcRelDefinesByObject -std::vector< ::Ifc4x3::IfcObject > Ifc4x3::IfcRelDefinesByObject::RelatedObjects() const { std::vector es = get_attribute_value(4); return cast_vector<::Ifc4x3::IfcObject>(es); } -void Ifc4x3::IfcRelDefinesByObject::setRelatedObjects(const std::vector< ::Ifc4x3::IfcObject >& v) { set_attribute_value(4, cast_vector(v));if constexpr (false)unset_attribute_value(4); } -::Ifc4x3::IfcObject Ifc4x3::IfcRelDefinesByObject::RelatingObject() const { return ((express::Base)(get_attribute_value(5))).as<::Ifc4x3::IfcObject>(); } +std::vector< ::Ifc4x3::IfcObject > Ifc4x3::IfcRelDefinesByObject::RelatedObjects() const { std::vector es = get_attribute_value(4); return cast_vector<::Ifc4x3::IfcObject>(es); } +void Ifc4x3::IfcRelDefinesByObject::setRelatedObjects(const std::vector< ::Ifc4x3::IfcObject >& v) { set_attribute_value(4, cast_vector(v));if constexpr (false)unset_attribute_value(4); } +::Ifc4x3::IfcObject Ifc4x3::IfcRelDefinesByObject::RelatingObject() const { return ((express::base)(get_attribute_value(5))).as<::Ifc4x3::IfcObject>(); } void Ifc4x3::IfcRelDefinesByObject::setRelatingObject(const ::Ifc4x3::IfcObject& v) { set_attribute_value(5, v);if constexpr (false)unset_attribute_value(5); } const ifcopenshell::entity& Ifc4x3::IfcRelDefinesByObject::Class() { return *((ifcopenshell::entity*)IFC4X3_types[933]); } -Ifc4x3::IfcRelDefinesByObject Ifc4x3::IfcRelDefinesByObject::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3::IfcObject > v5_RelatedObjects, ::Ifc4x3::IfcObject v6_RelatingObject) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedObjects));set_attribute_value(5, (v6_RelatingObject));; return *this; } +Ifc4x3::IfcRelDefinesByObject Ifc4x3::IfcRelDefinesByObject::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3::IfcObject > v5_RelatedObjects, ::Ifc4x3::IfcObject v6_RelatingObject) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedObjects));set_attribute_value(5, (v6_RelatingObject));; return *this; } // Function implementations for IfcRelDefinesByProperties -std::vector< ::Ifc4x3::IfcObjectDefinition > Ifc4x3::IfcRelDefinesByProperties::RelatedObjects() const { std::vector es = get_attribute_value(4); return cast_vector<::Ifc4x3::IfcObjectDefinition>(es); } -void Ifc4x3::IfcRelDefinesByProperties::setRelatedObjects(const std::vector< ::Ifc4x3::IfcObjectDefinition >& v) { set_attribute_value(4, cast_vector(v));if constexpr (false)unset_attribute_value(4); } -::Ifc4x3::IfcPropertySetDefinitionSelect Ifc4x3::IfcRelDefinesByProperties::RelatingPropertyDefinition() const { return ((express::Base)(get_attribute_value(5))).as<::Ifc4x3::IfcPropertySetDefinitionSelect>(); } +std::vector< ::Ifc4x3::IfcObjectDefinition > Ifc4x3::IfcRelDefinesByProperties::RelatedObjects() const { std::vector es = get_attribute_value(4); return cast_vector<::Ifc4x3::IfcObjectDefinition>(es); } +void Ifc4x3::IfcRelDefinesByProperties::setRelatedObjects(const std::vector< ::Ifc4x3::IfcObjectDefinition >& v) { set_attribute_value(4, cast_vector(v));if constexpr (false)unset_attribute_value(4); } +::Ifc4x3::IfcPropertySetDefinitionSelect Ifc4x3::IfcRelDefinesByProperties::RelatingPropertyDefinition() const { return ((express::base)(get_attribute_value(5))).as<::Ifc4x3::IfcPropertySetDefinitionSelect>(); } void Ifc4x3::IfcRelDefinesByProperties::setRelatingPropertyDefinition(const ::Ifc4x3::IfcPropertySetDefinitionSelect& v) { set_attribute_value(5, v);if constexpr (false)unset_attribute_value(5); } const ifcopenshell::entity& Ifc4x3::IfcRelDefinesByProperties::Class() { return *((ifcopenshell::entity*)IFC4X3_types[934]); } -Ifc4x3::IfcRelDefinesByProperties Ifc4x3::IfcRelDefinesByProperties::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3::IfcObjectDefinition > v5_RelatedObjects, ::Ifc4x3::IfcPropertySetDefinitionSelect v6_RelatingPropertyDefinition) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedObjects));set_attribute_value(5, (v6_RelatingPropertyDefinition));; return *this; } +Ifc4x3::IfcRelDefinesByProperties Ifc4x3::IfcRelDefinesByProperties::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3::IfcObjectDefinition > v5_RelatedObjects, ::Ifc4x3::IfcPropertySetDefinitionSelect v6_RelatingPropertyDefinition) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedObjects));set_attribute_value(5, (v6_RelatingPropertyDefinition));; return *this; } // Function implementations for IfcRelDefinesByTemplate -std::vector< ::Ifc4x3::IfcPropertySetDefinition > Ifc4x3::IfcRelDefinesByTemplate::RelatedPropertySets() const { std::vector es = get_attribute_value(4); return cast_vector<::Ifc4x3::IfcPropertySetDefinition>(es); } -void Ifc4x3::IfcRelDefinesByTemplate::setRelatedPropertySets(const std::vector< ::Ifc4x3::IfcPropertySetDefinition >& v) { set_attribute_value(4, cast_vector(v));if constexpr (false)unset_attribute_value(4); } -::Ifc4x3::IfcPropertySetTemplate Ifc4x3::IfcRelDefinesByTemplate::RelatingTemplate() const { return ((express::Base)(get_attribute_value(5))).as<::Ifc4x3::IfcPropertySetTemplate>(); } +std::vector< ::Ifc4x3::IfcPropertySetDefinition > Ifc4x3::IfcRelDefinesByTemplate::RelatedPropertySets() const { std::vector es = get_attribute_value(4); return cast_vector<::Ifc4x3::IfcPropertySetDefinition>(es); } +void Ifc4x3::IfcRelDefinesByTemplate::setRelatedPropertySets(const std::vector< ::Ifc4x3::IfcPropertySetDefinition >& v) { set_attribute_value(4, cast_vector(v));if constexpr (false)unset_attribute_value(4); } +::Ifc4x3::IfcPropertySetTemplate Ifc4x3::IfcRelDefinesByTemplate::RelatingTemplate() const { return ((express::base)(get_attribute_value(5))).as<::Ifc4x3::IfcPropertySetTemplate>(); } void Ifc4x3::IfcRelDefinesByTemplate::setRelatingTemplate(const ::Ifc4x3::IfcPropertySetTemplate& v) { set_attribute_value(5, v);if constexpr (false)unset_attribute_value(5); } const ifcopenshell::entity& Ifc4x3::IfcRelDefinesByTemplate::Class() { return *((ifcopenshell::entity*)IFC4X3_types[935]); } -Ifc4x3::IfcRelDefinesByTemplate Ifc4x3::IfcRelDefinesByTemplate::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3::IfcPropertySetDefinition > v5_RelatedPropertySets, ::Ifc4x3::IfcPropertySetTemplate v6_RelatingTemplate) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedPropertySets));set_attribute_value(5, (v6_RelatingTemplate));; return *this; } +Ifc4x3::IfcRelDefinesByTemplate Ifc4x3::IfcRelDefinesByTemplate::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3::IfcPropertySetDefinition > v5_RelatedPropertySets, ::Ifc4x3::IfcPropertySetTemplate v6_RelatingTemplate) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedPropertySets));set_attribute_value(5, (v6_RelatingTemplate));; return *this; } // Function implementations for IfcRelDefinesByType -std::vector< ::Ifc4x3::IfcObject > Ifc4x3::IfcRelDefinesByType::RelatedObjects() const { std::vector es = get_attribute_value(4); return cast_vector<::Ifc4x3::IfcObject>(es); } -void Ifc4x3::IfcRelDefinesByType::setRelatedObjects(const std::vector< ::Ifc4x3::IfcObject >& v) { set_attribute_value(4, cast_vector(v));if constexpr (false)unset_attribute_value(4); } -::Ifc4x3::IfcTypeObject Ifc4x3::IfcRelDefinesByType::RelatingType() const { return ((express::Base)(get_attribute_value(5))).as<::Ifc4x3::IfcTypeObject>(); } +std::vector< ::Ifc4x3::IfcObject > Ifc4x3::IfcRelDefinesByType::RelatedObjects() const { std::vector es = get_attribute_value(4); return cast_vector<::Ifc4x3::IfcObject>(es); } +void Ifc4x3::IfcRelDefinesByType::setRelatedObjects(const std::vector< ::Ifc4x3::IfcObject >& v) { set_attribute_value(4, cast_vector(v));if constexpr (false)unset_attribute_value(4); } +::Ifc4x3::IfcTypeObject Ifc4x3::IfcRelDefinesByType::RelatingType() const { return ((express::base)(get_attribute_value(5))).as<::Ifc4x3::IfcTypeObject>(); } void Ifc4x3::IfcRelDefinesByType::setRelatingType(const ::Ifc4x3::IfcTypeObject& v) { set_attribute_value(5, v);if constexpr (false)unset_attribute_value(5); } const ifcopenshell::entity& Ifc4x3::IfcRelDefinesByType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[936]); } -Ifc4x3::IfcRelDefinesByType Ifc4x3::IfcRelDefinesByType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3::IfcObject > v5_RelatedObjects, ::Ifc4x3::IfcTypeObject v6_RelatingType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedObjects));set_attribute_value(5, (v6_RelatingType));; return *this; } +Ifc4x3::IfcRelDefinesByType Ifc4x3::IfcRelDefinesByType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3::IfcObject > v5_RelatedObjects, ::Ifc4x3::IfcTypeObject v6_RelatingType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedObjects));set_attribute_value(5, (v6_RelatingType));; return *this; } // Function implementations for IfcRelFillsElement -::Ifc4x3::IfcOpeningElement Ifc4x3::IfcRelFillsElement::RelatingOpeningElement() const { return ((express::Base)(get_attribute_value(4))).as<::Ifc4x3::IfcOpeningElement>(); } +::Ifc4x3::IfcOpeningElement Ifc4x3::IfcRelFillsElement::RelatingOpeningElement() const { return ((express::base)(get_attribute_value(4))).as<::Ifc4x3::IfcOpeningElement>(); } void Ifc4x3::IfcRelFillsElement::setRelatingOpeningElement(const ::Ifc4x3::IfcOpeningElement& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } -::Ifc4x3::IfcElement Ifc4x3::IfcRelFillsElement::RelatedBuildingElement() const { return ((express::Base)(get_attribute_value(5))).as<::Ifc4x3::IfcElement>(); } +::Ifc4x3::IfcElement Ifc4x3::IfcRelFillsElement::RelatedBuildingElement() const { return ((express::base)(get_attribute_value(5))).as<::Ifc4x3::IfcElement>(); } void Ifc4x3::IfcRelFillsElement::setRelatedBuildingElement(const ::Ifc4x3::IfcElement& v) { set_attribute_value(5, v);if constexpr (false)unset_attribute_value(5); } @@ -14081,23 +14081,23 @@ const ifcopenshell::entity& Ifc4x3::IfcRelFillsElement::Class() { return *((ifco Ifc4x3::IfcRelFillsElement Ifc4x3::IfcRelFillsElement::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, ::Ifc4x3::IfcOpeningElement v5_RelatingOpeningElement, ::Ifc4x3::IfcElement v6_RelatedBuildingElement) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, (v5_RelatingOpeningElement));set_attribute_value(5, (v6_RelatedBuildingElement));; return *this; } // Function implementations for IfcRelFlowControlElements -std::vector< ::Ifc4x3::IfcDistributionControlElement > Ifc4x3::IfcRelFlowControlElements::RelatedControlElements() const { std::vector es = get_attribute_value(4); return cast_vector<::Ifc4x3::IfcDistributionControlElement>(es); } -void Ifc4x3::IfcRelFlowControlElements::setRelatedControlElements(const std::vector< ::Ifc4x3::IfcDistributionControlElement >& v) { set_attribute_value(4, cast_vector(v));if constexpr (false)unset_attribute_value(4); } -::Ifc4x3::IfcDistributionFlowElement Ifc4x3::IfcRelFlowControlElements::RelatingFlowElement() const { return ((express::Base)(get_attribute_value(5))).as<::Ifc4x3::IfcDistributionFlowElement>(); } +std::vector< ::Ifc4x3::IfcDistributionControlElement > Ifc4x3::IfcRelFlowControlElements::RelatedControlElements() const { std::vector es = get_attribute_value(4); return cast_vector<::Ifc4x3::IfcDistributionControlElement>(es); } +void Ifc4x3::IfcRelFlowControlElements::setRelatedControlElements(const std::vector< ::Ifc4x3::IfcDistributionControlElement >& v) { set_attribute_value(4, cast_vector(v));if constexpr (false)unset_attribute_value(4); } +::Ifc4x3::IfcDistributionFlowElement Ifc4x3::IfcRelFlowControlElements::RelatingFlowElement() const { return ((express::base)(get_attribute_value(5))).as<::Ifc4x3::IfcDistributionFlowElement>(); } void Ifc4x3::IfcRelFlowControlElements::setRelatingFlowElement(const ::Ifc4x3::IfcDistributionFlowElement& v) { set_attribute_value(5, v);if constexpr (false)unset_attribute_value(5); } const ifcopenshell::entity& Ifc4x3::IfcRelFlowControlElements::Class() { return *((ifcopenshell::entity*)IFC4X3_types[938]); } -Ifc4x3::IfcRelFlowControlElements Ifc4x3::IfcRelFlowControlElements::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3::IfcDistributionControlElement > v5_RelatedControlElements, ::Ifc4x3::IfcDistributionFlowElement v6_RelatingFlowElement) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedControlElements));set_attribute_value(5, (v6_RelatingFlowElement));; return *this; } +Ifc4x3::IfcRelFlowControlElements Ifc4x3::IfcRelFlowControlElements::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3::IfcDistributionControlElement > v5_RelatedControlElements, ::Ifc4x3::IfcDistributionFlowElement v6_RelatingFlowElement) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedControlElements));set_attribute_value(5, (v6_RelatingFlowElement));; return *this; } // Function implementations for IfcRelInterferesElements -::Ifc4x3::IfcInterferenceSelect Ifc4x3::IfcRelInterferesElements::RelatingElement() const { return ((express::Base)(get_attribute_value(4))).as<::Ifc4x3::IfcInterferenceSelect>(); } +::Ifc4x3::IfcInterferenceSelect Ifc4x3::IfcRelInterferesElements::RelatingElement() const { return ((express::base)(get_attribute_value(4))).as<::Ifc4x3::IfcInterferenceSelect>(); } void Ifc4x3::IfcRelInterferesElements::setRelatingElement(const ::Ifc4x3::IfcInterferenceSelect& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } -::Ifc4x3::IfcInterferenceSelect Ifc4x3::IfcRelInterferesElements::RelatedElement() const { return ((express::Base)(get_attribute_value(5))).as<::Ifc4x3::IfcInterferenceSelect>(); } +::Ifc4x3::IfcInterferenceSelect Ifc4x3::IfcRelInterferesElements::RelatedElement() const { return ((express::base)(get_attribute_value(5))).as<::Ifc4x3::IfcInterferenceSelect>(); } void Ifc4x3::IfcRelInterferesElements::setRelatedElement(const ::Ifc4x3::IfcInterferenceSelect& v) { set_attribute_value(5, v);if constexpr (false)unset_attribute_value(5); } -::Ifc4x3::IfcConnectionGeometry Ifc4x3::IfcRelInterferesElements::InterferenceGeometry() const { if(get_attribute_value(6).isNull()) { return ::Ifc4x3::IfcConnectionGeometry{}; } return ((express::Base)(get_attribute_value(6))).as<::Ifc4x3::IfcConnectionGeometry>(); } +::Ifc4x3::IfcConnectionGeometry Ifc4x3::IfcRelInterferesElements::InterferenceGeometry() const { if(get_attribute_value(6).isNull()) { return ::Ifc4x3::IfcConnectionGeometry{}; } return ((express::base)(get_attribute_value(6))).as<::Ifc4x3::IfcConnectionGeometry>(); } void Ifc4x3::IfcRelInterferesElements::setInterferenceGeometry(const ::Ifc4x3::IfcConnectionGeometry& v) { set_attribute_value(6, v);if constexpr (false)unset_attribute_value(6); } -::Ifc4x3::IfcSpatialZone Ifc4x3::IfcRelInterferesElements::InterferenceSpace() const { if(get_attribute_value(7).isNull()) { return ::Ifc4x3::IfcSpatialZone{}; } return ((express::Base)(get_attribute_value(7))).as<::Ifc4x3::IfcSpatialZone>(); } +::Ifc4x3::IfcSpatialZone Ifc4x3::IfcRelInterferesElements::InterferenceSpace() const { if(get_attribute_value(7).isNull()) { return ::Ifc4x3::IfcSpatialZone{}; } return ((express::base)(get_attribute_value(7))).as<::Ifc4x3::IfcSpatialZone>(); } void Ifc4x3::IfcRelInterferesElements::setInterferenceSpace(const ::Ifc4x3::IfcSpatialZone& v) { set_attribute_value(7, v);if constexpr (false)unset_attribute_value(7); } std::optional< std::string > Ifc4x3::IfcRelInterferesElements::InterferenceType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } std::string v = get_attribute_value(8); return v; } void Ifc4x3::IfcRelInterferesElements::setInterferenceType(const std::optional< std::string >& v) { if (v) {set_attribute_value(8, *v);} else {unset_attribute_value(8);} } @@ -14109,29 +14109,29 @@ const ifcopenshell::entity& Ifc4x3::IfcRelInterferesElements::Class() { return * Ifc4x3::IfcRelInterferesElements Ifc4x3::IfcRelInterferesElements::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, ::Ifc4x3::IfcInterferenceSelect v5_RelatingElement, ::Ifc4x3::IfcInterferenceSelect v6_RelatedElement, ::Ifc4x3::IfcConnectionGeometry v7_InterferenceGeometry, ::Ifc4x3::IfcSpatialZone v8_InterferenceSpace, std::optional< std::string > v9_InterferenceType, boost::logic::tribool v10_ImpliedOrder) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, (v5_RelatingElement));set_attribute_value(5, (v6_RelatedElement));set_attribute_value(6, (v7_InterferenceGeometry));set_attribute_value(7, (v8_InterferenceSpace)); if (v9_InterferenceType) {set_attribute_value(8, (*v9_InterferenceType)); }set_attribute_value(9, (v10_ImpliedOrder));; return *this; } // Function implementations for IfcRelNests -::Ifc4x3::IfcObjectDefinition Ifc4x3::IfcRelNests::RelatingObject() const { return ((express::Base)(get_attribute_value(4))).as<::Ifc4x3::IfcObjectDefinition>(); } +::Ifc4x3::IfcObjectDefinition Ifc4x3::IfcRelNests::RelatingObject() const { return ((express::base)(get_attribute_value(4))).as<::Ifc4x3::IfcObjectDefinition>(); } void Ifc4x3::IfcRelNests::setRelatingObject(const ::Ifc4x3::IfcObjectDefinition& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } -std::vector< ::Ifc4x3::IfcObjectDefinition > Ifc4x3::IfcRelNests::RelatedObjects() const { std::vector es = get_attribute_value(5); return cast_vector<::Ifc4x3::IfcObjectDefinition>(es); } -void Ifc4x3::IfcRelNests::setRelatedObjects(const std::vector< ::Ifc4x3::IfcObjectDefinition >& v) { set_attribute_value(5, cast_vector(v));if constexpr (false)unset_attribute_value(5); } +std::vector< ::Ifc4x3::IfcObjectDefinition > Ifc4x3::IfcRelNests::RelatedObjects() const { std::vector es = get_attribute_value(5); return cast_vector<::Ifc4x3::IfcObjectDefinition>(es); } +void Ifc4x3::IfcRelNests::setRelatedObjects(const std::vector< ::Ifc4x3::IfcObjectDefinition >& v) { set_attribute_value(5, cast_vector(v));if constexpr (false)unset_attribute_value(5); } const ifcopenshell::entity& Ifc4x3::IfcRelNests::Class() { return *((ifcopenshell::entity*)IFC4X3_types[940]); } -Ifc4x3::IfcRelNests Ifc4x3::IfcRelNests::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, ::Ifc4x3::IfcObjectDefinition v5_RelatingObject, std::vector< ::Ifc4x3::IfcObjectDefinition > v6_RelatedObjects) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, (v5_RelatingObject));set_attribute_value(5, cast_vector(v6_RelatedObjects));; return *this; } +Ifc4x3::IfcRelNests Ifc4x3::IfcRelNests::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, ::Ifc4x3::IfcObjectDefinition v5_RelatingObject, std::vector< ::Ifc4x3::IfcObjectDefinition > v6_RelatedObjects) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, (v5_RelatingObject));set_attribute_value(5, cast_vector(v6_RelatedObjects));; return *this; } // Function implementations for IfcRelPositions -::Ifc4x3::IfcPositioningElement Ifc4x3::IfcRelPositions::RelatingPositioningElement() const { return ((express::Base)(get_attribute_value(4))).as<::Ifc4x3::IfcPositioningElement>(); } +::Ifc4x3::IfcPositioningElement Ifc4x3::IfcRelPositions::RelatingPositioningElement() const { return ((express::base)(get_attribute_value(4))).as<::Ifc4x3::IfcPositioningElement>(); } void Ifc4x3::IfcRelPositions::setRelatingPositioningElement(const ::Ifc4x3::IfcPositioningElement& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } -std::vector< ::Ifc4x3::IfcProduct > Ifc4x3::IfcRelPositions::RelatedProducts() const { std::vector es = get_attribute_value(5); return cast_vector<::Ifc4x3::IfcProduct>(es); } -void Ifc4x3::IfcRelPositions::setRelatedProducts(const std::vector< ::Ifc4x3::IfcProduct >& v) { set_attribute_value(5, cast_vector(v));if constexpr (false)unset_attribute_value(5); } +std::vector< ::Ifc4x3::IfcProduct > Ifc4x3::IfcRelPositions::RelatedProducts() const { std::vector es = get_attribute_value(5); return cast_vector<::Ifc4x3::IfcProduct>(es); } +void Ifc4x3::IfcRelPositions::setRelatedProducts(const std::vector< ::Ifc4x3::IfcProduct >& v) { set_attribute_value(5, cast_vector(v));if constexpr (false)unset_attribute_value(5); } const ifcopenshell::entity& Ifc4x3::IfcRelPositions::Class() { return *((ifcopenshell::entity*)IFC4X3_types[941]); } -Ifc4x3::IfcRelPositions Ifc4x3::IfcRelPositions::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, ::Ifc4x3::IfcPositioningElement v5_RelatingPositioningElement, std::vector< ::Ifc4x3::IfcProduct > v6_RelatedProducts) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, (v5_RelatingPositioningElement));set_attribute_value(5, cast_vector(v6_RelatedProducts));; return *this; } +Ifc4x3::IfcRelPositions Ifc4x3::IfcRelPositions::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, ::Ifc4x3::IfcPositioningElement v5_RelatingPositioningElement, std::vector< ::Ifc4x3::IfcProduct > v6_RelatedProducts) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, (v5_RelatingPositioningElement));set_attribute_value(5, cast_vector(v6_RelatedProducts));; return *this; } // Function implementations for IfcRelProjectsElement -::Ifc4x3::IfcElement Ifc4x3::IfcRelProjectsElement::RelatingElement() const { return ((express::Base)(get_attribute_value(4))).as<::Ifc4x3::IfcElement>(); } +::Ifc4x3::IfcElement Ifc4x3::IfcRelProjectsElement::RelatingElement() const { return ((express::base)(get_attribute_value(4))).as<::Ifc4x3::IfcElement>(); } void Ifc4x3::IfcRelProjectsElement::setRelatingElement(const ::Ifc4x3::IfcElement& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } -::Ifc4x3::IfcFeatureElementAddition Ifc4x3::IfcRelProjectsElement::RelatedFeatureElement() const { return ((express::Base)(get_attribute_value(5))).as<::Ifc4x3::IfcFeatureElementAddition>(); } +::Ifc4x3::IfcFeatureElementAddition Ifc4x3::IfcRelProjectsElement::RelatedFeatureElement() const { return ((express::base)(get_attribute_value(5))).as<::Ifc4x3::IfcFeatureElementAddition>(); } void Ifc4x3::IfcRelProjectsElement::setRelatedFeatureElement(const ::Ifc4x3::IfcFeatureElementAddition& v) { set_attribute_value(5, v);if constexpr (false)unset_attribute_value(5); } @@ -14139,21 +14139,21 @@ const ifcopenshell::entity& Ifc4x3::IfcRelProjectsElement::Class() { return *((i Ifc4x3::IfcRelProjectsElement Ifc4x3::IfcRelProjectsElement::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, ::Ifc4x3::IfcElement v5_RelatingElement, ::Ifc4x3::IfcFeatureElementAddition v6_RelatedFeatureElement) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, (v5_RelatingElement));set_attribute_value(5, (v6_RelatedFeatureElement));; return *this; } // Function implementations for IfcRelReferencedInSpatialStructure -std::vector< ::Ifc4x3::IfcSpatialReferenceSelect > Ifc4x3::IfcRelReferencedInSpatialStructure::RelatedElements() const { std::vector es = get_attribute_value(4); return cast_vector<::Ifc4x3::IfcSpatialReferenceSelect>(es); } -void Ifc4x3::IfcRelReferencedInSpatialStructure::setRelatedElements(const std::vector< ::Ifc4x3::IfcSpatialReferenceSelect >& v) { set_attribute_value(4, cast_vector(v));if constexpr (false)unset_attribute_value(4); } -::Ifc4x3::IfcSpatialElement Ifc4x3::IfcRelReferencedInSpatialStructure::RelatingStructure() const { return ((express::Base)(get_attribute_value(5))).as<::Ifc4x3::IfcSpatialElement>(); } +std::vector< ::Ifc4x3::IfcSpatialReferenceSelect > Ifc4x3::IfcRelReferencedInSpatialStructure::RelatedElements() const { std::vector es = get_attribute_value(4); return cast_vector<::Ifc4x3::IfcSpatialReferenceSelect>(es); } +void Ifc4x3::IfcRelReferencedInSpatialStructure::setRelatedElements(const std::vector< ::Ifc4x3::IfcSpatialReferenceSelect >& v) { set_attribute_value(4, cast_vector(v));if constexpr (false)unset_attribute_value(4); } +::Ifc4x3::IfcSpatialElement Ifc4x3::IfcRelReferencedInSpatialStructure::RelatingStructure() const { return ((express::base)(get_attribute_value(5))).as<::Ifc4x3::IfcSpatialElement>(); } void Ifc4x3::IfcRelReferencedInSpatialStructure::setRelatingStructure(const ::Ifc4x3::IfcSpatialElement& v) { set_attribute_value(5, v);if constexpr (false)unset_attribute_value(5); } const ifcopenshell::entity& Ifc4x3::IfcRelReferencedInSpatialStructure::Class() { return *((ifcopenshell::entity*)IFC4X3_types[943]); } -Ifc4x3::IfcRelReferencedInSpatialStructure Ifc4x3::IfcRelReferencedInSpatialStructure::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3::IfcSpatialReferenceSelect > v5_RelatedElements, ::Ifc4x3::IfcSpatialElement v6_RelatingStructure) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedElements));set_attribute_value(5, (v6_RelatingStructure));; return *this; } +Ifc4x3::IfcRelReferencedInSpatialStructure Ifc4x3::IfcRelReferencedInSpatialStructure::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3::IfcSpatialReferenceSelect > v5_RelatedElements, ::Ifc4x3::IfcSpatialElement v6_RelatingStructure) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedElements));set_attribute_value(5, (v6_RelatingStructure));; return *this; } // Function implementations for IfcRelSequence -::Ifc4x3::IfcProcess Ifc4x3::IfcRelSequence::RelatingProcess() const { return ((express::Base)(get_attribute_value(4))).as<::Ifc4x3::IfcProcess>(); } +::Ifc4x3::IfcProcess Ifc4x3::IfcRelSequence::RelatingProcess() const { return ((express::base)(get_attribute_value(4))).as<::Ifc4x3::IfcProcess>(); } void Ifc4x3::IfcRelSequence::setRelatingProcess(const ::Ifc4x3::IfcProcess& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } -::Ifc4x3::IfcProcess Ifc4x3::IfcRelSequence::RelatedProcess() const { return ((express::Base)(get_attribute_value(5))).as<::Ifc4x3::IfcProcess>(); } +::Ifc4x3::IfcProcess Ifc4x3::IfcRelSequence::RelatedProcess() const { return ((express::base)(get_attribute_value(5))).as<::Ifc4x3::IfcProcess>(); } void Ifc4x3::IfcRelSequence::setRelatedProcess(const ::Ifc4x3::IfcProcess& v) { set_attribute_value(5, v);if constexpr (false)unset_attribute_value(5); } -::Ifc4x3::IfcLagTime Ifc4x3::IfcRelSequence::TimeLag() const { if(get_attribute_value(6).isNull()) { return ::Ifc4x3::IfcLagTime{}; } return ((express::Base)(get_attribute_value(6))).as<::Ifc4x3::IfcLagTime>(); } +::Ifc4x3::IfcLagTime Ifc4x3::IfcRelSequence::TimeLag() const { if(get_attribute_value(6).isNull()) { return ::Ifc4x3::IfcLagTime{}; } return ((express::base)(get_attribute_value(6))).as<::Ifc4x3::IfcLagTime>(); } void Ifc4x3::IfcRelSequence::setTimeLag(const ::Ifc4x3::IfcLagTime& v) { set_attribute_value(6, v);if constexpr (false)unset_attribute_value(6); } std::optional< ::Ifc4x3::IfcSequenceEnum::Value > Ifc4x3::IfcRelSequence::SequenceType() const { if(get_attribute_value(7).isNull()) { return std::nullopt; } return ::Ifc4x3::IfcSequenceEnum::FromString(get_attribute_value(7)); } void Ifc4x3::IfcRelSequence::setSequenceType(const std::optional< ::Ifc4x3::IfcSequenceEnum::Value >& v) { if (v) {set_attribute_value(7, enumeration_reference(&::Ifc4x3::IfcSequenceEnum::Class(), (size_t) *v));} else {unset_attribute_value(7);} } @@ -14165,21 +14165,21 @@ const ifcopenshell::entity& Ifc4x3::IfcRelSequence::Class() { return *((ifcopens Ifc4x3::IfcRelSequence Ifc4x3::IfcRelSequence::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, ::Ifc4x3::IfcProcess v5_RelatingProcess, ::Ifc4x3::IfcProcess v6_RelatedProcess, ::Ifc4x3::IfcLagTime v7_TimeLag, std::optional< ::Ifc4x3::IfcSequenceEnum::Value > v8_SequenceType, std::optional< std::string > v9_UserDefinedSequenceType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, (v5_RelatingProcess));set_attribute_value(5, (v6_RelatedProcess));set_attribute_value(6, (v7_TimeLag)); if (v8_SequenceType) {set_attribute_value(7, (enumeration_reference(&::Ifc4x3::IfcSequenceEnum::Class(),(size_t)*v8_SequenceType))); } if (v9_UserDefinedSequenceType) {set_attribute_value(8, (*v9_UserDefinedSequenceType)); }; return *this; } // Function implementations for IfcRelServicesBuildings -::Ifc4x3::IfcSystem Ifc4x3::IfcRelServicesBuildings::RelatingSystem() const { return ((express::Base)(get_attribute_value(4))).as<::Ifc4x3::IfcSystem>(); } +::Ifc4x3::IfcSystem Ifc4x3::IfcRelServicesBuildings::RelatingSystem() const { return ((express::base)(get_attribute_value(4))).as<::Ifc4x3::IfcSystem>(); } void Ifc4x3::IfcRelServicesBuildings::setRelatingSystem(const ::Ifc4x3::IfcSystem& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } -std::vector< ::Ifc4x3::IfcSpatialElement > Ifc4x3::IfcRelServicesBuildings::RelatedBuildings() const { std::vector es = get_attribute_value(5); return cast_vector<::Ifc4x3::IfcSpatialElement>(es); } -void Ifc4x3::IfcRelServicesBuildings::setRelatedBuildings(const std::vector< ::Ifc4x3::IfcSpatialElement >& v) { set_attribute_value(5, cast_vector(v));if constexpr (false)unset_attribute_value(5); } +std::vector< ::Ifc4x3::IfcSpatialElement > Ifc4x3::IfcRelServicesBuildings::RelatedBuildings() const { std::vector es = get_attribute_value(5); return cast_vector<::Ifc4x3::IfcSpatialElement>(es); } +void Ifc4x3::IfcRelServicesBuildings::setRelatedBuildings(const std::vector< ::Ifc4x3::IfcSpatialElement >& v) { set_attribute_value(5, cast_vector(v));if constexpr (false)unset_attribute_value(5); } const ifcopenshell::entity& Ifc4x3::IfcRelServicesBuildings::Class() { return *((ifcopenshell::entity*)IFC4X3_types[945]); } -Ifc4x3::IfcRelServicesBuildings Ifc4x3::IfcRelServicesBuildings::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, ::Ifc4x3::IfcSystem v5_RelatingSystem, std::vector< ::Ifc4x3::IfcSpatialElement > v6_RelatedBuildings) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, (v5_RelatingSystem));set_attribute_value(5, cast_vector(v6_RelatedBuildings));; return *this; } +Ifc4x3::IfcRelServicesBuildings Ifc4x3::IfcRelServicesBuildings::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, ::Ifc4x3::IfcSystem v5_RelatingSystem, std::vector< ::Ifc4x3::IfcSpatialElement > v6_RelatedBuildings) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, (v5_RelatingSystem));set_attribute_value(5, cast_vector(v6_RelatedBuildings));; return *this; } // Function implementations for IfcRelSpaceBoundary -::Ifc4x3::IfcSpaceBoundarySelect Ifc4x3::IfcRelSpaceBoundary::RelatingSpace() const { return ((express::Base)(get_attribute_value(4))).as<::Ifc4x3::IfcSpaceBoundarySelect>(); } +::Ifc4x3::IfcSpaceBoundarySelect Ifc4x3::IfcRelSpaceBoundary::RelatingSpace() const { return ((express::base)(get_attribute_value(4))).as<::Ifc4x3::IfcSpaceBoundarySelect>(); } void Ifc4x3::IfcRelSpaceBoundary::setRelatingSpace(const ::Ifc4x3::IfcSpaceBoundarySelect& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } -::Ifc4x3::IfcElement Ifc4x3::IfcRelSpaceBoundary::RelatedBuildingElement() const { return ((express::Base)(get_attribute_value(5))).as<::Ifc4x3::IfcElement>(); } +::Ifc4x3::IfcElement Ifc4x3::IfcRelSpaceBoundary::RelatedBuildingElement() const { return ((express::base)(get_attribute_value(5))).as<::Ifc4x3::IfcElement>(); } void Ifc4x3::IfcRelSpaceBoundary::setRelatedBuildingElement(const ::Ifc4x3::IfcElement& v) { set_attribute_value(5, v);if constexpr (false)unset_attribute_value(5); } -::Ifc4x3::IfcConnectionGeometry Ifc4x3::IfcRelSpaceBoundary::ConnectionGeometry() const { if(get_attribute_value(6).isNull()) { return ::Ifc4x3::IfcConnectionGeometry{}; } return ((express::Base)(get_attribute_value(6))).as<::Ifc4x3::IfcConnectionGeometry>(); } +::Ifc4x3::IfcConnectionGeometry Ifc4x3::IfcRelSpaceBoundary::ConnectionGeometry() const { if(get_attribute_value(6).isNull()) { return ::Ifc4x3::IfcConnectionGeometry{}; } return ((express::base)(get_attribute_value(6))).as<::Ifc4x3::IfcConnectionGeometry>(); } void Ifc4x3::IfcRelSpaceBoundary::setConnectionGeometry(const ::Ifc4x3::IfcConnectionGeometry& v) { set_attribute_value(6, v);if constexpr (false)unset_attribute_value(6); } ::Ifc4x3::IfcPhysicalOrVirtualEnum::Value Ifc4x3::IfcRelSpaceBoundary::PhysicalOrVirtualBoundary() const { return ::Ifc4x3::IfcPhysicalOrVirtualEnum::FromString(get_attribute_value(7)); } void Ifc4x3::IfcRelSpaceBoundary::setPhysicalOrVirtualBoundary(const ::Ifc4x3::IfcPhysicalOrVirtualEnum::Value& v) { set_attribute_value(7, enumeration_reference(&::Ifc4x3::IfcPhysicalOrVirtualEnum::Class(), (size_t) v));if constexpr (false)unset_attribute_value(7); } @@ -14191,7 +14191,7 @@ const ifcopenshell::entity& Ifc4x3::IfcRelSpaceBoundary::Class() { return *((ifc Ifc4x3::IfcRelSpaceBoundary Ifc4x3::IfcRelSpaceBoundary::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, ::Ifc4x3::IfcSpaceBoundarySelect v5_RelatingSpace, ::Ifc4x3::IfcElement v6_RelatedBuildingElement, ::Ifc4x3::IfcConnectionGeometry v7_ConnectionGeometry, ::Ifc4x3::IfcPhysicalOrVirtualEnum::Value v8_PhysicalOrVirtualBoundary, ::Ifc4x3::IfcInternalOrExternalEnum::Value v9_InternalOrExternalBoundary) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, (v5_RelatingSpace));set_attribute_value(5, (v6_RelatedBuildingElement));set_attribute_value(6, (v7_ConnectionGeometry));set_attribute_value(7, (enumeration_reference(&::Ifc4x3::IfcPhysicalOrVirtualEnum::Class(),(size_t)v8_PhysicalOrVirtualBoundary)));set_attribute_value(8, (enumeration_reference(&::Ifc4x3::IfcInternalOrExternalEnum::Class(),(size_t)v9_InternalOrExternalBoundary)));; return *this; } // Function implementations for IfcRelSpaceBoundary1stLevel -::Ifc4x3::IfcRelSpaceBoundary1stLevel Ifc4x3::IfcRelSpaceBoundary1stLevel::ParentBoundary() const { if(get_attribute_value(9).isNull()) { return ::Ifc4x3::IfcRelSpaceBoundary1stLevel{}; } return ((express::Base)(get_attribute_value(9))).as<::Ifc4x3::IfcRelSpaceBoundary1stLevel>(); } +::Ifc4x3::IfcRelSpaceBoundary1stLevel Ifc4x3::IfcRelSpaceBoundary1stLevel::ParentBoundary() const { if(get_attribute_value(9).isNull()) { return ::Ifc4x3::IfcRelSpaceBoundary1stLevel{}; } return ((express::base)(get_attribute_value(9))).as<::Ifc4x3::IfcRelSpaceBoundary1stLevel>(); } void Ifc4x3::IfcRelSpaceBoundary1stLevel::setParentBoundary(const ::Ifc4x3::IfcRelSpaceBoundary1stLevel& v) { set_attribute_value(9, v);if constexpr (false)unset_attribute_value(9); } std::vector<::Ifc4x3::IfcRelSpaceBoundary1stLevel> Ifc4x3::IfcRelSpaceBoundary1stLevel::InnerBoundaries() const { return cast_vector(file()->get_inverse(data()->id(), IFC4X3_types[947], 9)); } @@ -14200,7 +14200,7 @@ const ifcopenshell::entity& Ifc4x3::IfcRelSpaceBoundary1stLevel::Class() { retur Ifc4x3::IfcRelSpaceBoundary1stLevel Ifc4x3::IfcRelSpaceBoundary1stLevel::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, ::Ifc4x3::IfcSpaceBoundarySelect v5_RelatingSpace, ::Ifc4x3::IfcElement v6_RelatedBuildingElement, ::Ifc4x3::IfcConnectionGeometry v7_ConnectionGeometry, ::Ifc4x3::IfcPhysicalOrVirtualEnum::Value v8_PhysicalOrVirtualBoundary, ::Ifc4x3::IfcInternalOrExternalEnum::Value v9_InternalOrExternalBoundary, ::Ifc4x3::IfcRelSpaceBoundary1stLevel v10_ParentBoundary) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, (v5_RelatingSpace));set_attribute_value(5, (v6_RelatedBuildingElement));set_attribute_value(6, (v7_ConnectionGeometry));set_attribute_value(7, (enumeration_reference(&::Ifc4x3::IfcPhysicalOrVirtualEnum::Class(),(size_t)v8_PhysicalOrVirtualBoundary)));set_attribute_value(8, (enumeration_reference(&::Ifc4x3::IfcInternalOrExternalEnum::Class(),(size_t)v9_InternalOrExternalBoundary)));set_attribute_value(9, (v10_ParentBoundary));; return *this; } // Function implementations for IfcRelSpaceBoundary2ndLevel -::Ifc4x3::IfcRelSpaceBoundary2ndLevel Ifc4x3::IfcRelSpaceBoundary2ndLevel::CorrespondingBoundary() const { if(get_attribute_value(10).isNull()) { return ::Ifc4x3::IfcRelSpaceBoundary2ndLevel{}; } return ((express::Base)(get_attribute_value(10))).as<::Ifc4x3::IfcRelSpaceBoundary2ndLevel>(); } +::Ifc4x3::IfcRelSpaceBoundary2ndLevel Ifc4x3::IfcRelSpaceBoundary2ndLevel::CorrespondingBoundary() const { if(get_attribute_value(10).isNull()) { return ::Ifc4x3::IfcRelSpaceBoundary2ndLevel{}; } return ((express::base)(get_attribute_value(10))).as<::Ifc4x3::IfcRelSpaceBoundary2ndLevel>(); } void Ifc4x3::IfcRelSpaceBoundary2ndLevel::setCorrespondingBoundary(const ::Ifc4x3::IfcRelSpaceBoundary2ndLevel& v) { set_attribute_value(10, v);if constexpr (false)unset_attribute_value(10); } std::vector<::Ifc4x3::IfcRelSpaceBoundary2ndLevel> Ifc4x3::IfcRelSpaceBoundary2ndLevel::Corresponds() const { return cast_vector(file()->get_inverse(data()->id(), IFC4X3_types[948], 10)); } @@ -14209,9 +14209,9 @@ const ifcopenshell::entity& Ifc4x3::IfcRelSpaceBoundary2ndLevel::Class() { retur Ifc4x3::IfcRelSpaceBoundary2ndLevel Ifc4x3::IfcRelSpaceBoundary2ndLevel::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, ::Ifc4x3::IfcSpaceBoundarySelect v5_RelatingSpace, ::Ifc4x3::IfcElement v6_RelatedBuildingElement, ::Ifc4x3::IfcConnectionGeometry v7_ConnectionGeometry, ::Ifc4x3::IfcPhysicalOrVirtualEnum::Value v8_PhysicalOrVirtualBoundary, ::Ifc4x3::IfcInternalOrExternalEnum::Value v9_InternalOrExternalBoundary, ::Ifc4x3::IfcRelSpaceBoundary1stLevel v10_ParentBoundary, ::Ifc4x3::IfcRelSpaceBoundary2ndLevel v11_CorrespondingBoundary) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, (v5_RelatingSpace));set_attribute_value(5, (v6_RelatedBuildingElement));set_attribute_value(6, (v7_ConnectionGeometry));set_attribute_value(7, (enumeration_reference(&::Ifc4x3::IfcPhysicalOrVirtualEnum::Class(),(size_t)v8_PhysicalOrVirtualBoundary)));set_attribute_value(8, (enumeration_reference(&::Ifc4x3::IfcInternalOrExternalEnum::Class(),(size_t)v9_InternalOrExternalBoundary)));set_attribute_value(9, (v10_ParentBoundary));set_attribute_value(10, (v11_CorrespondingBoundary));; return *this; } // Function implementations for IfcRelVoidsElement -::Ifc4x3::IfcElement Ifc4x3::IfcRelVoidsElement::RelatingBuildingElement() const { return ((express::Base)(get_attribute_value(4))).as<::Ifc4x3::IfcElement>(); } +::Ifc4x3::IfcElement Ifc4x3::IfcRelVoidsElement::RelatingBuildingElement() const { return ((express::base)(get_attribute_value(4))).as<::Ifc4x3::IfcElement>(); } void Ifc4x3::IfcRelVoidsElement::setRelatingBuildingElement(const ::Ifc4x3::IfcElement& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } -::Ifc4x3::IfcFeatureElementSubtraction Ifc4x3::IfcRelVoidsElement::RelatedOpeningElement() const { return ((express::Base)(get_attribute_value(5))).as<::Ifc4x3::IfcFeatureElementSubtraction>(); } +::Ifc4x3::IfcFeatureElementSubtraction Ifc4x3::IfcRelVoidsElement::RelatedOpeningElement() const { return ((express::base)(get_attribute_value(5))).as<::Ifc4x3::IfcFeatureElementSubtraction>(); } void Ifc4x3::IfcRelVoidsElement::setRelatedOpeningElement(const ::Ifc4x3::IfcFeatureElementSubtraction& v) { set_attribute_value(5, v);if constexpr (false)unset_attribute_value(5); } @@ -14233,21 +14233,21 @@ const ifcopenshell::entity& Ifc4x3::IfcReparametrisedCompositeCurveSegment::Clas Ifc4x3::IfcReparametrisedCompositeCurveSegment Ifc4x3::IfcReparametrisedCompositeCurveSegment::initialize(::Ifc4x3::IfcTransitionCode::Value v1_Transition, bool v2_SameSense, ::Ifc4x3::IfcCurve v3_ParentCurve, double v4_ParamLength) { set_attribute_value(0, (enumeration_reference(&::Ifc4x3::IfcTransitionCode::Class(),(size_t)v1_Transition)));set_attribute_value(1, (v2_SameSense));set_attribute_value(2, (v3_ParentCurve));set_attribute_value(3, (v4_ParamLength));; return *this; } // Function implementations for IfcRepresentation -::Ifc4x3::IfcRepresentationContext Ifc4x3::IfcRepresentation::ContextOfItems() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3::IfcRepresentationContext>(); } +::Ifc4x3::IfcRepresentationContext Ifc4x3::IfcRepresentation::ContextOfItems() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3::IfcRepresentationContext>(); } void Ifc4x3::IfcRepresentation::setContextOfItems(const ::Ifc4x3::IfcRepresentationContext& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } std::optional< std::string > Ifc4x3::IfcRepresentation::RepresentationIdentifier() const { if(get_attribute_value(1).isNull()) { return std::nullopt; } std::string v = get_attribute_value(1); return v; } void Ifc4x3::IfcRepresentation::setRepresentationIdentifier(const std::optional< std::string >& v) { if (v) {set_attribute_value(1, *v);} else {unset_attribute_value(1);} } std::optional< std::string > Ifc4x3::IfcRepresentation::RepresentationType() const { if(get_attribute_value(2).isNull()) { return std::nullopt; } std::string v = get_attribute_value(2); return v; } void Ifc4x3::IfcRepresentation::setRepresentationType(const std::optional< std::string >& v) { if (v) {set_attribute_value(2, *v);} else {unset_attribute_value(2);} } -std::vector< ::Ifc4x3::IfcRepresentationItem > Ifc4x3::IfcRepresentation::Items() const { std::vector es = get_attribute_value(3); return cast_vector<::Ifc4x3::IfcRepresentationItem>(es); } -void Ifc4x3::IfcRepresentation::setItems(const std::vector< ::Ifc4x3::IfcRepresentationItem >& v) { set_attribute_value(3, cast_vector(v));if constexpr (false)unset_attribute_value(3); } +std::vector< ::Ifc4x3::IfcRepresentationItem > Ifc4x3::IfcRepresentation::Items() const { std::vector es = get_attribute_value(3); return cast_vector<::Ifc4x3::IfcRepresentationItem>(es); } +void Ifc4x3::IfcRepresentation::setItems(const std::vector< ::Ifc4x3::IfcRepresentationItem >& v) { set_attribute_value(3, cast_vector(v));if constexpr (false)unset_attribute_value(3); } std::vector<::Ifc4x3::IfcRepresentationMap> Ifc4x3::IfcRepresentation::RepresentationMap() const { return cast_vector(file()->get_inverse(data()->id(), IFC4X3_types[954], 1)); } std::vector<::Ifc4x3::IfcPresentationLayerAssignment> Ifc4x3::IfcRepresentation::LayerAssignments() const { return cast_vector(file()->get_inverse(data()->id(), IFC4X3_types[792], 2)); } std::vector<::Ifc4x3::IfcProductRepresentation> Ifc4x3::IfcRepresentation::OfProductRepresentation() const { return cast_vector(file()->get_inverse(data()->id(), IFC4X3_types[803], 2)); } const ifcopenshell::entity& Ifc4x3::IfcRepresentation::Class() { return *((ifcopenshell::entity*)IFC4X3_types[951]); } -Ifc4x3::IfcRepresentation Ifc4x3::IfcRepresentation::initialize(::Ifc4x3::IfcRepresentationContext v1_ContextOfItems, std::optional< std::string > v2_RepresentationIdentifier, std::optional< std::string > v3_RepresentationType, std::vector< ::Ifc4x3::IfcRepresentationItem > v4_Items) { set_attribute_value(0, (v1_ContextOfItems)); if (v2_RepresentationIdentifier) {set_attribute_value(1, (*v2_RepresentationIdentifier)); } if (v3_RepresentationType) {set_attribute_value(2, (*v3_RepresentationType)); }set_attribute_value(3, cast_vector(v4_Items));; return *this; } +Ifc4x3::IfcRepresentation Ifc4x3::IfcRepresentation::initialize(::Ifc4x3::IfcRepresentationContext v1_ContextOfItems, std::optional< std::string > v2_RepresentationIdentifier, std::optional< std::string > v3_RepresentationType, std::vector< ::Ifc4x3::IfcRepresentationItem > v4_Items) { set_attribute_value(0, (v1_ContextOfItems)); if (v2_RepresentationIdentifier) {set_attribute_value(1, (*v2_RepresentationIdentifier)); } if (v3_RepresentationType) {set_attribute_value(2, (*v3_RepresentationType)); }set_attribute_value(3, cast_vector(v4_Items));; return *this; } // Function implementations for IfcRepresentationContext std::optional< std::string > Ifc4x3::IfcRepresentationContext::ContextIdentifier() const { if(get_attribute_value(0).isNull()) { return std::nullopt; } std::string v = get_attribute_value(0); return v; } @@ -14269,9 +14269,9 @@ const ifcopenshell::entity& Ifc4x3::IfcRepresentationItem::Class() { return *((i Ifc4x3::IfcRepresentationItem Ifc4x3::IfcRepresentationItem::initialize() { ; return *this; } // Function implementations for IfcRepresentationMap -::Ifc4x3::IfcAxis2Placement Ifc4x3::IfcRepresentationMap::MappingOrigin() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3::IfcAxis2Placement>(); } +::Ifc4x3::IfcAxis2Placement Ifc4x3::IfcRepresentationMap::MappingOrigin() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3::IfcAxis2Placement>(); } void Ifc4x3::IfcRepresentationMap::setMappingOrigin(const ::Ifc4x3::IfcAxis2Placement& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } -::Ifc4x3::IfcRepresentation Ifc4x3::IfcRepresentationMap::MappedRepresentation() const { return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3::IfcRepresentation>(); } +::Ifc4x3::IfcRepresentation Ifc4x3::IfcRepresentationMap::MappedRepresentation() const { return ((express::base)(get_attribute_value(1))).as<::Ifc4x3::IfcRepresentation>(); } void Ifc4x3::IfcRepresentationMap::setMappedRepresentation(const ::Ifc4x3::IfcRepresentation& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } std::vector<::Ifc4x3::IfcShapeAspect> Ifc4x3::IfcRepresentationMap::HasShapeAspects() const { return cast_vector(file()->get_inverse(data()->id(), IFC4X3_types[1006], 4)); } @@ -14292,24 +14292,24 @@ const ifcopenshell::entity& Ifc4x3::IfcResource::Class() { return *((ifcopenshel Ifc4x3::IfcResource Ifc4x3::IfcResource::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, std::optional< std::string > v6_Identification, std::optional< std::string > v7_LongDescription) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); } if (v6_Identification) {set_attribute_value(5, (*v6_Identification)); } if (v7_LongDescription) {set_attribute_value(6, (*v7_LongDescription)); }; return *this; } // Function implementations for IfcResourceApprovalRelationship -std::vector< ::Ifc4x3::IfcResourceObjectSelect > Ifc4x3::IfcResourceApprovalRelationship::RelatedResourceObjects() const { std::vector es = get_attribute_value(2); return cast_vector<::Ifc4x3::IfcResourceObjectSelect>(es); } -void Ifc4x3::IfcResourceApprovalRelationship::setRelatedResourceObjects(const std::vector< ::Ifc4x3::IfcResourceObjectSelect >& v) { set_attribute_value(2, cast_vector(v));if constexpr (false)unset_attribute_value(2); } -::Ifc4x3::IfcApproval Ifc4x3::IfcResourceApprovalRelationship::RelatingApproval() const { return ((express::Base)(get_attribute_value(3))).as<::Ifc4x3::IfcApproval>(); } +std::vector< ::Ifc4x3::IfcResourceObjectSelect > Ifc4x3::IfcResourceApprovalRelationship::RelatedResourceObjects() const { std::vector es = get_attribute_value(2); return cast_vector<::Ifc4x3::IfcResourceObjectSelect>(es); } +void Ifc4x3::IfcResourceApprovalRelationship::setRelatedResourceObjects(const std::vector< ::Ifc4x3::IfcResourceObjectSelect >& v) { set_attribute_value(2, cast_vector(v));if constexpr (false)unset_attribute_value(2); } +::Ifc4x3::IfcApproval Ifc4x3::IfcResourceApprovalRelationship::RelatingApproval() const { return ((express::base)(get_attribute_value(3))).as<::Ifc4x3::IfcApproval>(); } void Ifc4x3::IfcResourceApprovalRelationship::setRelatingApproval(const ::Ifc4x3::IfcApproval& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } const ifcopenshell::entity& Ifc4x3::IfcResourceApprovalRelationship::Class() { return *((ifcopenshell::entity*)IFC4X3_types[956]); } -Ifc4x3::IfcResourceApprovalRelationship Ifc4x3::IfcResourceApprovalRelationship::initialize(std::optional< std::string > v1_Name, std::optional< std::string > v2_Description, std::vector< ::Ifc4x3::IfcResourceObjectSelect > v3_RelatedResourceObjects, ::Ifc4x3::IfcApproval v4_RelatingApproval) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); } if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, cast_vector(v3_RelatedResourceObjects));set_attribute_value(3, (v4_RelatingApproval));; return *this; } +Ifc4x3::IfcResourceApprovalRelationship Ifc4x3::IfcResourceApprovalRelationship::initialize(std::optional< std::string > v1_Name, std::optional< std::string > v2_Description, std::vector< ::Ifc4x3::IfcResourceObjectSelect > v3_RelatedResourceObjects, ::Ifc4x3::IfcApproval v4_RelatingApproval) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); } if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, cast_vector(v3_RelatedResourceObjects));set_attribute_value(3, (v4_RelatingApproval));; return *this; } // Function implementations for IfcResourceConstraintRelationship -::Ifc4x3::IfcConstraint Ifc4x3::IfcResourceConstraintRelationship::RelatingConstraint() const { return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3::IfcConstraint>(); } +::Ifc4x3::IfcConstraint Ifc4x3::IfcResourceConstraintRelationship::RelatingConstraint() const { return ((express::base)(get_attribute_value(2))).as<::Ifc4x3::IfcConstraint>(); } void Ifc4x3::IfcResourceConstraintRelationship::setRelatingConstraint(const ::Ifc4x3::IfcConstraint& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } -std::vector< ::Ifc4x3::IfcResourceObjectSelect > Ifc4x3::IfcResourceConstraintRelationship::RelatedResourceObjects() const { std::vector es = get_attribute_value(3); return cast_vector<::Ifc4x3::IfcResourceObjectSelect>(es); } -void Ifc4x3::IfcResourceConstraintRelationship::setRelatedResourceObjects(const std::vector< ::Ifc4x3::IfcResourceObjectSelect >& v) { set_attribute_value(3, cast_vector(v));if constexpr (false)unset_attribute_value(3); } +std::vector< ::Ifc4x3::IfcResourceObjectSelect > Ifc4x3::IfcResourceConstraintRelationship::RelatedResourceObjects() const { std::vector es = get_attribute_value(3); return cast_vector<::Ifc4x3::IfcResourceObjectSelect>(es); } +void Ifc4x3::IfcResourceConstraintRelationship::setRelatedResourceObjects(const std::vector< ::Ifc4x3::IfcResourceObjectSelect >& v) { set_attribute_value(3, cast_vector(v));if constexpr (false)unset_attribute_value(3); } const ifcopenshell::entity& Ifc4x3::IfcResourceConstraintRelationship::Class() { return *((ifcopenshell::entity*)IFC4X3_types[957]); } -Ifc4x3::IfcResourceConstraintRelationship Ifc4x3::IfcResourceConstraintRelationship::initialize(std::optional< std::string > v1_Name, std::optional< std::string > v2_Description, ::Ifc4x3::IfcConstraint v3_RelatingConstraint, std::vector< ::Ifc4x3::IfcResourceObjectSelect > v4_RelatedResourceObjects) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); } if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, (v3_RelatingConstraint));set_attribute_value(3, cast_vector(v4_RelatedResourceObjects));; return *this; } +Ifc4x3::IfcResourceConstraintRelationship Ifc4x3::IfcResourceConstraintRelationship::initialize(std::optional< std::string > v1_Name, std::optional< std::string > v2_Description, ::Ifc4x3::IfcConstraint v3_RelatingConstraint, std::vector< ::Ifc4x3::IfcResourceObjectSelect > v4_RelatedResourceObjects) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); } if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, (v3_RelatingConstraint));set_attribute_value(3, cast_vector(v4_RelatedResourceObjects));; return *this; } // Function implementations for IfcResourceLevelRelationship std::optional< std::string > Ifc4x3::IfcResourceLevelRelationship::Name() const { if(get_attribute_value(0).isNull()) { return std::nullopt; } std::string v = get_attribute_value(0); return v; } @@ -14358,7 +14358,7 @@ const ifcopenshell::entity& Ifc4x3::IfcResourceTime::Class() { return *((ifcopen Ifc4x3::IfcResourceTime Ifc4x3::IfcResourceTime::initialize(std::optional< std::string > v1_Name, std::optional< ::Ifc4x3::IfcDataOriginEnum::Value > v2_DataOrigin, std::optional< std::string > v3_UserDefinedDataOrigin, std::optional< std::string > v4_ScheduleWork, std::optional< double > v5_ScheduleUsage, std::optional< std::string > v6_ScheduleStart, std::optional< std::string > v7_ScheduleFinish, std::optional< std::string > v8_ScheduleContour, std::optional< std::string > v9_LevelingDelay, std::optional< bool > v10_IsOverAllocated, std::optional< std::string > v11_StatusTime, std::optional< std::string > v12_ActualWork, std::optional< double > v13_ActualUsage, std::optional< std::string > v14_ActualStart, std::optional< std::string > v15_ActualFinish, std::optional< std::string > v16_RemainingWork, std::optional< double > v17_RemainingUsage, std::optional< double > v18_Completion) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); } if (v2_DataOrigin) {set_attribute_value(1, (enumeration_reference(&::Ifc4x3::IfcDataOriginEnum::Class(),(size_t)*v2_DataOrigin))); } if (v3_UserDefinedDataOrigin) {set_attribute_value(2, (*v3_UserDefinedDataOrigin)); } if (v4_ScheduleWork) {set_attribute_value(3, (*v4_ScheduleWork)); } if (v5_ScheduleUsage) {set_attribute_value(4, (*v5_ScheduleUsage)); } if (v6_ScheduleStart) {set_attribute_value(5, (*v6_ScheduleStart)); } if (v7_ScheduleFinish) {set_attribute_value(6, (*v7_ScheduleFinish)); } if (v8_ScheduleContour) {set_attribute_value(7, (*v8_ScheduleContour)); } if (v9_LevelingDelay) {set_attribute_value(8, (*v9_LevelingDelay)); } if (v10_IsOverAllocated) {set_attribute_value(9, (*v10_IsOverAllocated)); } if (v11_StatusTime) {set_attribute_value(10, (*v11_StatusTime)); } if (v12_ActualWork) {set_attribute_value(11, (*v12_ActualWork)); } if (v13_ActualUsage) {set_attribute_value(12, (*v13_ActualUsage)); } if (v14_ActualStart) {set_attribute_value(13, (*v14_ActualStart)); } if (v15_ActualFinish) {set_attribute_value(14, (*v15_ActualFinish)); } if (v16_RemainingWork) {set_attribute_value(15, (*v16_RemainingWork)); } if (v17_RemainingUsage) {set_attribute_value(16, (*v17_RemainingUsage)); } if (v18_Completion) {set_attribute_value(17, (*v18_Completion)); }; return *this; } // Function implementations for IfcRevolvedAreaSolid -::Ifc4x3::IfcAxis1Placement Ifc4x3::IfcRevolvedAreaSolid::Axis() const { return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3::IfcAxis1Placement>(); } +::Ifc4x3::IfcAxis1Placement Ifc4x3::IfcRevolvedAreaSolid::Axis() const { return ((express::base)(get_attribute_value(2))).as<::Ifc4x3::IfcAxis1Placement>(); } void Ifc4x3::IfcRevolvedAreaSolid::setAxis(const ::Ifc4x3::IfcAxis1Placement& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } double Ifc4x3::IfcRevolvedAreaSolid::Angle() const { double v = get_attribute_value(3); return v; } void Ifc4x3::IfcRevolvedAreaSolid::setAngle(const double& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } @@ -14368,7 +14368,7 @@ const ifcopenshell::entity& Ifc4x3::IfcRevolvedAreaSolid::Class() { return *((if Ifc4x3::IfcRevolvedAreaSolid Ifc4x3::IfcRevolvedAreaSolid::initialize(::Ifc4x3::IfcProfileDef v1_SweptArea, ::Ifc4x3::IfcAxis2Placement3D v2_Position, ::Ifc4x3::IfcAxis1Placement v3_Axis, double v4_Angle) { set_attribute_value(0, (v1_SweptArea));set_attribute_value(1, (v2_Position));set_attribute_value(2, (v3_Axis));set_attribute_value(3, (v4_Angle));; return *this; } // Function implementations for IfcRevolvedAreaSolidTapered -::Ifc4x3::IfcProfileDef Ifc4x3::IfcRevolvedAreaSolidTapered::EndSweptArea() const { return ((express::Base)(get_attribute_value(4))).as<::Ifc4x3::IfcProfileDef>(); } +::Ifc4x3::IfcProfileDef Ifc4x3::IfcRevolvedAreaSolidTapered::EndSweptArea() const { return ((express::base)(get_attribute_value(4))).as<::Ifc4x3::IfcProfileDef>(); } void Ifc4x3::IfcRevolvedAreaSolidTapered::setEndSweptArea(const ::Ifc4x3::IfcProfileDef& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } @@ -14425,12 +14425,12 @@ void Ifc4x3::IfcRoofType::setPredefinedType(const ::Ifc4x3::IfcRoofTypeEnum::Val const ifcopenshell::entity& Ifc4x3::IfcRoofType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[972]); } -Ifc4x3::IfcRoofType Ifc4x3::IfcRoofType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcRoofTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcRoofTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3::IfcRoofType Ifc4x3::IfcRoofType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcRoofTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcRoofTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcRoot std::string Ifc4x3::IfcRoot::GlobalId() const { std::string v = get_attribute_value(0); return v; } void Ifc4x3::IfcRoot::setGlobalId(const std::string& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } -::Ifc4x3::IfcOwnerHistory Ifc4x3::IfcRoot::OwnerHistory() const { if(get_attribute_value(1).isNull()) { return ::Ifc4x3::IfcOwnerHistory{}; } return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3::IfcOwnerHistory>(); } +::Ifc4x3::IfcOwnerHistory Ifc4x3::IfcRoot::OwnerHistory() const { if(get_attribute_value(1).isNull()) { return ::Ifc4x3::IfcOwnerHistory{}; } return ((express::base)(get_attribute_value(1))).as<::Ifc4x3::IfcOwnerHistory>(); } void Ifc4x3::IfcRoot::setOwnerHistory(const ::Ifc4x3::IfcOwnerHistory& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } std::optional< std::string > Ifc4x3::IfcRoot::Name() const { if(get_attribute_value(2).isNull()) { return std::nullopt; } std::string v = get_attribute_value(2); return v; } void Ifc4x3::IfcRoot::setName(const std::optional< std::string >& v) { if (v) {set_attribute_value(2, *v);} else {unset_attribute_value(2);} } @@ -14473,7 +14473,7 @@ void Ifc4x3::IfcSanitaryTerminalType::setPredefinedType(const ::Ifc4x3::IfcSanit const ifcopenshell::entity& Ifc4x3::IfcSanitaryTerminalType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[981]); } -Ifc4x3::IfcSanitaryTerminalType Ifc4x3::IfcSanitaryTerminalType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcSanitaryTerminalTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcSanitaryTerminalTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3::IfcSanitaryTerminalType Ifc4x3::IfcSanitaryTerminalType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcSanitaryTerminalTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcSanitaryTerminalTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcSchedulingTime std::optional< std::string > Ifc4x3::IfcSchedulingTime::Name() const { if(get_attribute_value(0).isNull()) { return std::nullopt; } std::string v = get_attribute_value(0); return v; } @@ -14491,7 +14491,7 @@ Ifc4x3::IfcSchedulingTime Ifc4x3::IfcSchedulingTime::initialize(std::optional< s const ifcopenshell::entity& Ifc4x3::IfcSeamCurve::Class() { return *((ifcopenshell::entity*)IFC4X3_types[984]); } -Ifc4x3::IfcSeamCurve Ifc4x3::IfcSeamCurve::initialize(::Ifc4x3::IfcCurve v1_Curve3D, std::vector< ::Ifc4x3::IfcPcurve > v2_AssociatedGeometry, ::Ifc4x3::IfcPreferredSurfaceCurveRepresentation::Value v3_MasterRepresentation) { set_attribute_value(0, (v1_Curve3D));set_attribute_value(1, cast_vector(v2_AssociatedGeometry));set_attribute_value(2, (enumeration_reference(&::Ifc4x3::IfcPreferredSurfaceCurveRepresentation::Class(),(size_t)v3_MasterRepresentation)));; return *this; } +Ifc4x3::IfcSeamCurve Ifc4x3::IfcSeamCurve::initialize(::Ifc4x3::IfcCurve v1_Curve3D, std::vector< ::Ifc4x3::IfcPcurve > v2_AssociatedGeometry, ::Ifc4x3::IfcPreferredSurfaceCurveRepresentation::Value v3_MasterRepresentation) { set_attribute_value(0, (v1_Curve3D));set_attribute_value(1, cast_vector(v2_AssociatedGeometry));set_attribute_value(2, (enumeration_reference(&::Ifc4x3::IfcPreferredSurfaceCurveRepresentation::Class(),(size_t)v3_MasterRepresentation)));; return *this; } // Function implementations for IfcSecondOrderPolynomialSpiral double Ifc4x3::IfcSecondOrderPolynomialSpiral::QuadraticTerm() const { double v = get_attribute_value(1); return v; } @@ -14508,9 +14508,9 @@ Ifc4x3::IfcSecondOrderPolynomialSpiral Ifc4x3::IfcSecondOrderPolynomialSpiral::i // Function implementations for IfcSectionProperties ::Ifc4x3::IfcSectionTypeEnum::Value Ifc4x3::IfcSectionProperties::SectionType() const { return ::Ifc4x3::IfcSectionTypeEnum::FromString(get_attribute_value(0)); } void Ifc4x3::IfcSectionProperties::setSectionType(const ::Ifc4x3::IfcSectionTypeEnum::Value& v) { set_attribute_value(0, enumeration_reference(&::Ifc4x3::IfcSectionTypeEnum::Class(), (size_t) v));if constexpr (false)unset_attribute_value(0); } -::Ifc4x3::IfcProfileDef Ifc4x3::IfcSectionProperties::StartProfile() const { return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3::IfcProfileDef>(); } +::Ifc4x3::IfcProfileDef Ifc4x3::IfcSectionProperties::StartProfile() const { return ((express::base)(get_attribute_value(1))).as<::Ifc4x3::IfcProfileDef>(); } void Ifc4x3::IfcSectionProperties::setStartProfile(const ::Ifc4x3::IfcProfileDef& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } -::Ifc4x3::IfcProfileDef Ifc4x3::IfcSectionProperties::EndProfile() const { if(get_attribute_value(2).isNull()) { return ::Ifc4x3::IfcProfileDef{}; } return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3::IfcProfileDef>(); } +::Ifc4x3::IfcProfileDef Ifc4x3::IfcSectionProperties::EndProfile() const { if(get_attribute_value(2).isNull()) { return ::Ifc4x3::IfcProfileDef{}; } return ((express::base)(get_attribute_value(2))).as<::Ifc4x3::IfcProfileDef>(); } void Ifc4x3::IfcSectionProperties::setEndProfile(const ::Ifc4x3::IfcProfileDef& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } @@ -14526,56 +14526,56 @@ std::optional< double > Ifc4x3::IfcSectionReinforcementProperties::TransversePos void Ifc4x3::IfcSectionReinforcementProperties::setTransversePosition(const std::optional< double >& v) { if (v) {set_attribute_value(2, *v);} else {unset_attribute_value(2);} } ::Ifc4x3::IfcReinforcingBarRoleEnum::Value Ifc4x3::IfcSectionReinforcementProperties::ReinforcementRole() const { return ::Ifc4x3::IfcReinforcingBarRoleEnum::FromString(get_attribute_value(3)); } void Ifc4x3::IfcSectionReinforcementProperties::setReinforcementRole(const ::Ifc4x3::IfcReinforcingBarRoleEnum::Value& v) { set_attribute_value(3, enumeration_reference(&::Ifc4x3::IfcReinforcingBarRoleEnum::Class(), (size_t) v));if constexpr (false)unset_attribute_value(3); } -::Ifc4x3::IfcSectionProperties Ifc4x3::IfcSectionReinforcementProperties::SectionDefinition() const { return ((express::Base)(get_attribute_value(4))).as<::Ifc4x3::IfcSectionProperties>(); } +::Ifc4x3::IfcSectionProperties Ifc4x3::IfcSectionReinforcementProperties::SectionDefinition() const { return ((express::base)(get_attribute_value(4))).as<::Ifc4x3::IfcSectionProperties>(); } void Ifc4x3::IfcSectionReinforcementProperties::setSectionDefinition(const ::Ifc4x3::IfcSectionProperties& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } -std::vector< ::Ifc4x3::IfcReinforcementBarProperties > Ifc4x3::IfcSectionReinforcementProperties::CrossSectionReinforcementDefinitions() const { std::vector es = get_attribute_value(5); return cast_vector<::Ifc4x3::IfcReinforcementBarProperties>(es); } -void Ifc4x3::IfcSectionReinforcementProperties::setCrossSectionReinforcementDefinitions(const std::vector< ::Ifc4x3::IfcReinforcementBarProperties >& v) { set_attribute_value(5, cast_vector(v));if constexpr (false)unset_attribute_value(5); } +std::vector< ::Ifc4x3::IfcReinforcementBarProperties > Ifc4x3::IfcSectionReinforcementProperties::CrossSectionReinforcementDefinitions() const { std::vector es = get_attribute_value(5); return cast_vector<::Ifc4x3::IfcReinforcementBarProperties>(es); } +void Ifc4x3::IfcSectionReinforcementProperties::setCrossSectionReinforcementDefinitions(const std::vector< ::Ifc4x3::IfcReinforcementBarProperties >& v) { set_attribute_value(5, cast_vector(v));if constexpr (false)unset_attribute_value(5); } const ifcopenshell::entity& Ifc4x3::IfcSectionReinforcementProperties::Class() { return *((ifcopenshell::entity*)IFC4X3_types[993]); } -Ifc4x3::IfcSectionReinforcementProperties Ifc4x3::IfcSectionReinforcementProperties::initialize(double v1_LongitudinalStartPosition, double v2_LongitudinalEndPosition, std::optional< double > v3_TransversePosition, ::Ifc4x3::IfcReinforcingBarRoleEnum::Value v4_ReinforcementRole, ::Ifc4x3::IfcSectionProperties v5_SectionDefinition, std::vector< ::Ifc4x3::IfcReinforcementBarProperties > v6_CrossSectionReinforcementDefinitions) { set_attribute_value(0, (v1_LongitudinalStartPosition));set_attribute_value(1, (v2_LongitudinalEndPosition)); if (v3_TransversePosition) {set_attribute_value(2, (*v3_TransversePosition)); }set_attribute_value(3, (enumeration_reference(&::Ifc4x3::IfcReinforcingBarRoleEnum::Class(),(size_t)v4_ReinforcementRole)));set_attribute_value(4, (v5_SectionDefinition));set_attribute_value(5, cast_vector(v6_CrossSectionReinforcementDefinitions));; return *this; } +Ifc4x3::IfcSectionReinforcementProperties Ifc4x3::IfcSectionReinforcementProperties::initialize(double v1_LongitudinalStartPosition, double v2_LongitudinalEndPosition, std::optional< double > v3_TransversePosition, ::Ifc4x3::IfcReinforcingBarRoleEnum::Value v4_ReinforcementRole, ::Ifc4x3::IfcSectionProperties v5_SectionDefinition, std::vector< ::Ifc4x3::IfcReinforcementBarProperties > v6_CrossSectionReinforcementDefinitions) { set_attribute_value(0, (v1_LongitudinalStartPosition));set_attribute_value(1, (v2_LongitudinalEndPosition)); if (v3_TransversePosition) {set_attribute_value(2, (*v3_TransversePosition)); }set_attribute_value(3, (enumeration_reference(&::Ifc4x3::IfcReinforcingBarRoleEnum::Class(),(size_t)v4_ReinforcementRole)));set_attribute_value(4, (v5_SectionDefinition));set_attribute_value(5, cast_vector(v6_CrossSectionReinforcementDefinitions));; return *this; } // Function implementations for IfcSectionedSolid -::Ifc4x3::IfcCurve Ifc4x3::IfcSectionedSolid::Directrix() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3::IfcCurve>(); } +::Ifc4x3::IfcCurve Ifc4x3::IfcSectionedSolid::Directrix() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3::IfcCurve>(); } void Ifc4x3::IfcSectionedSolid::setDirectrix(const ::Ifc4x3::IfcCurve& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } -std::vector< ::Ifc4x3::IfcProfileDef > Ifc4x3::IfcSectionedSolid::CrossSections() const { std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3::IfcProfileDef>(es); } -void Ifc4x3::IfcSectionedSolid::setCrossSections(const std::vector< ::Ifc4x3::IfcProfileDef >& v) { set_attribute_value(1, cast_vector(v));if constexpr (false)unset_attribute_value(1); } +std::vector< ::Ifc4x3::IfcProfileDef > Ifc4x3::IfcSectionedSolid::CrossSections() const { std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3::IfcProfileDef>(es); } +void Ifc4x3::IfcSectionedSolid::setCrossSections(const std::vector< ::Ifc4x3::IfcProfileDef >& v) { set_attribute_value(1, cast_vector(v));if constexpr (false)unset_attribute_value(1); } const ifcopenshell::entity& Ifc4x3::IfcSectionedSolid::Class() { return *((ifcopenshell::entity*)IFC4X3_types[987]); } -Ifc4x3::IfcSectionedSolid Ifc4x3::IfcSectionedSolid::initialize(::Ifc4x3::IfcCurve v1_Directrix, std::vector< ::Ifc4x3::IfcProfileDef > v2_CrossSections) { set_attribute_value(0, (v1_Directrix));set_attribute_value(1, cast_vector(v2_CrossSections));; return *this; } +Ifc4x3::IfcSectionedSolid Ifc4x3::IfcSectionedSolid::initialize(::Ifc4x3::IfcCurve v1_Directrix, std::vector< ::Ifc4x3::IfcProfileDef > v2_CrossSections) { set_attribute_value(0, (v1_Directrix));set_attribute_value(1, cast_vector(v2_CrossSections));; return *this; } // Function implementations for IfcSectionedSolidHorizontal -std::vector< ::Ifc4x3::IfcAxis2PlacementLinear > Ifc4x3::IfcSectionedSolidHorizontal::CrossSectionPositions() const { std::vector es = get_attribute_value(2); return cast_vector<::Ifc4x3::IfcAxis2PlacementLinear>(es); } -void Ifc4x3::IfcSectionedSolidHorizontal::setCrossSectionPositions(const std::vector< ::Ifc4x3::IfcAxis2PlacementLinear >& v) { set_attribute_value(2, cast_vector(v));if constexpr (false)unset_attribute_value(2); } +std::vector< ::Ifc4x3::IfcAxis2PlacementLinear > Ifc4x3::IfcSectionedSolidHorizontal::CrossSectionPositions() const { std::vector es = get_attribute_value(2); return cast_vector<::Ifc4x3::IfcAxis2PlacementLinear>(es); } +void Ifc4x3::IfcSectionedSolidHorizontal::setCrossSectionPositions(const std::vector< ::Ifc4x3::IfcAxis2PlacementLinear >& v) { set_attribute_value(2, cast_vector(v));if constexpr (false)unset_attribute_value(2); } const ifcopenshell::entity& Ifc4x3::IfcSectionedSolidHorizontal::Class() { return *((ifcopenshell::entity*)IFC4X3_types[988]); } -Ifc4x3::IfcSectionedSolidHorizontal Ifc4x3::IfcSectionedSolidHorizontal::initialize(::Ifc4x3::IfcCurve v1_Directrix, std::vector< ::Ifc4x3::IfcProfileDef > v2_CrossSections, std::vector< ::Ifc4x3::IfcAxis2PlacementLinear > v3_CrossSectionPositions) { set_attribute_value(0, (v1_Directrix));set_attribute_value(1, cast_vector(v2_CrossSections));set_attribute_value(2, cast_vector(v3_CrossSectionPositions));; return *this; } +Ifc4x3::IfcSectionedSolidHorizontal Ifc4x3::IfcSectionedSolidHorizontal::initialize(::Ifc4x3::IfcCurve v1_Directrix, std::vector< ::Ifc4x3::IfcProfileDef > v2_CrossSections, std::vector< ::Ifc4x3::IfcAxis2PlacementLinear > v3_CrossSectionPositions) { set_attribute_value(0, (v1_Directrix));set_attribute_value(1, cast_vector(v2_CrossSections));set_attribute_value(2, cast_vector(v3_CrossSectionPositions));; return *this; } // Function implementations for IfcSectionedSpine -::Ifc4x3::IfcCompositeCurve Ifc4x3::IfcSectionedSpine::SpineCurve() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3::IfcCompositeCurve>(); } +::Ifc4x3::IfcCompositeCurve Ifc4x3::IfcSectionedSpine::SpineCurve() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3::IfcCompositeCurve>(); } void Ifc4x3::IfcSectionedSpine::setSpineCurve(const ::Ifc4x3::IfcCompositeCurve& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } -std::vector< ::Ifc4x3::IfcProfileDef > Ifc4x3::IfcSectionedSpine::CrossSections() const { std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3::IfcProfileDef>(es); } -void Ifc4x3::IfcSectionedSpine::setCrossSections(const std::vector< ::Ifc4x3::IfcProfileDef >& v) { set_attribute_value(1, cast_vector(v));if constexpr (false)unset_attribute_value(1); } -std::vector< ::Ifc4x3::IfcAxis2Placement3D > Ifc4x3::IfcSectionedSpine::CrossSectionPositions() const { std::vector es = get_attribute_value(2); return cast_vector<::Ifc4x3::IfcAxis2Placement3D>(es); } -void Ifc4x3::IfcSectionedSpine::setCrossSectionPositions(const std::vector< ::Ifc4x3::IfcAxis2Placement3D >& v) { set_attribute_value(2, cast_vector(v));if constexpr (false)unset_attribute_value(2); } +std::vector< ::Ifc4x3::IfcProfileDef > Ifc4x3::IfcSectionedSpine::CrossSections() const { std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3::IfcProfileDef>(es); } +void Ifc4x3::IfcSectionedSpine::setCrossSections(const std::vector< ::Ifc4x3::IfcProfileDef >& v) { set_attribute_value(1, cast_vector(v));if constexpr (false)unset_attribute_value(1); } +std::vector< ::Ifc4x3::IfcAxis2Placement3D > Ifc4x3::IfcSectionedSpine::CrossSectionPositions() const { std::vector es = get_attribute_value(2); return cast_vector<::Ifc4x3::IfcAxis2Placement3D>(es); } +void Ifc4x3::IfcSectionedSpine::setCrossSectionPositions(const std::vector< ::Ifc4x3::IfcAxis2Placement3D >& v) { set_attribute_value(2, cast_vector(v));if constexpr (false)unset_attribute_value(2); } const ifcopenshell::entity& Ifc4x3::IfcSectionedSpine::Class() { return *((ifcopenshell::entity*)IFC4X3_types[989]); } -Ifc4x3::IfcSectionedSpine Ifc4x3::IfcSectionedSpine::initialize(::Ifc4x3::IfcCompositeCurve v1_SpineCurve, std::vector< ::Ifc4x3::IfcProfileDef > v2_CrossSections, std::vector< ::Ifc4x3::IfcAxis2Placement3D > v3_CrossSectionPositions) { set_attribute_value(0, (v1_SpineCurve));set_attribute_value(1, cast_vector(v2_CrossSections));set_attribute_value(2, cast_vector(v3_CrossSectionPositions));; return *this; } +Ifc4x3::IfcSectionedSpine Ifc4x3::IfcSectionedSpine::initialize(::Ifc4x3::IfcCompositeCurve v1_SpineCurve, std::vector< ::Ifc4x3::IfcProfileDef > v2_CrossSections, std::vector< ::Ifc4x3::IfcAxis2Placement3D > v3_CrossSectionPositions) { set_attribute_value(0, (v1_SpineCurve));set_attribute_value(1, cast_vector(v2_CrossSections));set_attribute_value(2, cast_vector(v3_CrossSectionPositions));; return *this; } // Function implementations for IfcSectionedSurface -::Ifc4x3::IfcCurve Ifc4x3::IfcSectionedSurface::Directrix() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3::IfcCurve>(); } +::Ifc4x3::IfcCurve Ifc4x3::IfcSectionedSurface::Directrix() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3::IfcCurve>(); } void Ifc4x3::IfcSectionedSurface::setDirectrix(const ::Ifc4x3::IfcCurve& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } -std::vector< ::Ifc4x3::IfcAxis2PlacementLinear > Ifc4x3::IfcSectionedSurface::CrossSectionPositions() const { std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3::IfcAxis2PlacementLinear>(es); } -void Ifc4x3::IfcSectionedSurface::setCrossSectionPositions(const std::vector< ::Ifc4x3::IfcAxis2PlacementLinear >& v) { set_attribute_value(1, cast_vector(v));if constexpr (false)unset_attribute_value(1); } -std::vector< ::Ifc4x3::IfcProfileDef > Ifc4x3::IfcSectionedSurface::CrossSections() const { std::vector es = get_attribute_value(2); return cast_vector<::Ifc4x3::IfcProfileDef>(es); } -void Ifc4x3::IfcSectionedSurface::setCrossSections(const std::vector< ::Ifc4x3::IfcProfileDef >& v) { set_attribute_value(2, cast_vector(v));if constexpr (false)unset_attribute_value(2); } +std::vector< ::Ifc4x3::IfcAxis2PlacementLinear > Ifc4x3::IfcSectionedSurface::CrossSectionPositions() const { std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3::IfcAxis2PlacementLinear>(es); } +void Ifc4x3::IfcSectionedSurface::setCrossSectionPositions(const std::vector< ::Ifc4x3::IfcAxis2PlacementLinear >& v) { set_attribute_value(1, cast_vector(v));if constexpr (false)unset_attribute_value(1); } +std::vector< ::Ifc4x3::IfcProfileDef > Ifc4x3::IfcSectionedSurface::CrossSections() const { std::vector es = get_attribute_value(2); return cast_vector<::Ifc4x3::IfcProfileDef>(es); } +void Ifc4x3::IfcSectionedSurface::setCrossSections(const std::vector< ::Ifc4x3::IfcProfileDef >& v) { set_attribute_value(2, cast_vector(v));if constexpr (false)unset_attribute_value(2); } const ifcopenshell::entity& Ifc4x3::IfcSectionedSurface::Class() { return *((ifcopenshell::entity*)IFC4X3_types[990]); } -Ifc4x3::IfcSectionedSurface Ifc4x3::IfcSectionedSurface::initialize(::Ifc4x3::IfcCurve v1_Directrix, std::vector< ::Ifc4x3::IfcAxis2PlacementLinear > v2_CrossSectionPositions, std::vector< ::Ifc4x3::IfcProfileDef > v3_CrossSections) { set_attribute_value(0, (v1_Directrix));set_attribute_value(1, cast_vector(v2_CrossSectionPositions));set_attribute_value(2, cast_vector(v3_CrossSections));; return *this; } +Ifc4x3::IfcSectionedSurface Ifc4x3::IfcSectionedSurface::initialize(::Ifc4x3::IfcCurve v1_Directrix, std::vector< ::Ifc4x3::IfcAxis2PlacementLinear > v2_CrossSectionPositions, std::vector< ::Ifc4x3::IfcProfileDef > v3_CrossSections) { set_attribute_value(0, (v1_Directrix));set_attribute_value(1, cast_vector(v2_CrossSectionPositions));set_attribute_value(2, cast_vector(v3_CrossSections));; return *this; } // Function implementations for IfcSegment ::Ifc4x3::IfcTransitionCode::Value Ifc4x3::IfcSegment::Transition() const { return ::Ifc4x3::IfcTransitionCode::FromString(get_attribute_value(0)); } @@ -14587,14 +14587,14 @@ const ifcopenshell::entity& Ifc4x3::IfcSegment::Class() { return *((ifcopenshell Ifc4x3::IfcSegment Ifc4x3::IfcSegment::initialize(::Ifc4x3::IfcTransitionCode::Value v1_Transition) { set_attribute_value(0, (enumeration_reference(&::Ifc4x3::IfcTransitionCode::Class(),(size_t)v1_Transition)));; return *this; } // Function implementations for IfcSegmentedReferenceCurve -::Ifc4x3::IfcBoundedCurve Ifc4x3::IfcSegmentedReferenceCurve::BaseCurve() const { return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3::IfcBoundedCurve>(); } +::Ifc4x3::IfcBoundedCurve Ifc4x3::IfcSegmentedReferenceCurve::BaseCurve() const { return ((express::base)(get_attribute_value(2))).as<::Ifc4x3::IfcBoundedCurve>(); } void Ifc4x3::IfcSegmentedReferenceCurve::setBaseCurve(const ::Ifc4x3::IfcBoundedCurve& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } -::Ifc4x3::IfcPlacement Ifc4x3::IfcSegmentedReferenceCurve::EndPoint() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3::IfcPlacement{}; } return ((express::Base)(get_attribute_value(3))).as<::Ifc4x3::IfcPlacement>(); } +::Ifc4x3::IfcPlacement Ifc4x3::IfcSegmentedReferenceCurve::EndPoint() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3::IfcPlacement{}; } return ((express::base)(get_attribute_value(3))).as<::Ifc4x3::IfcPlacement>(); } void Ifc4x3::IfcSegmentedReferenceCurve::setEndPoint(const ::Ifc4x3::IfcPlacement& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } const ifcopenshell::entity& Ifc4x3::IfcSegmentedReferenceCurve::Class() { return *((ifcopenshell::entity*)IFC4X3_types[996]); } -Ifc4x3::IfcSegmentedReferenceCurve Ifc4x3::IfcSegmentedReferenceCurve::initialize(std::vector< ::Ifc4x3::IfcSegment > v1_Segments, boost::logic::tribool v2_SelfIntersect, ::Ifc4x3::IfcBoundedCurve v3_BaseCurve, ::Ifc4x3::IfcPlacement v4_EndPoint) { set_attribute_value(0, cast_vector(v1_Segments));set_attribute_value(1, (v2_SelfIntersect));set_attribute_value(2, (v3_BaseCurve));set_attribute_value(3, (v4_EndPoint));; return *this; } +Ifc4x3::IfcSegmentedReferenceCurve Ifc4x3::IfcSegmentedReferenceCurve::initialize(std::vector< ::Ifc4x3::IfcSegment > v1_Segments, boost::logic::tribool v2_SelfIntersect, ::Ifc4x3::IfcBoundedCurve v3_BaseCurve, ::Ifc4x3::IfcPlacement v4_EndPoint) { set_attribute_value(0, cast_vector(v1_Segments));set_attribute_value(1, (v2_SelfIntersect));set_attribute_value(2, (v3_BaseCurve));set_attribute_value(3, (v4_EndPoint));; return *this; } // Function implementations for IfcSensor std::optional< ::Ifc4x3::IfcSensorTypeEnum::Value > Ifc4x3::IfcSensor::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3::IfcSensorTypeEnum::FromString(get_attribute_value(8)); } @@ -14610,7 +14610,7 @@ void Ifc4x3::IfcSensorType::setPredefinedType(const ::Ifc4x3::IfcSensorTypeEnum: const ifcopenshell::entity& Ifc4x3::IfcSensorType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[999]); } -Ifc4x3::IfcSensorType Ifc4x3::IfcSensorType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcSensorTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcSensorTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3::IfcSensorType Ifc4x3::IfcSensorType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcSensorTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcSensorTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcSeventhOrderPolynomialSpiral double Ifc4x3::IfcSeventhOrderPolynomialSpiral::SepticTerm() const { double v = get_attribute_value(1); return v; } @@ -14648,45 +14648,45 @@ void Ifc4x3::IfcShadingDeviceType::setPredefinedType(const ::Ifc4x3::IfcShadingD const ifcopenshell::entity& Ifc4x3::IfcShadingDeviceType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[1004]); } -Ifc4x3::IfcShadingDeviceType Ifc4x3::IfcShadingDeviceType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcShadingDeviceTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcShadingDeviceTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3::IfcShadingDeviceType Ifc4x3::IfcShadingDeviceType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcShadingDeviceTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcShadingDeviceTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcShapeAspect -std::vector< ::Ifc4x3::IfcShapeModel > Ifc4x3::IfcShapeAspect::ShapeRepresentations() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3::IfcShapeModel>(es); } -void Ifc4x3::IfcShapeAspect::setShapeRepresentations(const std::vector< ::Ifc4x3::IfcShapeModel >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } +std::vector< ::Ifc4x3::IfcShapeModel > Ifc4x3::IfcShapeAspect::ShapeRepresentations() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3::IfcShapeModel>(es); } +void Ifc4x3::IfcShapeAspect::setShapeRepresentations(const std::vector< ::Ifc4x3::IfcShapeModel >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } std::optional< std::string > Ifc4x3::IfcShapeAspect::Name() const { if(get_attribute_value(1).isNull()) { return std::nullopt; } std::string v = get_attribute_value(1); return v; } void Ifc4x3::IfcShapeAspect::setName(const std::optional< std::string >& v) { if (v) {set_attribute_value(1, *v);} else {unset_attribute_value(1);} } std::optional< std::string > Ifc4x3::IfcShapeAspect::Description() const { if(get_attribute_value(2).isNull()) { return std::nullopt; } std::string v = get_attribute_value(2); return v; } void Ifc4x3::IfcShapeAspect::setDescription(const std::optional< std::string >& v) { if (v) {set_attribute_value(2, *v);} else {unset_attribute_value(2);} } boost::logic::tribool Ifc4x3::IfcShapeAspect::ProductDefinitional() const { boost::logic::tribool v = get_attribute_value(3); return v; } void Ifc4x3::IfcShapeAspect::setProductDefinitional(const boost::logic::tribool& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } -::Ifc4x3::IfcProductRepresentationSelect Ifc4x3::IfcShapeAspect::PartOfProductDefinitionShape() const { if(get_attribute_value(4).isNull()) { return ::Ifc4x3::IfcProductRepresentationSelect{}; } return ((express::Base)(get_attribute_value(4))).as<::Ifc4x3::IfcProductRepresentationSelect>(); } +::Ifc4x3::IfcProductRepresentationSelect Ifc4x3::IfcShapeAspect::PartOfProductDefinitionShape() const { if(get_attribute_value(4).isNull()) { return ::Ifc4x3::IfcProductRepresentationSelect{}; } return ((express::base)(get_attribute_value(4))).as<::Ifc4x3::IfcProductRepresentationSelect>(); } void Ifc4x3::IfcShapeAspect::setPartOfProductDefinitionShape(const ::Ifc4x3::IfcProductRepresentationSelect& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } std::vector<::Ifc4x3::IfcExternalReferenceRelationship> Ifc4x3::IfcShapeAspect::HasExternalReferences() const { return cast_vector(file()->get_inverse(data()->id(), IFC4X3_types[430], 3)); } const ifcopenshell::entity& Ifc4x3::IfcShapeAspect::Class() { return *((ifcopenshell::entity*)IFC4X3_types[1006]); } -Ifc4x3::IfcShapeAspect Ifc4x3::IfcShapeAspect::initialize(std::vector< ::Ifc4x3::IfcShapeModel > v1_ShapeRepresentations, std::optional< std::string > v2_Name, std::optional< std::string > v3_Description, boost::logic::tribool v4_ProductDefinitional, ::Ifc4x3::IfcProductRepresentationSelect v5_PartOfProductDefinitionShape) { set_attribute_value(0, cast_vector(v1_ShapeRepresentations)); if (v2_Name) {set_attribute_value(1, (*v2_Name)); } if (v3_Description) {set_attribute_value(2, (*v3_Description)); }set_attribute_value(3, (v4_ProductDefinitional));set_attribute_value(4, (v5_PartOfProductDefinitionShape));; return *this; } +Ifc4x3::IfcShapeAspect Ifc4x3::IfcShapeAspect::initialize(std::vector< ::Ifc4x3::IfcShapeModel > v1_ShapeRepresentations, std::optional< std::string > v2_Name, std::optional< std::string > v3_Description, boost::logic::tribool v4_ProductDefinitional, ::Ifc4x3::IfcProductRepresentationSelect v5_PartOfProductDefinitionShape) { set_attribute_value(0, cast_vector(v1_ShapeRepresentations)); if (v2_Name) {set_attribute_value(1, (*v2_Name)); } if (v3_Description) {set_attribute_value(2, (*v3_Description)); }set_attribute_value(3, (v4_ProductDefinitional));set_attribute_value(4, (v5_PartOfProductDefinitionShape));; return *this; } // Function implementations for IfcShapeModel std::vector<::Ifc4x3::IfcShapeAspect> Ifc4x3::IfcShapeModel::OfShapeAspect() const { return cast_vector(file()->get_inverse(data()->id(), IFC4X3_types[1006], 0)); } const ifcopenshell::entity& Ifc4x3::IfcShapeModel::Class() { return *((ifcopenshell::entity*)IFC4X3_types[1007]); } -Ifc4x3::IfcShapeModel Ifc4x3::IfcShapeModel::initialize(::Ifc4x3::IfcRepresentationContext v1_ContextOfItems, std::optional< std::string > v2_RepresentationIdentifier, std::optional< std::string > v3_RepresentationType, std::vector< ::Ifc4x3::IfcRepresentationItem > v4_Items) { set_attribute_value(0, (v1_ContextOfItems)); if (v2_RepresentationIdentifier) {set_attribute_value(1, (*v2_RepresentationIdentifier)); } if (v3_RepresentationType) {set_attribute_value(2, (*v3_RepresentationType)); }set_attribute_value(3, cast_vector(v4_Items));; return *this; } +Ifc4x3::IfcShapeModel Ifc4x3::IfcShapeModel::initialize(::Ifc4x3::IfcRepresentationContext v1_ContextOfItems, std::optional< std::string > v2_RepresentationIdentifier, std::optional< std::string > v3_RepresentationType, std::vector< ::Ifc4x3::IfcRepresentationItem > v4_Items) { set_attribute_value(0, (v1_ContextOfItems)); if (v2_RepresentationIdentifier) {set_attribute_value(1, (*v2_RepresentationIdentifier)); } if (v3_RepresentationType) {set_attribute_value(2, (*v3_RepresentationType)); }set_attribute_value(3, cast_vector(v4_Items));; return *this; } // Function implementations for IfcShapeRepresentation const ifcopenshell::entity& Ifc4x3::IfcShapeRepresentation::Class() { return *((ifcopenshell::entity*)IFC4X3_types[1008]); } -Ifc4x3::IfcShapeRepresentation Ifc4x3::IfcShapeRepresentation::initialize(::Ifc4x3::IfcRepresentationContext v1_ContextOfItems, std::optional< std::string > v2_RepresentationIdentifier, std::optional< std::string > v3_RepresentationType, std::vector< ::Ifc4x3::IfcRepresentationItem > v4_Items) { set_attribute_value(0, (v1_ContextOfItems)); if (v2_RepresentationIdentifier) {set_attribute_value(1, (*v2_RepresentationIdentifier)); } if (v3_RepresentationType) {set_attribute_value(2, (*v3_RepresentationType)); }set_attribute_value(3, cast_vector(v4_Items));; return *this; } +Ifc4x3::IfcShapeRepresentation Ifc4x3::IfcShapeRepresentation::initialize(::Ifc4x3::IfcRepresentationContext v1_ContextOfItems, std::optional< std::string > v2_RepresentationIdentifier, std::optional< std::string > v3_RepresentationType, std::vector< ::Ifc4x3::IfcRepresentationItem > v4_Items) { set_attribute_value(0, (v1_ContextOfItems)); if (v2_RepresentationIdentifier) {set_attribute_value(1, (*v2_RepresentationIdentifier)); } if (v3_RepresentationType) {set_attribute_value(2, (*v3_RepresentationType)); }set_attribute_value(3, cast_vector(v4_Items));; return *this; } // Function implementations for IfcShellBasedSurfaceModel -std::vector< ::Ifc4x3::IfcShell > Ifc4x3::IfcShellBasedSurfaceModel::SbsmBoundary() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3::IfcShell>(es); } -void Ifc4x3::IfcShellBasedSurfaceModel::setSbsmBoundary(const std::vector< ::Ifc4x3::IfcShell >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } +std::vector< ::Ifc4x3::IfcShell > Ifc4x3::IfcShellBasedSurfaceModel::SbsmBoundary() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3::IfcShell>(es); } +void Ifc4x3::IfcShellBasedSurfaceModel::setSbsmBoundary(const std::vector< ::Ifc4x3::IfcShell >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } const ifcopenshell::entity& Ifc4x3::IfcShellBasedSurfaceModel::Class() { return *((ifcopenshell::entity*)IFC4X3_types[1011]); } -Ifc4x3::IfcShellBasedSurfaceModel Ifc4x3::IfcShellBasedSurfaceModel::initialize(std::vector< ::Ifc4x3::IfcShell > v1_SbsmBoundary) { set_attribute_value(0, cast_vector(v1_SbsmBoundary));; return *this; } +Ifc4x3::IfcShellBasedSurfaceModel Ifc4x3::IfcShellBasedSurfaceModel::initialize(std::vector< ::Ifc4x3::IfcShell > v1_SbsmBoundary) { set_attribute_value(0, cast_vector(v1_SbsmBoundary));; return *this; } // Function implementations for IfcSign std::optional< ::Ifc4x3::IfcSignTypeEnum::Value > Ifc4x3::IfcSign::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3::IfcSignTypeEnum::FromString(get_attribute_value(8)); } @@ -14702,7 +14702,7 @@ void Ifc4x3::IfcSignType::setPredefinedType(const ::Ifc4x3::IfcSignTypeEnum::Val const ifcopenshell::entity& Ifc4x3::IfcSignType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[1016]); } -Ifc4x3::IfcSignType Ifc4x3::IfcSignType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcSignTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcSignTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3::IfcSignType Ifc4x3::IfcSignType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcSignTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcSignTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcSignal std::optional< ::Ifc4x3::IfcSignalTypeEnum::Value > Ifc4x3::IfcSignal::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3::IfcSignalTypeEnum::FromString(get_attribute_value(8)); } @@ -14718,7 +14718,7 @@ void Ifc4x3::IfcSignalType::setPredefinedType(const ::Ifc4x3::IfcSignalTypeEnum: const ifcopenshell::entity& Ifc4x3::IfcSignalType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[1014]); } -Ifc4x3::IfcSignalType Ifc4x3::IfcSignalType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcSignalTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcSignalTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3::IfcSignalType Ifc4x3::IfcSignalType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcSignalTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcSignalTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcSimpleProperty @@ -14733,11 +14733,11 @@ std::optional< std::string > Ifc4x3::IfcSimplePropertyTemplate::PrimaryMeasureTy void Ifc4x3::IfcSimplePropertyTemplate::setPrimaryMeasureType(const std::optional< std::string >& v) { if (v) {set_attribute_value(5, *v);} else {unset_attribute_value(5);} } std::optional< std::string > Ifc4x3::IfcSimplePropertyTemplate::SecondaryMeasureType() const { if(get_attribute_value(6).isNull()) { return std::nullopt; } std::string v = get_attribute_value(6); return v; } void Ifc4x3::IfcSimplePropertyTemplate::setSecondaryMeasureType(const std::optional< std::string >& v) { if (v) {set_attribute_value(6, *v);} else {unset_attribute_value(6);} } -::Ifc4x3::IfcPropertyEnumeration Ifc4x3::IfcSimplePropertyTemplate::Enumerators() const { if(get_attribute_value(7).isNull()) { return ::Ifc4x3::IfcPropertyEnumeration{}; } return ((express::Base)(get_attribute_value(7))).as<::Ifc4x3::IfcPropertyEnumeration>(); } +::Ifc4x3::IfcPropertyEnumeration Ifc4x3::IfcSimplePropertyTemplate::Enumerators() const { if(get_attribute_value(7).isNull()) { return ::Ifc4x3::IfcPropertyEnumeration{}; } return ((express::base)(get_attribute_value(7))).as<::Ifc4x3::IfcPropertyEnumeration>(); } void Ifc4x3::IfcSimplePropertyTemplate::setEnumerators(const ::Ifc4x3::IfcPropertyEnumeration& v) { set_attribute_value(7, v);if constexpr (false)unset_attribute_value(7); } -::Ifc4x3::IfcUnit Ifc4x3::IfcSimplePropertyTemplate::PrimaryUnit() const { if(get_attribute_value(8).isNull()) { return ::Ifc4x3::IfcUnit{}; } return ((express::Base)(get_attribute_value(8))).as<::Ifc4x3::IfcUnit>(); } +::Ifc4x3::IfcUnit Ifc4x3::IfcSimplePropertyTemplate::PrimaryUnit() const { if(get_attribute_value(8).isNull()) { return ::Ifc4x3::IfcUnit{}; } return ((express::base)(get_attribute_value(8))).as<::Ifc4x3::IfcUnit>(); } void Ifc4x3::IfcSimplePropertyTemplate::setPrimaryUnit(const ::Ifc4x3::IfcUnit& v) { set_attribute_value(8, v);if constexpr (false)unset_attribute_value(8); } -::Ifc4x3::IfcUnit Ifc4x3::IfcSimplePropertyTemplate::SecondaryUnit() const { if(get_attribute_value(9).isNull()) { return ::Ifc4x3::IfcUnit{}; } return ((express::Base)(get_attribute_value(9))).as<::Ifc4x3::IfcUnit>(); } +::Ifc4x3::IfcUnit Ifc4x3::IfcSimplePropertyTemplate::SecondaryUnit() const { if(get_attribute_value(9).isNull()) { return ::Ifc4x3::IfcUnit{}; } return ((express::base)(get_attribute_value(9))).as<::Ifc4x3::IfcUnit>(); } void Ifc4x3::IfcSimplePropertyTemplate::setSecondaryUnit(const ::Ifc4x3::IfcUnit& v) { set_attribute_value(9, v);if constexpr (false)unset_attribute_value(9); } std::optional< std::string > Ifc4x3::IfcSimplePropertyTemplate::Expression() const { if(get_attribute_value(10).isNull()) { return std::nullopt; } std::string v = get_attribute_value(10); return v; } void Ifc4x3::IfcSimplePropertyTemplate::setExpression(const std::optional< std::string >& v) { if (v) {set_attribute_value(10, *v);} else {unset_attribute_value(10);} } @@ -14769,7 +14769,7 @@ std::optional< double > Ifc4x3::IfcSite::RefElevation() const { if(get_attribute void Ifc4x3::IfcSite::setRefElevation(const std::optional< double >& v) { if (v) {set_attribute_value(11, *v);} else {unset_attribute_value(11);} } std::optional< std::string > Ifc4x3::IfcSite::LandTitleNumber() const { if(get_attribute_value(12).isNull()) { return std::nullopt; } std::string v = get_attribute_value(12); return v; } void Ifc4x3::IfcSite::setLandTitleNumber(const std::optional< std::string >& v) { if (v) {set_attribute_value(12, *v);} else {unset_attribute_value(12);} } -::Ifc4x3::IfcPostalAddress Ifc4x3::IfcSite::SiteAddress() const { if(get_attribute_value(13).isNull()) { return ::Ifc4x3::IfcPostalAddress{}; } return ((express::Base)(get_attribute_value(13))).as<::Ifc4x3::IfcPostalAddress>(); } +::Ifc4x3::IfcPostalAddress Ifc4x3::IfcSite::SiteAddress() const { if(get_attribute_value(13).isNull()) { return ::Ifc4x3::IfcPostalAddress{}; } return ((express::base)(get_attribute_value(13))).as<::Ifc4x3::IfcPostalAddress>(); } void Ifc4x3::IfcSite::setSiteAddress(const ::Ifc4x3::IfcPostalAddress& v) { set_attribute_value(13, v);if constexpr (false)unset_attribute_value(13); } @@ -14790,7 +14790,7 @@ void Ifc4x3::IfcSlabType::setPredefinedType(const ::Ifc4x3::IfcSlabTypeEnum::Val const ifcopenshell::entity& Ifc4x3::IfcSlabType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[1029]); } -Ifc4x3::IfcSlabType Ifc4x3::IfcSlabType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcSlabTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcSlabTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3::IfcSlabType Ifc4x3::IfcSlabType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcSlabTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcSlabTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcSlippageConnectionCondition std::optional< double > Ifc4x3::IfcSlippageConnectionCondition::SlippageX() const { if(get_attribute_value(1).isNull()) { return std::nullopt; } double v = get_attribute_value(1); return v; } @@ -14818,7 +14818,7 @@ void Ifc4x3::IfcSolarDeviceType::setPredefinedType(const ::Ifc4x3::IfcSolarDevic const ifcopenshell::entity& Ifc4x3::IfcSolarDeviceType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[1033]); } -Ifc4x3::IfcSolarDeviceType Ifc4x3::IfcSolarDeviceType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcSolarDeviceTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcSolarDeviceTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3::IfcSolarDeviceType Ifc4x3::IfcSolarDeviceType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcSolarDeviceTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcSolarDeviceTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcSolidModel @@ -14852,7 +14852,7 @@ void Ifc4x3::IfcSpaceHeaterType::setPredefinedType(const ::Ifc4x3::IfcSpaceHeate const ifcopenshell::entity& Ifc4x3::IfcSpaceHeaterType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[1045]); } -Ifc4x3::IfcSpaceHeaterType Ifc4x3::IfcSpaceHeaterType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcSpaceHeaterTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcSpaceHeaterTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3::IfcSpaceHeaterType Ifc4x3::IfcSpaceHeaterType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcSpaceHeaterTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcSpaceHeaterTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcSpaceType ::Ifc4x3::IfcSpaceTypeEnum::Value Ifc4x3::IfcSpaceType::PredefinedType() const { return ::Ifc4x3::IfcSpaceTypeEnum::FromString(get_attribute_value(9)); } @@ -14862,7 +14862,7 @@ void Ifc4x3::IfcSpaceType::setLongName(const std::optional< std::string >& v) { const ifcopenshell::entity& Ifc4x3::IfcSpaceType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[1047]); } -Ifc4x3::IfcSpaceType Ifc4x3::IfcSpaceType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcSpaceTypeEnum::Value v10_PredefinedType, std::optional< std::string > v11_LongName) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcSpaceTypeEnum::Class(),(size_t)v10_PredefinedType))); if (v11_LongName) {set_attribute_value(10, (*v11_LongName)); }; return *this; } +Ifc4x3::IfcSpaceType Ifc4x3::IfcSpaceType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcSpaceTypeEnum::Value v10_PredefinedType, std::optional< std::string > v11_LongName) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcSpaceTypeEnum::Class(),(size_t)v10_PredefinedType))); if (v11_LongName) {set_attribute_value(10, (*v11_LongName)); }; return *this; } // Function implementations for IfcSpatialElement std::optional< std::string > Ifc4x3::IfcSpatialElement::LongName() const { if(get_attribute_value(7).isNull()) { return std::nullopt; } std::string v = get_attribute_value(7); return v; } @@ -14883,7 +14883,7 @@ void Ifc4x3::IfcSpatialElementType::setElementType(const std::optional< std::str const ifcopenshell::entity& Ifc4x3::IfcSpatialElementType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[1050]); } -Ifc4x3::IfcSpatialElementType Ifc4x3::IfcSpatialElementType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } +Ifc4x3::IfcSpatialElementType Ifc4x3::IfcSpatialElementType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } // Function implementations for IfcSpatialStructureElement std::optional< ::Ifc4x3::IfcElementCompositionEnum::Value > Ifc4x3::IfcSpatialStructureElement::CompositionType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3::IfcElementCompositionEnum::FromString(get_attribute_value(8)); } @@ -14897,7 +14897,7 @@ Ifc4x3::IfcSpatialStructureElement Ifc4x3::IfcSpatialStructureElement::initializ const ifcopenshell::entity& Ifc4x3::IfcSpatialStructureElementType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[1053]); } -Ifc4x3::IfcSpatialStructureElementType Ifc4x3::IfcSpatialStructureElementType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } +Ifc4x3::IfcSpatialStructureElementType Ifc4x3::IfcSpatialStructureElementType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } // Function implementations for IfcSpatialZone std::optional< ::Ifc4x3::IfcSpatialZoneTypeEnum::Value > Ifc4x3::IfcSpatialZone::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3::IfcSpatialZoneTypeEnum::FromString(get_attribute_value(8)); } @@ -14915,7 +14915,7 @@ void Ifc4x3::IfcSpatialZoneType::setLongName(const std::optional< std::string >& const ifcopenshell::entity& Ifc4x3::IfcSpatialZoneType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[1055]); } -Ifc4x3::IfcSpatialZoneType Ifc4x3::IfcSpatialZoneType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcSpatialZoneTypeEnum::Value v10_PredefinedType, std::optional< std::string > v11_LongName) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcSpatialZoneTypeEnum::Class(),(size_t)v10_PredefinedType))); if (v11_LongName) {set_attribute_value(10, (*v11_LongName)); }; return *this; } +Ifc4x3::IfcSpatialZoneType Ifc4x3::IfcSpatialZoneType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcSpatialZoneTypeEnum::Value v10_PredefinedType, std::optional< std::string > v11_LongName) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcSpatialZoneTypeEnum::Class(),(size_t)v10_PredefinedType))); if (v11_LongName) {set_attribute_value(10, (*v11_LongName)); }; return *this; } // Function implementations for IfcSphere double Ifc4x3::IfcSphere::Radius() const { double v = get_attribute_value(1); return v; } @@ -14934,7 +14934,7 @@ const ifcopenshell::entity& Ifc4x3::IfcSphericalSurface::Class() { return *((ifc Ifc4x3::IfcSphericalSurface Ifc4x3::IfcSphericalSurface::initialize(::Ifc4x3::IfcAxis2Placement3D v1_Position, double v2_Radius) { set_attribute_value(0, (v1_Position));set_attribute_value(1, (v2_Radius));; return *this; } // Function implementations for IfcSpiral -::Ifc4x3::IfcAxis2Placement Ifc4x3::IfcSpiral::Position() const { if(get_attribute_value(0).isNull()) { return ::Ifc4x3::IfcAxis2Placement{}; } return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3::IfcAxis2Placement>(); } +::Ifc4x3::IfcAxis2Placement Ifc4x3::IfcSpiral::Position() const { if(get_attribute_value(0).isNull()) { return ::Ifc4x3::IfcAxis2Placement{}; } return ((express::base)(get_attribute_value(0))).as<::Ifc4x3::IfcAxis2Placement>(); } void Ifc4x3::IfcSpiral::setPosition(const ::Ifc4x3::IfcAxis2Placement& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } @@ -14955,7 +14955,7 @@ void Ifc4x3::IfcStackTerminalType::setPredefinedType(const ::Ifc4x3::IfcStackTer const ifcopenshell::entity& Ifc4x3::IfcStackTerminalType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[1065]); } -Ifc4x3::IfcStackTerminalType Ifc4x3::IfcStackTerminalType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcStackTerminalTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcStackTerminalTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3::IfcStackTerminalType Ifc4x3::IfcStackTerminalType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcStackTerminalTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcStackTerminalTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcStair std::optional< ::Ifc4x3::IfcStairTypeEnum::Value > Ifc4x3::IfcStair::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3::IfcStairTypeEnum::FromString(get_attribute_value(8)); } @@ -14987,7 +14987,7 @@ void Ifc4x3::IfcStairFlightType::setPredefinedType(const ::Ifc4x3::IfcStairFligh const ifcopenshell::entity& Ifc4x3::IfcStairFlightType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[1069]); } -Ifc4x3::IfcStairFlightType Ifc4x3::IfcStairFlightType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcStairFlightTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcStairFlightTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3::IfcStairFlightType Ifc4x3::IfcStairFlightType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcStairFlightTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcStairFlightTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcStairType ::Ifc4x3::IfcStairTypeEnum::Value Ifc4x3::IfcStairType::PredefinedType() const { return ::Ifc4x3::IfcStairTypeEnum::FromString(get_attribute_value(9)); } @@ -14995,7 +14995,7 @@ void Ifc4x3::IfcStairType::setPredefinedType(const ::Ifc4x3::IfcStairTypeEnum::V const ifcopenshell::entity& Ifc4x3::IfcStairType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[1071]); } -Ifc4x3::IfcStairType Ifc4x3::IfcStairType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcStairTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcStairTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3::IfcStairType Ifc4x3::IfcStairType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcStairTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcStairTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcStructuralAction std::optional< bool > Ifc4x3::IfcStructuralAction::DestabilizingLoad() const { if(get_attribute_value(9).isNull()) { return std::nullopt; } bool v = get_attribute_value(9); return v; } @@ -15006,7 +15006,7 @@ const ifcopenshell::entity& Ifc4x3::IfcStructuralAction::Class() { return *((ifc Ifc4x3::IfcStructuralAction Ifc4x3::IfcStructuralAction::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, ::Ifc4x3::IfcObjectPlacement v6_ObjectPlacement, ::Ifc4x3::IfcProductRepresentation v7_Representation, ::Ifc4x3::IfcStructuralLoad v8_AppliedLoad, ::Ifc4x3::IfcGlobalOrLocalEnum::Value v9_GlobalOrLocal, std::optional< bool > v10_DestabilizingLoad) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); }set_attribute_value(5, (v6_ObjectPlacement));set_attribute_value(6, (v7_Representation));set_attribute_value(7, (v8_AppliedLoad));set_attribute_value(8, (enumeration_reference(&::Ifc4x3::IfcGlobalOrLocalEnum::Class(),(size_t)v9_GlobalOrLocal))); if (v10_DestabilizingLoad) {set_attribute_value(9, (*v10_DestabilizingLoad)); }; return *this; } // Function implementations for IfcStructuralActivity -::Ifc4x3::IfcStructuralLoad Ifc4x3::IfcStructuralActivity::AppliedLoad() const { return ((express::Base)(get_attribute_value(7))).as<::Ifc4x3::IfcStructuralLoad>(); } +::Ifc4x3::IfcStructuralLoad Ifc4x3::IfcStructuralActivity::AppliedLoad() const { return ((express::base)(get_attribute_value(7))).as<::Ifc4x3::IfcStructuralLoad>(); } void Ifc4x3::IfcStructuralActivity::setAppliedLoad(const ::Ifc4x3::IfcStructuralLoad& v) { set_attribute_value(7, v);if constexpr (false)unset_attribute_value(7); } ::Ifc4x3::IfcGlobalOrLocalEnum::Value Ifc4x3::IfcStructuralActivity::GlobalOrLocal() const { return ::Ifc4x3::IfcGlobalOrLocalEnum::FromString(get_attribute_value(8)); } void Ifc4x3::IfcStructuralActivity::setGlobalOrLocal(const ::Ifc4x3::IfcGlobalOrLocalEnum::Value& v) { set_attribute_value(8, enumeration_reference(&::Ifc4x3::IfcGlobalOrLocalEnum::Class(), (size_t) v));if constexpr (false)unset_attribute_value(8); } @@ -15019,21 +15019,21 @@ Ifc4x3::IfcStructuralActivity Ifc4x3::IfcStructuralActivity::initialize(std::str // Function implementations for IfcStructuralAnalysisModel ::Ifc4x3::IfcAnalysisModelTypeEnum::Value Ifc4x3::IfcStructuralAnalysisModel::PredefinedType() const { return ::Ifc4x3::IfcAnalysisModelTypeEnum::FromString(get_attribute_value(5)); } void Ifc4x3::IfcStructuralAnalysisModel::setPredefinedType(const ::Ifc4x3::IfcAnalysisModelTypeEnum::Value& v) { set_attribute_value(5, enumeration_reference(&::Ifc4x3::IfcAnalysisModelTypeEnum::Class(), (size_t) v));if constexpr (false)unset_attribute_value(5); } -::Ifc4x3::IfcAxis2Placement3D Ifc4x3::IfcStructuralAnalysisModel::OrientationOf2DPlane() const { if(get_attribute_value(6).isNull()) { return ::Ifc4x3::IfcAxis2Placement3D{}; } return ((express::Base)(get_attribute_value(6))).as<::Ifc4x3::IfcAxis2Placement3D>(); } +::Ifc4x3::IfcAxis2Placement3D Ifc4x3::IfcStructuralAnalysisModel::OrientationOf2DPlane() const { if(get_attribute_value(6).isNull()) { return ::Ifc4x3::IfcAxis2Placement3D{}; } return ((express::base)(get_attribute_value(6))).as<::Ifc4x3::IfcAxis2Placement3D>(); } void Ifc4x3::IfcStructuralAnalysisModel::setOrientationOf2DPlane(const ::Ifc4x3::IfcAxis2Placement3D& v) { set_attribute_value(6, v);if constexpr (false)unset_attribute_value(6); } -std::optional< std::vector< ::Ifc4x3::IfcStructuralLoadGroup > > Ifc4x3::IfcStructuralAnalysisModel::LoadedBy() const { if(get_attribute_value(7).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(7); return cast_vector<::Ifc4x3::IfcStructuralLoadGroup>(es); } -void Ifc4x3::IfcStructuralAnalysisModel::setLoadedBy(const std::optional< std::vector< ::Ifc4x3::IfcStructuralLoadGroup > >& v) { if (v) {set_attribute_value(7, cast_vector(*v));} else {unset_attribute_value(7);} } -std::optional< std::vector< ::Ifc4x3::IfcStructuralResultGroup > > Ifc4x3::IfcStructuralAnalysisModel::HasResults() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(8); return cast_vector<::Ifc4x3::IfcStructuralResultGroup>(es); } -void Ifc4x3::IfcStructuralAnalysisModel::setHasResults(const std::optional< std::vector< ::Ifc4x3::IfcStructuralResultGroup > >& v) { if (v) {set_attribute_value(8, cast_vector(*v));} else {unset_attribute_value(8);} } -::Ifc4x3::IfcObjectPlacement Ifc4x3::IfcStructuralAnalysisModel::SharedPlacement() const { if(get_attribute_value(9).isNull()) { return ::Ifc4x3::IfcObjectPlacement{}; } return ((express::Base)(get_attribute_value(9))).as<::Ifc4x3::IfcObjectPlacement>(); } +std::optional< std::vector< ::Ifc4x3::IfcStructuralLoadGroup > > Ifc4x3::IfcStructuralAnalysisModel::LoadedBy() const { if(get_attribute_value(7).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(7); return cast_vector<::Ifc4x3::IfcStructuralLoadGroup>(es); } +void Ifc4x3::IfcStructuralAnalysisModel::setLoadedBy(const std::optional< std::vector< ::Ifc4x3::IfcStructuralLoadGroup > >& v) { if (v) {set_attribute_value(7, cast_vector(*v));} else {unset_attribute_value(7);} } +std::optional< std::vector< ::Ifc4x3::IfcStructuralResultGroup > > Ifc4x3::IfcStructuralAnalysisModel::HasResults() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(8); return cast_vector<::Ifc4x3::IfcStructuralResultGroup>(es); } +void Ifc4x3::IfcStructuralAnalysisModel::setHasResults(const std::optional< std::vector< ::Ifc4x3::IfcStructuralResultGroup > >& v) { if (v) {set_attribute_value(8, cast_vector(*v));} else {unset_attribute_value(8);} } +::Ifc4x3::IfcObjectPlacement Ifc4x3::IfcStructuralAnalysisModel::SharedPlacement() const { if(get_attribute_value(9).isNull()) { return ::Ifc4x3::IfcObjectPlacement{}; } return ((express::base)(get_attribute_value(9))).as<::Ifc4x3::IfcObjectPlacement>(); } void Ifc4x3::IfcStructuralAnalysisModel::setSharedPlacement(const ::Ifc4x3::IfcObjectPlacement& v) { set_attribute_value(9, v);if constexpr (false)unset_attribute_value(9); } const ifcopenshell::entity& Ifc4x3::IfcStructuralAnalysisModel::Class() { return *((ifcopenshell::entity*)IFC4X3_types[1077]); } -Ifc4x3::IfcStructuralAnalysisModel Ifc4x3::IfcStructuralAnalysisModel::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, ::Ifc4x3::IfcAnalysisModelTypeEnum::Value v6_PredefinedType, ::Ifc4x3::IfcAxis2Placement3D v7_OrientationOf2DPlane, std::optional< std::vector< ::Ifc4x3::IfcStructuralLoadGroup > > v8_LoadedBy, std::optional< std::vector< ::Ifc4x3::IfcStructuralResultGroup > > v9_HasResults, ::Ifc4x3::IfcObjectPlacement v10_SharedPlacement) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); }set_attribute_value(5, (enumeration_reference(&::Ifc4x3::IfcAnalysisModelTypeEnum::Class(),(size_t)v6_PredefinedType)));set_attribute_value(6, (v7_OrientationOf2DPlane)); if (v8_LoadedBy) {set_attribute_value(7, cast_vector(*v8_LoadedBy)); } if (v9_HasResults) {set_attribute_value(8, cast_vector(*v9_HasResults)); }set_attribute_value(9, (v10_SharedPlacement));; return *this; } +Ifc4x3::IfcStructuralAnalysisModel Ifc4x3::IfcStructuralAnalysisModel::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, ::Ifc4x3::IfcAnalysisModelTypeEnum::Value v6_PredefinedType, ::Ifc4x3::IfcAxis2Placement3D v7_OrientationOf2DPlane, std::optional< std::vector< ::Ifc4x3::IfcStructuralLoadGroup > > v8_LoadedBy, std::optional< std::vector< ::Ifc4x3::IfcStructuralResultGroup > > v9_HasResults, ::Ifc4x3::IfcObjectPlacement v10_SharedPlacement) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); }set_attribute_value(5, (enumeration_reference(&::Ifc4x3::IfcAnalysisModelTypeEnum::Class(),(size_t)v6_PredefinedType)));set_attribute_value(6, (v7_OrientationOf2DPlane)); if (v8_LoadedBy) {set_attribute_value(7, cast_vector(*v8_LoadedBy)); } if (v9_HasResults) {set_attribute_value(8, cast_vector(*v9_HasResults)); }set_attribute_value(9, (v10_SharedPlacement));; return *this; } // Function implementations for IfcStructuralConnection -::Ifc4x3::IfcBoundaryCondition Ifc4x3::IfcStructuralConnection::AppliedCondition() const { if(get_attribute_value(7).isNull()) { return ::Ifc4x3::IfcBoundaryCondition{}; } return ((express::Base)(get_attribute_value(7))).as<::Ifc4x3::IfcBoundaryCondition>(); } +::Ifc4x3::IfcBoundaryCondition Ifc4x3::IfcStructuralConnection::AppliedCondition() const { if(get_attribute_value(7).isNull()) { return ::Ifc4x3::IfcBoundaryCondition{}; } return ((express::base)(get_attribute_value(7))).as<::Ifc4x3::IfcBoundaryCondition>(); } void Ifc4x3::IfcStructuralConnection::setAppliedCondition(const ::Ifc4x3::IfcBoundaryCondition& v) { set_attribute_value(7, v);if constexpr (false)unset_attribute_value(7); } std::vector<::Ifc4x3::IfcRelConnectsStructuralMember> Ifc4x3::IfcStructuralConnection::ConnectsStructuralMembers() const { return cast_vector(file()->get_inverse(data()->id(), IFC4X3_types[924], 5)); } @@ -15060,7 +15060,7 @@ const ifcopenshell::entity& Ifc4x3::IfcStructuralCurveAction::Class() { return * Ifc4x3::IfcStructuralCurveAction Ifc4x3::IfcStructuralCurveAction::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, ::Ifc4x3::IfcObjectPlacement v6_ObjectPlacement, ::Ifc4x3::IfcProductRepresentation v7_Representation, ::Ifc4x3::IfcStructuralLoad v8_AppliedLoad, ::Ifc4x3::IfcGlobalOrLocalEnum::Value v9_GlobalOrLocal, std::optional< bool > v10_DestabilizingLoad, std::optional< ::Ifc4x3::IfcProjectedOrTrueLengthEnum::Value > v11_ProjectedOrTrue, ::Ifc4x3::IfcStructuralCurveActivityTypeEnum::Value v12_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); }set_attribute_value(5, (v6_ObjectPlacement));set_attribute_value(6, (v7_Representation));set_attribute_value(7, (v8_AppliedLoad));set_attribute_value(8, (enumeration_reference(&::Ifc4x3::IfcGlobalOrLocalEnum::Class(),(size_t)v9_GlobalOrLocal))); if (v10_DestabilizingLoad) {set_attribute_value(9, (*v10_DestabilizingLoad)); } if (v11_ProjectedOrTrue) {set_attribute_value(10, (enumeration_reference(&::Ifc4x3::IfcProjectedOrTrueLengthEnum::Class(),(size_t)*v11_ProjectedOrTrue))); }set_attribute_value(11, (enumeration_reference(&::Ifc4x3::IfcStructuralCurveActivityTypeEnum::Class(),(size_t)v12_PredefinedType)));; return *this; } // Function implementations for IfcStructuralCurveConnection -::Ifc4x3::IfcDirection Ifc4x3::IfcStructuralCurveConnection::AxisDirection() const { return ((express::Base)(get_attribute_value(8))).as<::Ifc4x3::IfcDirection>(); } +::Ifc4x3::IfcDirection Ifc4x3::IfcStructuralCurveConnection::AxisDirection() const { return ((express::base)(get_attribute_value(8))).as<::Ifc4x3::IfcDirection>(); } void Ifc4x3::IfcStructuralCurveConnection::setAxisDirection(const ::Ifc4x3::IfcDirection& v) { set_attribute_value(8, v);if constexpr (false)unset_attribute_value(8); } @@ -15070,7 +15070,7 @@ Ifc4x3::IfcStructuralCurveConnection Ifc4x3::IfcStructuralCurveConnection::initi // Function implementations for IfcStructuralCurveMember ::Ifc4x3::IfcStructuralCurveMemberTypeEnum::Value Ifc4x3::IfcStructuralCurveMember::PredefinedType() const { return ::Ifc4x3::IfcStructuralCurveMemberTypeEnum::FromString(get_attribute_value(7)); } void Ifc4x3::IfcStructuralCurveMember::setPredefinedType(const ::Ifc4x3::IfcStructuralCurveMemberTypeEnum::Value& v) { set_attribute_value(7, enumeration_reference(&::Ifc4x3::IfcStructuralCurveMemberTypeEnum::Class(), (size_t) v));if constexpr (false)unset_attribute_value(7); } -::Ifc4x3::IfcDirection Ifc4x3::IfcStructuralCurveMember::Axis() const { return ((express::Base)(get_attribute_value(8))).as<::Ifc4x3::IfcDirection>(); } +::Ifc4x3::IfcDirection Ifc4x3::IfcStructuralCurveMember::Axis() const { return ((express::base)(get_attribute_value(8))).as<::Ifc4x3::IfcDirection>(); } void Ifc4x3::IfcStructuralCurveMember::setAxis(const ::Ifc4x3::IfcDirection& v) { set_attribute_value(8, v);if constexpr (false)unset_attribute_value(8); } @@ -15121,14 +15121,14 @@ const ifcopenshell::entity& Ifc4x3::IfcStructuralLoadCase::Class() { return *((i Ifc4x3::IfcStructuralLoadCase Ifc4x3::IfcStructuralLoadCase::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, ::Ifc4x3::IfcLoadGroupTypeEnum::Value v6_PredefinedType, ::Ifc4x3::IfcActionTypeEnum::Value v7_ActionType, ::Ifc4x3::IfcActionSourceTypeEnum::Value v8_ActionSource, std::optional< double > v9_Coefficient, std::optional< std::string > v10_Purpose, std::optional< std::vector< double > /*[3:3]*/ > v11_SelfWeightCoefficients) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); }set_attribute_value(5, (enumeration_reference(&::Ifc4x3::IfcLoadGroupTypeEnum::Class(),(size_t)v6_PredefinedType)));set_attribute_value(6, (enumeration_reference(&::Ifc4x3::IfcActionTypeEnum::Class(),(size_t)v7_ActionType)));set_attribute_value(7, (enumeration_reference(&::Ifc4x3::IfcActionSourceTypeEnum::Class(),(size_t)v8_ActionSource))); if (v9_Coefficient) {set_attribute_value(8, (*v9_Coefficient)); } if (v10_Purpose) {set_attribute_value(9, (*v10_Purpose)); } if (v11_SelfWeightCoefficients) {set_attribute_value(10, (*v11_SelfWeightCoefficients)); }; return *this; } // Function implementations for IfcStructuralLoadConfiguration -std::vector< ::Ifc4x3::IfcStructuralLoadOrResult > Ifc4x3::IfcStructuralLoadConfiguration::Values() const { std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3::IfcStructuralLoadOrResult>(es); } -void Ifc4x3::IfcStructuralLoadConfiguration::setValues(const std::vector< ::Ifc4x3::IfcStructuralLoadOrResult >& v) { set_attribute_value(1, cast_vector(v));if constexpr (false)unset_attribute_value(1); } +std::vector< ::Ifc4x3::IfcStructuralLoadOrResult > Ifc4x3::IfcStructuralLoadConfiguration::Values() const { std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3::IfcStructuralLoadOrResult>(es); } +void Ifc4x3::IfcStructuralLoadConfiguration::setValues(const std::vector< ::Ifc4x3::IfcStructuralLoadOrResult >& v) { set_attribute_value(1, cast_vector(v));if constexpr (false)unset_attribute_value(1); } std::optional< std::vector< std::vector< double > > > Ifc4x3::IfcStructuralLoadConfiguration::Locations() const { if(get_attribute_value(2).isNull()) { return std::nullopt; } std::vector< std::vector< double > > v = get_attribute_value(2); return v; } void Ifc4x3::IfcStructuralLoadConfiguration::setLocations(const std::optional< std::vector< std::vector< double > > >& v) { if (v) {set_attribute_value(2, *v);} else {unset_attribute_value(2);} } const ifcopenshell::entity& Ifc4x3::IfcStructuralLoadConfiguration::Class() { return *((ifcopenshell::entity*)IFC4X3_types[1091]); } -Ifc4x3::IfcStructuralLoadConfiguration Ifc4x3::IfcStructuralLoadConfiguration::initialize(std::optional< std::string > v1_Name, std::vector< ::Ifc4x3::IfcStructuralLoadOrResult > v2_Values, std::optional< std::vector< std::vector< double > > > v3_Locations) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); }set_attribute_value(1, cast_vector(v2_Values)); if (v3_Locations) {set_attribute_value(2, (*v3_Locations)); }; return *this; } +Ifc4x3::IfcStructuralLoadConfiguration Ifc4x3::IfcStructuralLoadConfiguration::initialize(std::optional< std::string > v1_Name, std::vector< ::Ifc4x3::IfcStructuralLoadOrResult > v2_Values, std::optional< std::vector< std::vector< double > > > v3_Locations) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); }set_attribute_value(1, cast_vector(v2_Values)); if (v3_Locations) {set_attribute_value(2, (*v3_Locations)); }; return *this; } // Function implementations for IfcStructuralLoadGroup ::Ifc4x3::IfcLoadGroupTypeEnum::Value Ifc4x3::IfcStructuralLoadGroup::PredefinedType() const { return ::Ifc4x3::IfcLoadGroupTypeEnum::FromString(get_attribute_value(5)); } @@ -15274,7 +15274,7 @@ const ifcopenshell::entity& Ifc4x3::IfcStructuralPointAction::Class() { return * Ifc4x3::IfcStructuralPointAction Ifc4x3::IfcStructuralPointAction::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, ::Ifc4x3::IfcObjectPlacement v6_ObjectPlacement, ::Ifc4x3::IfcProductRepresentation v7_Representation, ::Ifc4x3::IfcStructuralLoad v8_AppliedLoad, ::Ifc4x3::IfcGlobalOrLocalEnum::Value v9_GlobalOrLocal, std::optional< bool > v10_DestabilizingLoad) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); }set_attribute_value(5, (v6_ObjectPlacement));set_attribute_value(6, (v7_Representation));set_attribute_value(7, (v8_AppliedLoad));set_attribute_value(8, (enumeration_reference(&::Ifc4x3::IfcGlobalOrLocalEnum::Class(),(size_t)v9_GlobalOrLocal))); if (v10_DestabilizingLoad) {set_attribute_value(9, (*v10_DestabilizingLoad)); }; return *this; } // Function implementations for IfcStructuralPointConnection -::Ifc4x3::IfcAxis2Placement3D Ifc4x3::IfcStructuralPointConnection::ConditionCoordinateSystem() const { if(get_attribute_value(8).isNull()) { return ::Ifc4x3::IfcAxis2Placement3D{}; } return ((express::Base)(get_attribute_value(8))).as<::Ifc4x3::IfcAxis2Placement3D>(); } +::Ifc4x3::IfcAxis2Placement3D Ifc4x3::IfcStructuralPointConnection::ConditionCoordinateSystem() const { if(get_attribute_value(8).isNull()) { return ::Ifc4x3::IfcAxis2Placement3D{}; } return ((express::base)(get_attribute_value(8))).as<::Ifc4x3::IfcAxis2Placement3D>(); } void Ifc4x3::IfcStructuralPointConnection::setConditionCoordinateSystem(const ::Ifc4x3::IfcAxis2Placement3D& v) { set_attribute_value(8, v);if constexpr (false)unset_attribute_value(8); } @@ -15296,7 +15296,7 @@ Ifc4x3::IfcStructuralReaction Ifc4x3::IfcStructuralReaction::initialize(std::str // Function implementations for IfcStructuralResultGroup ::Ifc4x3::IfcAnalysisTheoryTypeEnum::Value Ifc4x3::IfcStructuralResultGroup::TheoryType() const { return ::Ifc4x3::IfcAnalysisTheoryTypeEnum::FromString(get_attribute_value(5)); } void Ifc4x3::IfcStructuralResultGroup::setTheoryType(const ::Ifc4x3::IfcAnalysisTheoryTypeEnum::Value& v) { set_attribute_value(5, enumeration_reference(&::Ifc4x3::IfcAnalysisTheoryTypeEnum::Class(), (size_t) v));if constexpr (false)unset_attribute_value(5); } -::Ifc4x3::IfcStructuralLoadGroup Ifc4x3::IfcStructuralResultGroup::ResultForLoadGroup() const { if(get_attribute_value(6).isNull()) { return ::Ifc4x3::IfcStructuralLoadGroup{}; } return ((express::Base)(get_attribute_value(6))).as<::Ifc4x3::IfcStructuralLoadGroup>(); } +::Ifc4x3::IfcStructuralLoadGroup Ifc4x3::IfcStructuralResultGroup::ResultForLoadGroup() const { if(get_attribute_value(6).isNull()) { return ::Ifc4x3::IfcStructuralLoadGroup{}; } return ((express::base)(get_attribute_value(6))).as<::Ifc4x3::IfcStructuralLoadGroup>(); } void Ifc4x3::IfcStructuralResultGroup::setResultForLoadGroup(const ::Ifc4x3::IfcStructuralLoadGroup& v) { set_attribute_value(6, v);if constexpr (false)unset_attribute_value(6); } bool Ifc4x3::IfcStructuralResultGroup::IsLinear() const { bool v = get_attribute_value(7); return v; } void Ifc4x3::IfcStructuralResultGroup::setIsLinear(const bool& v) { set_attribute_value(7, v);if constexpr (false)unset_attribute_value(7); } @@ -15350,25 +15350,25 @@ Ifc4x3::IfcStructuralSurfaceReaction Ifc4x3::IfcStructuralSurfaceReaction::initi const ifcopenshell::entity& Ifc4x3::IfcStyleModel::Class() { return *((ifcopenshell::entity*)IFC4X3_types[1118]); } -Ifc4x3::IfcStyleModel Ifc4x3::IfcStyleModel::initialize(::Ifc4x3::IfcRepresentationContext v1_ContextOfItems, std::optional< std::string > v2_RepresentationIdentifier, std::optional< std::string > v3_RepresentationType, std::vector< ::Ifc4x3::IfcRepresentationItem > v4_Items) { set_attribute_value(0, (v1_ContextOfItems)); if (v2_RepresentationIdentifier) {set_attribute_value(1, (*v2_RepresentationIdentifier)); } if (v3_RepresentationType) {set_attribute_value(2, (*v3_RepresentationType)); }set_attribute_value(3, cast_vector(v4_Items));; return *this; } +Ifc4x3::IfcStyleModel Ifc4x3::IfcStyleModel::initialize(::Ifc4x3::IfcRepresentationContext v1_ContextOfItems, std::optional< std::string > v2_RepresentationIdentifier, std::optional< std::string > v3_RepresentationType, std::vector< ::Ifc4x3::IfcRepresentationItem > v4_Items) { set_attribute_value(0, (v1_ContextOfItems)); if (v2_RepresentationIdentifier) {set_attribute_value(1, (*v2_RepresentationIdentifier)); } if (v3_RepresentationType) {set_attribute_value(2, (*v3_RepresentationType)); }set_attribute_value(3, cast_vector(v4_Items));; return *this; } // Function implementations for IfcStyledItem -::Ifc4x3::IfcRepresentationItem Ifc4x3::IfcStyledItem::Item() const { if(get_attribute_value(0).isNull()) { return ::Ifc4x3::IfcRepresentationItem{}; } return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3::IfcRepresentationItem>(); } +::Ifc4x3::IfcRepresentationItem Ifc4x3::IfcStyledItem::Item() const { if(get_attribute_value(0).isNull()) { return ::Ifc4x3::IfcRepresentationItem{}; } return ((express::base)(get_attribute_value(0))).as<::Ifc4x3::IfcRepresentationItem>(); } void Ifc4x3::IfcStyledItem::setItem(const ::Ifc4x3::IfcRepresentationItem& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } -std::vector< ::Ifc4x3::IfcPresentationStyle > Ifc4x3::IfcStyledItem::Styles() const { std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3::IfcPresentationStyle>(es); } -void Ifc4x3::IfcStyledItem::setStyles(const std::vector< ::Ifc4x3::IfcPresentationStyle >& v) { set_attribute_value(1, cast_vector(v));if constexpr (false)unset_attribute_value(1); } +std::vector< ::Ifc4x3::IfcPresentationStyle > Ifc4x3::IfcStyledItem::Styles() const { std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3::IfcPresentationStyle>(es); } +void Ifc4x3::IfcStyledItem::setStyles(const std::vector< ::Ifc4x3::IfcPresentationStyle >& v) { set_attribute_value(1, cast_vector(v));if constexpr (false)unset_attribute_value(1); } std::optional< std::string > Ifc4x3::IfcStyledItem::Name() const { if(get_attribute_value(2).isNull()) { return std::nullopt; } std::string v = get_attribute_value(2); return v; } void Ifc4x3::IfcStyledItem::setName(const std::optional< std::string >& v) { if (v) {set_attribute_value(2, *v);} else {unset_attribute_value(2);} } const ifcopenshell::entity& Ifc4x3::IfcStyledItem::Class() { return *((ifcopenshell::entity*)IFC4X3_types[1116]); } -Ifc4x3::IfcStyledItem Ifc4x3::IfcStyledItem::initialize(::Ifc4x3::IfcRepresentationItem v1_Item, std::vector< ::Ifc4x3::IfcPresentationStyle > v2_Styles, std::optional< std::string > v3_Name) { set_attribute_value(0, (v1_Item));set_attribute_value(1, cast_vector(v2_Styles)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); }; return *this; } +Ifc4x3::IfcStyledItem Ifc4x3::IfcStyledItem::initialize(::Ifc4x3::IfcRepresentationItem v1_Item, std::vector< ::Ifc4x3::IfcPresentationStyle > v2_Styles, std::optional< std::string > v3_Name) { set_attribute_value(0, (v1_Item));set_attribute_value(1, cast_vector(v2_Styles)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); }; return *this; } // Function implementations for IfcStyledRepresentation const ifcopenshell::entity& Ifc4x3::IfcStyledRepresentation::Class() { return *((ifcopenshell::entity*)IFC4X3_types[1117]); } -Ifc4x3::IfcStyledRepresentation Ifc4x3::IfcStyledRepresentation::initialize(::Ifc4x3::IfcRepresentationContext v1_ContextOfItems, std::optional< std::string > v2_RepresentationIdentifier, std::optional< std::string > v3_RepresentationType, std::vector< ::Ifc4x3::IfcRepresentationItem > v4_Items) { set_attribute_value(0, (v1_ContextOfItems)); if (v2_RepresentationIdentifier) {set_attribute_value(1, (*v2_RepresentationIdentifier)); } if (v3_RepresentationType) {set_attribute_value(2, (*v3_RepresentationType)); }set_attribute_value(3, cast_vector(v4_Items));; return *this; } +Ifc4x3::IfcStyledRepresentation Ifc4x3::IfcStyledRepresentation::initialize(::Ifc4x3::IfcRepresentationContext v1_ContextOfItems, std::optional< std::string > v2_RepresentationIdentifier, std::optional< std::string > v3_RepresentationType, std::vector< ::Ifc4x3::IfcRepresentationItem > v4_Items) { set_attribute_value(0, (v1_ContextOfItems)); if (v2_RepresentationIdentifier) {set_attribute_value(1, (*v2_RepresentationIdentifier)); } if (v3_RepresentationType) {set_attribute_value(2, (*v3_RepresentationType)); }set_attribute_value(3, cast_vector(v4_Items));; return *this; } // Function implementations for IfcSubContractResource std::optional< ::Ifc4x3::IfcSubContractResourceTypeEnum::Value > Ifc4x3::IfcSubContractResource::PredefinedType() const { if(get_attribute_value(10).isNull()) { return std::nullopt; } return ::Ifc4x3::IfcSubContractResourceTypeEnum::FromString(get_attribute_value(10)); } @@ -15376,7 +15376,7 @@ void Ifc4x3::IfcSubContractResource::setPredefinedType(const std::optional< ::If const ifcopenshell::entity& Ifc4x3::IfcSubContractResource::Class() { return *((ifcopenshell::entity*)IFC4X3_types[1119]); } -Ifc4x3::IfcSubContractResource Ifc4x3::IfcSubContractResource::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, std::optional< std::string > v6_Identification, std::optional< std::string > v7_LongDescription, ::Ifc4x3::IfcResourceTime v8_Usage, std::optional< std::vector< ::Ifc4x3::IfcAppliedValue > > v9_BaseCosts, ::Ifc4x3::IfcPhysicalQuantity v10_BaseQuantity, std::optional< ::Ifc4x3::IfcSubContractResourceTypeEnum::Value > v11_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); } if (v6_Identification) {set_attribute_value(5, (*v6_Identification)); } if (v7_LongDescription) {set_attribute_value(6, (*v7_LongDescription)); }set_attribute_value(7, (v8_Usage)); if (v9_BaseCosts) {set_attribute_value(8, cast_vector(*v9_BaseCosts)); }set_attribute_value(9, (v10_BaseQuantity)); if (v11_PredefinedType) {set_attribute_value(10, (enumeration_reference(&::Ifc4x3::IfcSubContractResourceTypeEnum::Class(),(size_t)*v11_PredefinedType))); }; return *this; } +Ifc4x3::IfcSubContractResource Ifc4x3::IfcSubContractResource::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, std::optional< std::string > v6_Identification, std::optional< std::string > v7_LongDescription, ::Ifc4x3::IfcResourceTime v8_Usage, std::optional< std::vector< ::Ifc4x3::IfcAppliedValue > > v9_BaseCosts, ::Ifc4x3::IfcPhysicalQuantity v10_BaseQuantity, std::optional< ::Ifc4x3::IfcSubContractResourceTypeEnum::Value > v11_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); } if (v6_Identification) {set_attribute_value(5, (*v6_Identification)); } if (v7_LongDescription) {set_attribute_value(6, (*v7_LongDescription)); }set_attribute_value(7, (v8_Usage)); if (v9_BaseCosts) {set_attribute_value(8, cast_vector(*v9_BaseCosts)); }set_attribute_value(9, (v10_BaseQuantity)); if (v11_PredefinedType) {set_attribute_value(10, (enumeration_reference(&::Ifc4x3::IfcSubContractResourceTypeEnum::Class(),(size_t)*v11_PredefinedType))); }; return *this; } // Function implementations for IfcSubContractResourceType ::Ifc4x3::IfcSubContractResourceTypeEnum::Value Ifc4x3::IfcSubContractResourceType::PredefinedType() const { return ::Ifc4x3::IfcSubContractResourceTypeEnum::FromString(get_attribute_value(11)); } @@ -15384,10 +15384,10 @@ void Ifc4x3::IfcSubContractResourceType::setPredefinedType(const ::Ifc4x3::IfcSu const ifcopenshell::entity& Ifc4x3::IfcSubContractResourceType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[1120]); } -Ifc4x3::IfcSubContractResourceType Ifc4x3::IfcSubContractResourceType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::string > v7_Identification, std::optional< std::string > v8_LongDescription, std::optional< std::string > v9_ResourceType, std::optional< std::vector< ::Ifc4x3::IfcAppliedValue > > v10_BaseCosts, ::Ifc4x3::IfcPhysicalQuantity v11_BaseQuantity, ::Ifc4x3::IfcSubContractResourceTypeEnum::Value v12_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_Identification) {set_attribute_value(6, (*v7_Identification)); } if (v8_LongDescription) {set_attribute_value(7, (*v8_LongDescription)); } if (v9_ResourceType) {set_attribute_value(8, (*v9_ResourceType)); } if (v10_BaseCosts) {set_attribute_value(9, cast_vector(*v10_BaseCosts)); }set_attribute_value(10, (v11_BaseQuantity));set_attribute_value(11, (enumeration_reference(&::Ifc4x3::IfcSubContractResourceTypeEnum::Class(),(size_t)v12_PredefinedType)));; return *this; } +Ifc4x3::IfcSubContractResourceType Ifc4x3::IfcSubContractResourceType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::string > v7_Identification, std::optional< std::string > v8_LongDescription, std::optional< std::string > v9_ResourceType, std::optional< std::vector< ::Ifc4x3::IfcAppliedValue > > v10_BaseCosts, ::Ifc4x3::IfcPhysicalQuantity v11_BaseQuantity, ::Ifc4x3::IfcSubContractResourceTypeEnum::Value v12_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_Identification) {set_attribute_value(6, (*v7_Identification)); } if (v8_LongDescription) {set_attribute_value(7, (*v8_LongDescription)); } if (v9_ResourceType) {set_attribute_value(8, (*v9_ResourceType)); } if (v10_BaseCosts) {set_attribute_value(9, cast_vector(*v10_BaseCosts)); }set_attribute_value(10, (v11_BaseQuantity));set_attribute_value(11, (enumeration_reference(&::Ifc4x3::IfcSubContractResourceTypeEnum::Class(),(size_t)v12_PredefinedType)));; return *this; } // Function implementations for IfcSubedge -::Ifc4x3::IfcEdge Ifc4x3::IfcSubedge::ParentEdge() const { return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3::IfcEdge>(); } +::Ifc4x3::IfcEdge Ifc4x3::IfcSubedge::ParentEdge() const { return ((express::base)(get_attribute_value(2))).as<::Ifc4x3::IfcEdge>(); } void Ifc4x3::IfcSubedge::setParentEdge(const ::Ifc4x3::IfcEdge& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } @@ -15401,19 +15401,19 @@ const ifcopenshell::entity& Ifc4x3::IfcSurface::Class() { return *((ifcopenshell Ifc4x3::IfcSurface Ifc4x3::IfcSurface::initialize() { ; return *this; } // Function implementations for IfcSurfaceCurve -::Ifc4x3::IfcCurve Ifc4x3::IfcSurfaceCurve::Curve3D() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3::IfcCurve>(); } +::Ifc4x3::IfcCurve Ifc4x3::IfcSurfaceCurve::Curve3D() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3::IfcCurve>(); } void Ifc4x3::IfcSurfaceCurve::setCurve3D(const ::Ifc4x3::IfcCurve& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } -std::vector< ::Ifc4x3::IfcPcurve > Ifc4x3::IfcSurfaceCurve::AssociatedGeometry() const { std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3::IfcPcurve>(es); } -void Ifc4x3::IfcSurfaceCurve::setAssociatedGeometry(const std::vector< ::Ifc4x3::IfcPcurve >& v) { set_attribute_value(1, cast_vector(v));if constexpr (false)unset_attribute_value(1); } +std::vector< ::Ifc4x3::IfcPcurve > Ifc4x3::IfcSurfaceCurve::AssociatedGeometry() const { std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3::IfcPcurve>(es); } +void Ifc4x3::IfcSurfaceCurve::setAssociatedGeometry(const std::vector< ::Ifc4x3::IfcPcurve >& v) { set_attribute_value(1, cast_vector(v));if constexpr (false)unset_attribute_value(1); } ::Ifc4x3::IfcPreferredSurfaceCurveRepresentation::Value Ifc4x3::IfcSurfaceCurve::MasterRepresentation() const { return ::Ifc4x3::IfcPreferredSurfaceCurveRepresentation::FromString(get_attribute_value(2)); } void Ifc4x3::IfcSurfaceCurve::setMasterRepresentation(const ::Ifc4x3::IfcPreferredSurfaceCurveRepresentation::Value& v) { set_attribute_value(2, enumeration_reference(&::Ifc4x3::IfcPreferredSurfaceCurveRepresentation::Class(), (size_t) v));if constexpr (false)unset_attribute_value(2); } const ifcopenshell::entity& Ifc4x3::IfcSurfaceCurve::Class() { return *((ifcopenshell::entity*)IFC4X3_types[1124]); } -Ifc4x3::IfcSurfaceCurve Ifc4x3::IfcSurfaceCurve::initialize(::Ifc4x3::IfcCurve v1_Curve3D, std::vector< ::Ifc4x3::IfcPcurve > v2_AssociatedGeometry, ::Ifc4x3::IfcPreferredSurfaceCurveRepresentation::Value v3_MasterRepresentation) { set_attribute_value(0, (v1_Curve3D));set_attribute_value(1, cast_vector(v2_AssociatedGeometry));set_attribute_value(2, (enumeration_reference(&::Ifc4x3::IfcPreferredSurfaceCurveRepresentation::Class(),(size_t)v3_MasterRepresentation)));; return *this; } +Ifc4x3::IfcSurfaceCurve Ifc4x3::IfcSurfaceCurve::initialize(::Ifc4x3::IfcCurve v1_Curve3D, std::vector< ::Ifc4x3::IfcPcurve > v2_AssociatedGeometry, ::Ifc4x3::IfcPreferredSurfaceCurveRepresentation::Value v3_MasterRepresentation) { set_attribute_value(0, (v1_Curve3D));set_attribute_value(1, cast_vector(v2_AssociatedGeometry));set_attribute_value(2, (enumeration_reference(&::Ifc4x3::IfcPreferredSurfaceCurveRepresentation::Class(),(size_t)v3_MasterRepresentation)));; return *this; } // Function implementations for IfcSurfaceCurveSweptAreaSolid -::Ifc4x3::IfcSurface Ifc4x3::IfcSurfaceCurveSweptAreaSolid::ReferenceSurface() const { return ((express::Base)(get_attribute_value(5))).as<::Ifc4x3::IfcSurface>(); } +::Ifc4x3::IfcSurface Ifc4x3::IfcSurfaceCurveSweptAreaSolid::ReferenceSurface() const { return ((express::base)(get_attribute_value(5))).as<::Ifc4x3::IfcSurface>(); } void Ifc4x3::IfcSurfaceCurveSweptAreaSolid::setReferenceSurface(const ::Ifc4x3::IfcSurface& v) { set_attribute_value(5, v);if constexpr (false)unset_attribute_value(5); } @@ -15430,7 +15430,7 @@ const ifcopenshell::entity& Ifc4x3::IfcSurfaceFeature::Class() { return *((ifcop Ifc4x3::IfcSurfaceFeature Ifc4x3::IfcSurfaceFeature::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, ::Ifc4x3::IfcObjectPlacement v6_ObjectPlacement, ::Ifc4x3::IfcProductRepresentation v7_Representation, std::optional< std::string > v8_Tag, std::optional< ::Ifc4x3::IfcSurfaceFeatureTypeEnum::Value > v9_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); }set_attribute_value(5, (v6_ObjectPlacement));set_attribute_value(6, (v7_Representation)); if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_PredefinedType) {set_attribute_value(8, (enumeration_reference(&::Ifc4x3::IfcSurfaceFeatureTypeEnum::Class(),(size_t)*v9_PredefinedType))); }; return *this; } // Function implementations for IfcSurfaceOfLinearExtrusion -::Ifc4x3::IfcDirection Ifc4x3::IfcSurfaceOfLinearExtrusion::ExtrudedDirection() const { return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3::IfcDirection>(); } +::Ifc4x3::IfcDirection Ifc4x3::IfcSurfaceOfLinearExtrusion::ExtrudedDirection() const { return ((express::base)(get_attribute_value(2))).as<::Ifc4x3::IfcDirection>(); } void Ifc4x3::IfcSurfaceOfLinearExtrusion::setExtrudedDirection(const ::Ifc4x3::IfcDirection& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } double Ifc4x3::IfcSurfaceOfLinearExtrusion::Depth() const { double v = get_attribute_value(3); return v; } void Ifc4x3::IfcSurfaceOfLinearExtrusion::setDepth(const double& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } @@ -15440,7 +15440,7 @@ const ifcopenshell::entity& Ifc4x3::IfcSurfaceOfLinearExtrusion::Class() { retur Ifc4x3::IfcSurfaceOfLinearExtrusion Ifc4x3::IfcSurfaceOfLinearExtrusion::initialize(::Ifc4x3::IfcProfileDef v1_SweptCurve, ::Ifc4x3::IfcAxis2Placement3D v2_Position, ::Ifc4x3::IfcDirection v3_ExtrudedDirection, double v4_Depth) { set_attribute_value(0, (v1_SweptCurve));set_attribute_value(1, (v2_Position));set_attribute_value(2, (v3_ExtrudedDirection));set_attribute_value(3, (v4_Depth));; return *this; } // Function implementations for IfcSurfaceOfRevolution -::Ifc4x3::IfcAxis1Placement Ifc4x3::IfcSurfaceOfRevolution::AxisPosition() const { return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3::IfcAxis1Placement>(); } +::Ifc4x3::IfcAxis1Placement Ifc4x3::IfcSurfaceOfRevolution::AxisPosition() const { return ((express::base)(get_attribute_value(2))).as<::Ifc4x3::IfcAxis1Placement>(); } void Ifc4x3::IfcSurfaceOfRevolution::setAxisPosition(const ::Ifc4x3::IfcAxis1Placement& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } @@ -15462,21 +15462,21 @@ Ifc4x3::IfcSurfaceReinforcementArea Ifc4x3::IfcSurfaceReinforcementArea::initial // Function implementations for IfcSurfaceStyle ::Ifc4x3::IfcSurfaceSide::Value Ifc4x3::IfcSurfaceStyle::Side() const { return ::Ifc4x3::IfcSurfaceSide::FromString(get_attribute_value(1)); } void Ifc4x3::IfcSurfaceStyle::setSide(const ::Ifc4x3::IfcSurfaceSide::Value& v) { set_attribute_value(1, enumeration_reference(&::Ifc4x3::IfcSurfaceSide::Class(), (size_t) v));if constexpr (false)unset_attribute_value(1); } -std::vector< ::Ifc4x3::IfcSurfaceStyleElementSelect > Ifc4x3::IfcSurfaceStyle::Styles() const { std::vector es = get_attribute_value(2); return cast_vector<::Ifc4x3::IfcSurfaceStyleElementSelect>(es); } -void Ifc4x3::IfcSurfaceStyle::setStyles(const std::vector< ::Ifc4x3::IfcSurfaceStyleElementSelect >& v) { set_attribute_value(2, cast_vector(v));if constexpr (false)unset_attribute_value(2); } +std::vector< ::Ifc4x3::IfcSurfaceStyleElementSelect > Ifc4x3::IfcSurfaceStyle::Styles() const { std::vector es = get_attribute_value(2); return cast_vector<::Ifc4x3::IfcSurfaceStyleElementSelect>(es); } +void Ifc4x3::IfcSurfaceStyle::setStyles(const std::vector< ::Ifc4x3::IfcSurfaceStyleElementSelect >& v) { set_attribute_value(2, cast_vector(v));if constexpr (false)unset_attribute_value(2); } const ifcopenshell::entity& Ifc4x3::IfcSurfaceStyle::Class() { return *((ifcopenshell::entity*)IFC4X3_types[1133]); } -Ifc4x3::IfcSurfaceStyle Ifc4x3::IfcSurfaceStyle::initialize(std::optional< std::string > v1_Name, ::Ifc4x3::IfcSurfaceSide::Value v2_Side, std::vector< ::Ifc4x3::IfcSurfaceStyleElementSelect > v3_Styles) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); }set_attribute_value(1, (enumeration_reference(&::Ifc4x3::IfcSurfaceSide::Class(),(size_t)v2_Side)));set_attribute_value(2, cast_vector(v3_Styles));; return *this; } +Ifc4x3::IfcSurfaceStyle Ifc4x3::IfcSurfaceStyle::initialize(std::optional< std::string > v1_Name, ::Ifc4x3::IfcSurfaceSide::Value v2_Side, std::vector< ::Ifc4x3::IfcSurfaceStyleElementSelect > v3_Styles) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); }set_attribute_value(1, (enumeration_reference(&::Ifc4x3::IfcSurfaceSide::Class(),(size_t)v2_Side)));set_attribute_value(2, cast_vector(v3_Styles));; return *this; } // Function implementations for IfcSurfaceStyleLighting -::Ifc4x3::IfcColourRgb Ifc4x3::IfcSurfaceStyleLighting::DiffuseTransmissionColour() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3::IfcColourRgb>(); } +::Ifc4x3::IfcColourRgb Ifc4x3::IfcSurfaceStyleLighting::DiffuseTransmissionColour() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3::IfcColourRgb>(); } void Ifc4x3::IfcSurfaceStyleLighting::setDiffuseTransmissionColour(const ::Ifc4x3::IfcColourRgb& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } -::Ifc4x3::IfcColourRgb Ifc4x3::IfcSurfaceStyleLighting::DiffuseReflectionColour() const { return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3::IfcColourRgb>(); } +::Ifc4x3::IfcColourRgb Ifc4x3::IfcSurfaceStyleLighting::DiffuseReflectionColour() const { return ((express::base)(get_attribute_value(1))).as<::Ifc4x3::IfcColourRgb>(); } void Ifc4x3::IfcSurfaceStyleLighting::setDiffuseReflectionColour(const ::Ifc4x3::IfcColourRgb& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } -::Ifc4x3::IfcColourRgb Ifc4x3::IfcSurfaceStyleLighting::TransmissionColour() const { return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3::IfcColourRgb>(); } +::Ifc4x3::IfcColourRgb Ifc4x3::IfcSurfaceStyleLighting::TransmissionColour() const { return ((express::base)(get_attribute_value(2))).as<::Ifc4x3::IfcColourRgb>(); } void Ifc4x3::IfcSurfaceStyleLighting::setTransmissionColour(const ::Ifc4x3::IfcColourRgb& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } -::Ifc4x3::IfcColourRgb Ifc4x3::IfcSurfaceStyleLighting::ReflectanceColour() const { return ((express::Base)(get_attribute_value(3))).as<::Ifc4x3::IfcColourRgb>(); } +::Ifc4x3::IfcColourRgb Ifc4x3::IfcSurfaceStyleLighting::ReflectanceColour() const { return ((express::base)(get_attribute_value(3))).as<::Ifc4x3::IfcColourRgb>(); } void Ifc4x3::IfcSurfaceStyleLighting::setReflectanceColour(const ::Ifc4x3::IfcColourRgb& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } @@ -15494,17 +15494,17 @@ const ifcopenshell::entity& Ifc4x3::IfcSurfaceStyleRefraction::Class() { return Ifc4x3::IfcSurfaceStyleRefraction Ifc4x3::IfcSurfaceStyleRefraction::initialize(std::optional< double > v1_RefractionIndex, std::optional< double > v2_DispersionFactor) { if (v1_RefractionIndex) {set_attribute_value(0, (*v1_RefractionIndex)); } if (v2_DispersionFactor) {set_attribute_value(1, (*v2_DispersionFactor)); }; return *this; } // Function implementations for IfcSurfaceStyleRendering -::Ifc4x3::IfcColourOrFactor Ifc4x3::IfcSurfaceStyleRendering::DiffuseColour() const { if(get_attribute_value(2).isNull()) { return ::Ifc4x3::IfcColourOrFactor{}; } return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3::IfcColourOrFactor>(); } +::Ifc4x3::IfcColourOrFactor Ifc4x3::IfcSurfaceStyleRendering::DiffuseColour() const { if(get_attribute_value(2).isNull()) { return ::Ifc4x3::IfcColourOrFactor{}; } return ((express::base)(get_attribute_value(2))).as<::Ifc4x3::IfcColourOrFactor>(); } void Ifc4x3::IfcSurfaceStyleRendering::setDiffuseColour(const ::Ifc4x3::IfcColourOrFactor& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } -::Ifc4x3::IfcColourOrFactor Ifc4x3::IfcSurfaceStyleRendering::TransmissionColour() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3::IfcColourOrFactor{}; } return ((express::Base)(get_attribute_value(3))).as<::Ifc4x3::IfcColourOrFactor>(); } +::Ifc4x3::IfcColourOrFactor Ifc4x3::IfcSurfaceStyleRendering::TransmissionColour() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3::IfcColourOrFactor{}; } return ((express::base)(get_attribute_value(3))).as<::Ifc4x3::IfcColourOrFactor>(); } void Ifc4x3::IfcSurfaceStyleRendering::setTransmissionColour(const ::Ifc4x3::IfcColourOrFactor& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } -::Ifc4x3::IfcColourOrFactor Ifc4x3::IfcSurfaceStyleRendering::DiffuseTransmissionColour() const { if(get_attribute_value(4).isNull()) { return ::Ifc4x3::IfcColourOrFactor{}; } return ((express::Base)(get_attribute_value(4))).as<::Ifc4x3::IfcColourOrFactor>(); } +::Ifc4x3::IfcColourOrFactor Ifc4x3::IfcSurfaceStyleRendering::DiffuseTransmissionColour() const { if(get_attribute_value(4).isNull()) { return ::Ifc4x3::IfcColourOrFactor{}; } return ((express::base)(get_attribute_value(4))).as<::Ifc4x3::IfcColourOrFactor>(); } void Ifc4x3::IfcSurfaceStyleRendering::setDiffuseTransmissionColour(const ::Ifc4x3::IfcColourOrFactor& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } -::Ifc4x3::IfcColourOrFactor Ifc4x3::IfcSurfaceStyleRendering::ReflectionColour() const { if(get_attribute_value(5).isNull()) { return ::Ifc4x3::IfcColourOrFactor{}; } return ((express::Base)(get_attribute_value(5))).as<::Ifc4x3::IfcColourOrFactor>(); } +::Ifc4x3::IfcColourOrFactor Ifc4x3::IfcSurfaceStyleRendering::ReflectionColour() const { if(get_attribute_value(5).isNull()) { return ::Ifc4x3::IfcColourOrFactor{}; } return ((express::base)(get_attribute_value(5))).as<::Ifc4x3::IfcColourOrFactor>(); } void Ifc4x3::IfcSurfaceStyleRendering::setReflectionColour(const ::Ifc4x3::IfcColourOrFactor& v) { set_attribute_value(5, v);if constexpr (false)unset_attribute_value(5); } -::Ifc4x3::IfcColourOrFactor Ifc4x3::IfcSurfaceStyleRendering::SpecularColour() const { if(get_attribute_value(6).isNull()) { return ::Ifc4x3::IfcColourOrFactor{}; } return ((express::Base)(get_attribute_value(6))).as<::Ifc4x3::IfcColourOrFactor>(); } +::Ifc4x3::IfcColourOrFactor Ifc4x3::IfcSurfaceStyleRendering::SpecularColour() const { if(get_attribute_value(6).isNull()) { return ::Ifc4x3::IfcColourOrFactor{}; } return ((express::base)(get_attribute_value(6))).as<::Ifc4x3::IfcColourOrFactor>(); } void Ifc4x3::IfcSurfaceStyleRendering::setSpecularColour(const ::Ifc4x3::IfcColourOrFactor& v) { set_attribute_value(6, v);if constexpr (false)unset_attribute_value(6); } -::Ifc4x3::IfcSpecularHighlightSelect Ifc4x3::IfcSurfaceStyleRendering::SpecularHighlight() const { if(get_attribute_value(7).isNull()) { return ::Ifc4x3::IfcSpecularHighlightSelect{}; } return ((express::Base)(get_attribute_value(7))).as<::Ifc4x3::IfcSpecularHighlightSelect>(); } +::Ifc4x3::IfcSpecularHighlightSelect Ifc4x3::IfcSurfaceStyleRendering::SpecularHighlight() const { if(get_attribute_value(7).isNull()) { return ::Ifc4x3::IfcSpecularHighlightSelect{}; } return ((express::base)(get_attribute_value(7))).as<::Ifc4x3::IfcSpecularHighlightSelect>(); } void Ifc4x3::IfcSurfaceStyleRendering::setSpecularHighlight(const ::Ifc4x3::IfcSpecularHighlightSelect& v) { set_attribute_value(7, v);if constexpr (false)unset_attribute_value(7); } ::Ifc4x3::IfcReflectanceMethodEnum::Value Ifc4x3::IfcSurfaceStyleRendering::ReflectanceMethod() const { return ::Ifc4x3::IfcReflectanceMethodEnum::FromString(get_attribute_value(8)); } void Ifc4x3::IfcSurfaceStyleRendering::setReflectanceMethod(const ::Ifc4x3::IfcReflectanceMethodEnum::Value& v) { set_attribute_value(8, enumeration_reference(&::Ifc4x3::IfcReflectanceMethodEnum::Class(), (size_t) v));if constexpr (false)unset_attribute_value(8); } @@ -15514,7 +15514,7 @@ const ifcopenshell::entity& Ifc4x3::IfcSurfaceStyleRendering::Class() { return * Ifc4x3::IfcSurfaceStyleRendering Ifc4x3::IfcSurfaceStyleRendering::initialize(::Ifc4x3::IfcColourRgb v1_SurfaceColour, std::optional< double > v2_Transparency, ::Ifc4x3::IfcColourOrFactor v3_DiffuseColour, ::Ifc4x3::IfcColourOrFactor v4_TransmissionColour, ::Ifc4x3::IfcColourOrFactor v5_DiffuseTransmissionColour, ::Ifc4x3::IfcColourOrFactor v6_ReflectionColour, ::Ifc4x3::IfcColourOrFactor v7_SpecularColour, ::Ifc4x3::IfcSpecularHighlightSelect v8_SpecularHighlight, ::Ifc4x3::IfcReflectanceMethodEnum::Value v9_ReflectanceMethod) { set_attribute_value(0, (v1_SurfaceColour)); if (v2_Transparency) {set_attribute_value(1, (*v2_Transparency)); }set_attribute_value(2, (v3_DiffuseColour));set_attribute_value(3, (v4_TransmissionColour));set_attribute_value(4, (v5_DiffuseTransmissionColour));set_attribute_value(5, (v6_ReflectionColour));set_attribute_value(6, (v7_SpecularColour));set_attribute_value(7, (v8_SpecularHighlight));set_attribute_value(8, (enumeration_reference(&::Ifc4x3::IfcReflectanceMethodEnum::Class(),(size_t)v9_ReflectanceMethod)));; return *this; } // Function implementations for IfcSurfaceStyleShading -::Ifc4x3::IfcColourRgb Ifc4x3::IfcSurfaceStyleShading::SurfaceColour() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3::IfcColourRgb>(); } +::Ifc4x3::IfcColourRgb Ifc4x3::IfcSurfaceStyleShading::SurfaceColour() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3::IfcColourRgb>(); } void Ifc4x3::IfcSurfaceStyleShading::setSurfaceColour(const ::Ifc4x3::IfcColourRgb& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } std::optional< double > Ifc4x3::IfcSurfaceStyleShading::Transparency() const { if(get_attribute_value(1).isNull()) { return std::nullopt; } double v = get_attribute_value(1); return v; } void Ifc4x3::IfcSurfaceStyleShading::setTransparency(const std::optional< double >& v) { if (v) {set_attribute_value(1, *v);} else {unset_attribute_value(1);} } @@ -15524,12 +15524,12 @@ const ifcopenshell::entity& Ifc4x3::IfcSurfaceStyleShading::Class() { return *(( Ifc4x3::IfcSurfaceStyleShading Ifc4x3::IfcSurfaceStyleShading::initialize(::Ifc4x3::IfcColourRgb v1_SurfaceColour, std::optional< double > v2_Transparency) { set_attribute_value(0, (v1_SurfaceColour)); if (v2_Transparency) {set_attribute_value(1, (*v2_Transparency)); }; return *this; } // Function implementations for IfcSurfaceStyleWithTextures -std::vector< ::Ifc4x3::IfcSurfaceTexture > Ifc4x3::IfcSurfaceStyleWithTextures::Textures() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3::IfcSurfaceTexture>(es); } -void Ifc4x3::IfcSurfaceStyleWithTextures::setTextures(const std::vector< ::Ifc4x3::IfcSurfaceTexture >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } +std::vector< ::Ifc4x3::IfcSurfaceTexture > Ifc4x3::IfcSurfaceStyleWithTextures::Textures() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3::IfcSurfaceTexture>(es); } +void Ifc4x3::IfcSurfaceStyleWithTextures::setTextures(const std::vector< ::Ifc4x3::IfcSurfaceTexture >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } const ifcopenshell::entity& Ifc4x3::IfcSurfaceStyleWithTextures::Class() { return *((ifcopenshell::entity*)IFC4X3_types[1139]); } -Ifc4x3::IfcSurfaceStyleWithTextures Ifc4x3::IfcSurfaceStyleWithTextures::initialize(std::vector< ::Ifc4x3::IfcSurfaceTexture > v1_Textures) { set_attribute_value(0, cast_vector(v1_Textures));; return *this; } +Ifc4x3::IfcSurfaceStyleWithTextures Ifc4x3::IfcSurfaceStyleWithTextures::initialize(std::vector< ::Ifc4x3::IfcSurfaceTexture > v1_Textures) { set_attribute_value(0, cast_vector(v1_Textures));; return *this; } // Function implementations for IfcSurfaceTexture bool Ifc4x3::IfcSurfaceTexture::RepeatS() const { bool v = get_attribute_value(0); return v; } @@ -15538,7 +15538,7 @@ bool Ifc4x3::IfcSurfaceTexture::RepeatT() const { bool v = get_attribute_value( void Ifc4x3::IfcSurfaceTexture::setRepeatT(const bool& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } std::optional< std::string > Ifc4x3::IfcSurfaceTexture::Mode() const { if(get_attribute_value(2).isNull()) { return std::nullopt; } std::string v = get_attribute_value(2); return v; } void Ifc4x3::IfcSurfaceTexture::setMode(const std::optional< std::string >& v) { if (v) {set_attribute_value(2, *v);} else {unset_attribute_value(2);} } -::Ifc4x3::IfcCartesianTransformationOperator2D Ifc4x3::IfcSurfaceTexture::TextureTransform() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3::IfcCartesianTransformationOperator2D{}; } return ((express::Base)(get_attribute_value(3))).as<::Ifc4x3::IfcCartesianTransformationOperator2D>(); } +::Ifc4x3::IfcCartesianTransformationOperator2D Ifc4x3::IfcSurfaceTexture::TextureTransform() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3::IfcCartesianTransformationOperator2D{}; } return ((express::base)(get_attribute_value(3))).as<::Ifc4x3::IfcCartesianTransformationOperator2D>(); } void Ifc4x3::IfcSurfaceTexture::setTextureTransform(const ::Ifc4x3::IfcCartesianTransformationOperator2D& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } std::optional< std::vector< std::string > /*[1:?]*/ > Ifc4x3::IfcSurfaceTexture::Parameter() const { if(get_attribute_value(4).isNull()) { return std::nullopt; } std::vector< std::string > /*[1:?]*/ v = get_attribute_value(4); return v; } void Ifc4x3::IfcSurfaceTexture::setParameter(const std::optional< std::vector< std::string > /*[1:?]*/ >& v) { if (v) {set_attribute_value(4, *v);} else {unset_attribute_value(4);} } @@ -15550,9 +15550,9 @@ const ifcopenshell::entity& Ifc4x3::IfcSurfaceTexture::Class() { return *((ifcop Ifc4x3::IfcSurfaceTexture Ifc4x3::IfcSurfaceTexture::initialize(bool v1_RepeatS, bool v2_RepeatT, std::optional< std::string > v3_Mode, ::Ifc4x3::IfcCartesianTransformationOperator2D v4_TextureTransform, std::optional< std::vector< std::string > /*[1:?]*/ > v5_Parameter) { set_attribute_value(0, (v1_RepeatS));set_attribute_value(1, (v2_RepeatT)); if (v3_Mode) {set_attribute_value(2, (*v3_Mode)); }set_attribute_value(3, (v4_TextureTransform)); if (v5_Parameter) {set_attribute_value(4, (*v5_Parameter)); }; return *this; } // Function implementations for IfcSweptAreaSolid -::Ifc4x3::IfcProfileDef Ifc4x3::IfcSweptAreaSolid::SweptArea() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3::IfcProfileDef>(); } +::Ifc4x3::IfcProfileDef Ifc4x3::IfcSweptAreaSolid::SweptArea() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3::IfcProfileDef>(); } void Ifc4x3::IfcSweptAreaSolid::setSweptArea(const ::Ifc4x3::IfcProfileDef& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } -::Ifc4x3::IfcAxis2Placement3D Ifc4x3::IfcSweptAreaSolid::Position() const { if(get_attribute_value(1).isNull()) { return ::Ifc4x3::IfcAxis2Placement3D{}; } return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3::IfcAxis2Placement3D>(); } +::Ifc4x3::IfcAxis2Placement3D Ifc4x3::IfcSweptAreaSolid::Position() const { if(get_attribute_value(1).isNull()) { return ::Ifc4x3::IfcAxis2Placement3D{}; } return ((express::base)(get_attribute_value(1))).as<::Ifc4x3::IfcAxis2Placement3D>(); } void Ifc4x3::IfcSweptAreaSolid::setPosition(const ::Ifc4x3::IfcAxis2Placement3D& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } @@ -15560,7 +15560,7 @@ const ifcopenshell::entity& Ifc4x3::IfcSweptAreaSolid::Class() { return *((ifcop Ifc4x3::IfcSweptAreaSolid Ifc4x3::IfcSweptAreaSolid::initialize(::Ifc4x3::IfcProfileDef v1_SweptArea, ::Ifc4x3::IfcAxis2Placement3D v2_Position) { set_attribute_value(0, (v1_SweptArea));set_attribute_value(1, (v2_Position));; return *this; } // Function implementations for IfcSweptDiskSolid -::Ifc4x3::IfcCurve Ifc4x3::IfcSweptDiskSolid::Directrix() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3::IfcCurve>(); } +::Ifc4x3::IfcCurve Ifc4x3::IfcSweptDiskSolid::Directrix() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3::IfcCurve>(); } void Ifc4x3::IfcSweptDiskSolid::setDirectrix(const ::Ifc4x3::IfcCurve& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } double Ifc4x3::IfcSweptDiskSolid::Radius() const { double v = get_attribute_value(1); return v; } void Ifc4x3::IfcSweptDiskSolid::setRadius(const double& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } @@ -15584,9 +15584,9 @@ const ifcopenshell::entity& Ifc4x3::IfcSweptDiskSolidPolygonal::Class() { return Ifc4x3::IfcSweptDiskSolidPolygonal Ifc4x3::IfcSweptDiskSolidPolygonal::initialize(::Ifc4x3::IfcCurve v1_Directrix, double v2_Radius, std::optional< double > v3_InnerRadius, std::optional< double > v4_StartParam, std::optional< double > v5_EndParam, std::optional< double > v6_FilletRadius) { set_attribute_value(0, (v1_Directrix));set_attribute_value(1, (v2_Radius)); if (v3_InnerRadius) {set_attribute_value(2, (*v3_InnerRadius)); } if (v4_StartParam) {set_attribute_value(3, (*v4_StartParam)); } if (v5_EndParam) {set_attribute_value(4, (*v5_EndParam)); } if (v6_FilletRadius) {set_attribute_value(5, (*v6_FilletRadius)); }; return *this; } // Function implementations for IfcSweptSurface -::Ifc4x3::IfcProfileDef Ifc4x3::IfcSweptSurface::SweptCurve() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3::IfcProfileDef>(); } +::Ifc4x3::IfcProfileDef Ifc4x3::IfcSweptSurface::SweptCurve() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3::IfcProfileDef>(); } void Ifc4x3::IfcSweptSurface::setSweptCurve(const ::Ifc4x3::IfcProfileDef& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } -::Ifc4x3::IfcAxis2Placement3D Ifc4x3::IfcSweptSurface::Position() const { if(get_attribute_value(1).isNull()) { return ::Ifc4x3::IfcAxis2Placement3D{}; } return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3::IfcAxis2Placement3D>(); } +::Ifc4x3::IfcAxis2Placement3D Ifc4x3::IfcSweptSurface::Position() const { if(get_attribute_value(1).isNull()) { return ::Ifc4x3::IfcAxis2Placement3D{}; } return ((express::base)(get_attribute_value(1))).as<::Ifc4x3::IfcAxis2Placement3D>(); } void Ifc4x3::IfcSweptSurface::setPosition(const ::Ifc4x3::IfcAxis2Placement3D& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } @@ -15607,7 +15607,7 @@ void Ifc4x3::IfcSwitchingDeviceType::setPredefinedType(const ::Ifc4x3::IfcSwitch const ifcopenshell::entity& Ifc4x3::IfcSwitchingDeviceType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[1146]); } -Ifc4x3::IfcSwitchingDeviceType Ifc4x3::IfcSwitchingDeviceType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcSwitchingDeviceTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcSwitchingDeviceTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3::IfcSwitchingDeviceType Ifc4x3::IfcSwitchingDeviceType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcSwitchingDeviceTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcSwitchingDeviceTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcSystem @@ -15631,7 +15631,7 @@ void Ifc4x3::IfcSystemFurnitureElementType::setPredefinedType(const std::optiona const ifcopenshell::entity& Ifc4x3::IfcSystemFurnitureElementType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[1150]); } -Ifc4x3::IfcSystemFurnitureElementType Ifc4x3::IfcSystemFurnitureElementType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, std::optional< ::Ifc4x3::IfcSystemFurnitureElementTypeEnum::Value > v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); } if (v10_PredefinedType) {set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcSystemFurnitureElementTypeEnum::Class(),(size_t)*v10_PredefinedType))); }; return *this; } +Ifc4x3::IfcSystemFurnitureElementType Ifc4x3::IfcSystemFurnitureElementType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, std::optional< ::Ifc4x3::IfcSystemFurnitureElementTypeEnum::Value > v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); } if (v10_PredefinedType) {set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcSystemFurnitureElementTypeEnum::Class(),(size_t)*v10_PredefinedType))); }; return *this; } // Function implementations for IfcTShapeProfileDef double Ifc4x3::IfcTShapeProfileDef::Depth() const { double v = get_attribute_value(3); return v; } @@ -15660,14 +15660,14 @@ Ifc4x3::IfcTShapeProfileDef Ifc4x3::IfcTShapeProfileDef::initialize(::Ifc4x3::If // Function implementations for IfcTable std::optional< std::string > Ifc4x3::IfcTable::Name() const { if(get_attribute_value(0).isNull()) { return std::nullopt; } std::string v = get_attribute_value(0); return v; } void Ifc4x3::IfcTable::setName(const std::optional< std::string >& v) { if (v) {set_attribute_value(0, *v);} else {unset_attribute_value(0);} } -std::optional< std::vector< ::Ifc4x3::IfcTableRow > > Ifc4x3::IfcTable::Rows() const { if(get_attribute_value(1).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3::IfcTableRow>(es); } -void Ifc4x3::IfcTable::setRows(const std::optional< std::vector< ::Ifc4x3::IfcTableRow > >& v) { if (v) {set_attribute_value(1, cast_vector(*v));} else {unset_attribute_value(1);} } -std::optional< std::vector< ::Ifc4x3::IfcTableColumn > > Ifc4x3::IfcTable::Columns() const { if(get_attribute_value(2).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(2); return cast_vector<::Ifc4x3::IfcTableColumn>(es); } -void Ifc4x3::IfcTable::setColumns(const std::optional< std::vector< ::Ifc4x3::IfcTableColumn > >& v) { if (v) {set_attribute_value(2, cast_vector(*v));} else {unset_attribute_value(2);} } +std::optional< std::vector< ::Ifc4x3::IfcTableRow > > Ifc4x3::IfcTable::Rows() const { if(get_attribute_value(1).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3::IfcTableRow>(es); } +void Ifc4x3::IfcTable::setRows(const std::optional< std::vector< ::Ifc4x3::IfcTableRow > >& v) { if (v) {set_attribute_value(1, cast_vector(*v));} else {unset_attribute_value(1);} } +std::optional< std::vector< ::Ifc4x3::IfcTableColumn > > Ifc4x3::IfcTable::Columns() const { if(get_attribute_value(2).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(2); return cast_vector<::Ifc4x3::IfcTableColumn>(es); } +void Ifc4x3::IfcTable::setColumns(const std::optional< std::vector< ::Ifc4x3::IfcTableColumn > >& v) { if (v) {set_attribute_value(2, cast_vector(*v));} else {unset_attribute_value(2);} } const ifcopenshell::entity& Ifc4x3::IfcTable::Class() { return *((ifcopenshell::entity*)IFC4X3_types[1152]); } -Ifc4x3::IfcTable Ifc4x3::IfcTable::initialize(std::optional< std::string > v1_Name, std::optional< std::vector< ::Ifc4x3::IfcTableRow > > v2_Rows, std::optional< std::vector< ::Ifc4x3::IfcTableColumn > > v3_Columns) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); } if (v2_Rows) {set_attribute_value(1, cast_vector(*v2_Rows)); } if (v3_Columns) {set_attribute_value(2, cast_vector(*v3_Columns)); }; return *this; } +Ifc4x3::IfcTable Ifc4x3::IfcTable::initialize(std::optional< std::string > v1_Name, std::optional< std::vector< ::Ifc4x3::IfcTableRow > > v2_Rows, std::optional< std::vector< ::Ifc4x3::IfcTableColumn > > v3_Columns) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); } if (v2_Rows) {set_attribute_value(1, cast_vector(*v2_Rows)); } if (v3_Columns) {set_attribute_value(2, cast_vector(*v3_Columns)); }; return *this; } // Function implementations for IfcTableColumn std::optional< std::string > Ifc4x3::IfcTableColumn::Identifier() const { if(get_attribute_value(0).isNull()) { return std::nullopt; } std::string v = get_attribute_value(0); return v; } @@ -15676,9 +15676,9 @@ std::optional< std::string > Ifc4x3::IfcTableColumn::Name() const { if(get_attri void Ifc4x3::IfcTableColumn::setName(const std::optional< std::string >& v) { if (v) {set_attribute_value(1, *v);} else {unset_attribute_value(1);} } std::optional< std::string > Ifc4x3::IfcTableColumn::Description() const { if(get_attribute_value(2).isNull()) { return std::nullopt; } std::string v = get_attribute_value(2); return v; } void Ifc4x3::IfcTableColumn::setDescription(const std::optional< std::string >& v) { if (v) {set_attribute_value(2, *v);} else {unset_attribute_value(2);} } -::Ifc4x3::IfcUnit Ifc4x3::IfcTableColumn::Unit() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3::IfcUnit{}; } return ((express::Base)(get_attribute_value(3))).as<::Ifc4x3::IfcUnit>(); } +::Ifc4x3::IfcUnit Ifc4x3::IfcTableColumn::Unit() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3::IfcUnit{}; } return ((express::base)(get_attribute_value(3))).as<::Ifc4x3::IfcUnit>(); } void Ifc4x3::IfcTableColumn::setUnit(const ::Ifc4x3::IfcUnit& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } -::Ifc4x3::IfcReference Ifc4x3::IfcTableColumn::ReferencePath() const { if(get_attribute_value(4).isNull()) { return ::Ifc4x3::IfcReference{}; } return ((express::Base)(get_attribute_value(4))).as<::Ifc4x3::IfcReference>(); } +::Ifc4x3::IfcReference Ifc4x3::IfcTableColumn::ReferencePath() const { if(get_attribute_value(4).isNull()) { return ::Ifc4x3::IfcReference{}; } return ((express::base)(get_attribute_value(4))).as<::Ifc4x3::IfcReference>(); } void Ifc4x3::IfcTableColumn::setReferencePath(const ::Ifc4x3::IfcReference& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } @@ -15686,14 +15686,14 @@ const ifcopenshell::entity& Ifc4x3::IfcTableColumn::Class() { return *((ifcopens Ifc4x3::IfcTableColumn Ifc4x3::IfcTableColumn::initialize(std::optional< std::string > v1_Identifier, std::optional< std::string > v2_Name, std::optional< std::string > v3_Description, ::Ifc4x3::IfcUnit v4_Unit, ::Ifc4x3::IfcReference v5_ReferencePath) { if (v1_Identifier) {set_attribute_value(0, (*v1_Identifier)); } if (v2_Name) {set_attribute_value(1, (*v2_Name)); } if (v3_Description) {set_attribute_value(2, (*v3_Description)); }set_attribute_value(3, (v4_Unit));set_attribute_value(4, (v5_ReferencePath));; return *this; } // Function implementations for IfcTableRow -std::optional< std::vector< ::Ifc4x3::IfcValue > > Ifc4x3::IfcTableRow::RowCells() const { if(get_attribute_value(0).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3::IfcValue>(es); } -void Ifc4x3::IfcTableRow::setRowCells(const std::optional< std::vector< ::Ifc4x3::IfcValue > >& v) { if (v) {set_attribute_value(0, cast_vector(*v));} else {unset_attribute_value(0);} } +std::optional< std::vector< ::Ifc4x3::IfcValue > > Ifc4x3::IfcTableRow::RowCells() const { if(get_attribute_value(0).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3::IfcValue>(es); } +void Ifc4x3::IfcTableRow::setRowCells(const std::optional< std::vector< ::Ifc4x3::IfcValue > >& v) { if (v) {set_attribute_value(0, cast_vector(*v));} else {unset_attribute_value(0);} } std::optional< bool > Ifc4x3::IfcTableRow::IsHeading() const { if(get_attribute_value(1).isNull()) { return std::nullopt; } bool v = get_attribute_value(1); return v; } void Ifc4x3::IfcTableRow::setIsHeading(const std::optional< bool >& v) { if (v) {set_attribute_value(1, *v);} else {unset_attribute_value(1);} } const ifcopenshell::entity& Ifc4x3::IfcTableRow::Class() { return *((ifcopenshell::entity*)IFC4X3_types[1154]); } -Ifc4x3::IfcTableRow Ifc4x3::IfcTableRow::initialize(std::optional< std::vector< ::Ifc4x3::IfcValue > > v1_RowCells, std::optional< bool > v2_IsHeading) { if (v1_RowCells) {set_attribute_value(0, cast_vector(*v1_RowCells)); } if (v2_IsHeading) {set_attribute_value(1, (*v2_IsHeading)); }; return *this; } +Ifc4x3::IfcTableRow Ifc4x3::IfcTableRow::initialize(std::optional< std::vector< ::Ifc4x3::IfcValue > > v1_RowCells, std::optional< bool > v2_IsHeading) { if (v1_RowCells) {set_attribute_value(0, cast_vector(*v1_RowCells)); } if (v2_IsHeading) {set_attribute_value(1, (*v2_IsHeading)); }; return *this; } // Function implementations for IfcTank std::optional< ::Ifc4x3::IfcTankTypeEnum::Value > Ifc4x3::IfcTank::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3::IfcTankTypeEnum::FromString(get_attribute_value(8)); } @@ -15709,7 +15709,7 @@ void Ifc4x3::IfcTankType::setPredefinedType(const ::Ifc4x3::IfcTankTypeEnum::Val const ifcopenshell::entity& Ifc4x3::IfcTankType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[1156]); } -Ifc4x3::IfcTankType Ifc4x3::IfcTankType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcTankTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcTankTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3::IfcTankType Ifc4x3::IfcTankType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcTankTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcTankTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcTask std::optional< std::string > Ifc4x3::IfcTask::Status() const { if(get_attribute_value(7).isNull()) { return std::nullopt; } std::string v = get_attribute_value(7); return v; } @@ -15720,7 +15720,7 @@ bool Ifc4x3::IfcTask::IsMilestone() const { bool v = get_attribute_value(9); re void Ifc4x3::IfcTask::setIsMilestone(const bool& v) { set_attribute_value(9, v);if constexpr (false)unset_attribute_value(9); } std::optional< int64_t > Ifc4x3::IfcTask::Priority() const { if(get_attribute_value(10).isNull()) { return std::nullopt; } int64_t v = get_attribute_value(10); return v; } void Ifc4x3::IfcTask::setPriority(const std::optional< int64_t >& v) { if (v) {set_attribute_value(10, *v);} else {unset_attribute_value(10);} } -::Ifc4x3::IfcTaskTime Ifc4x3::IfcTask::TaskTime() const { if(get_attribute_value(11).isNull()) { return ::Ifc4x3::IfcTaskTime{}; } return ((express::Base)(get_attribute_value(11))).as<::Ifc4x3::IfcTaskTime>(); } +::Ifc4x3::IfcTaskTime Ifc4x3::IfcTask::TaskTime() const { if(get_attribute_value(11).isNull()) { return ::Ifc4x3::IfcTaskTime{}; } return ((express::base)(get_attribute_value(11))).as<::Ifc4x3::IfcTaskTime>(); } void Ifc4x3::IfcTask::setTaskTime(const ::Ifc4x3::IfcTaskTime& v) { set_attribute_value(11, v);if constexpr (false)unset_attribute_value(11); } std::optional< ::Ifc4x3::IfcTaskTypeEnum::Value > Ifc4x3::IfcTask::PredefinedType() const { if(get_attribute_value(12).isNull()) { return std::nullopt; } return ::Ifc4x3::IfcTaskTypeEnum::FromString(get_attribute_value(12)); } void Ifc4x3::IfcTask::setPredefinedType(const std::optional< ::Ifc4x3::IfcTaskTypeEnum::Value >& v) { if (v) {set_attribute_value(12, enumeration_reference(&::Ifc4x3::IfcTaskTypeEnum::Class(), (size_t) *v));} else {unset_attribute_value(12);} } @@ -15770,7 +15770,7 @@ const ifcopenshell::entity& Ifc4x3::IfcTaskTime::Class() { return *((ifcopenshel Ifc4x3::IfcTaskTime Ifc4x3::IfcTaskTime::initialize(std::optional< std::string > v1_Name, std::optional< ::Ifc4x3::IfcDataOriginEnum::Value > v2_DataOrigin, std::optional< std::string > v3_UserDefinedDataOrigin, std::optional< ::Ifc4x3::IfcTaskDurationEnum::Value > v4_DurationType, std::optional< std::string > v5_ScheduleDuration, std::optional< std::string > v6_ScheduleStart, std::optional< std::string > v7_ScheduleFinish, std::optional< std::string > v8_EarlyStart, std::optional< std::string > v9_EarlyFinish, std::optional< std::string > v10_LateStart, std::optional< std::string > v11_LateFinish, std::optional< std::string > v12_FreeFloat, std::optional< std::string > v13_TotalFloat, std::optional< bool > v14_IsCritical, std::optional< std::string > v15_StatusTime, std::optional< std::string > v16_ActualDuration, std::optional< std::string > v17_ActualStart, std::optional< std::string > v18_ActualFinish, std::optional< std::string > v19_RemainingTime, std::optional< double > v20_Completion) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); } if (v2_DataOrigin) {set_attribute_value(1, (enumeration_reference(&::Ifc4x3::IfcDataOriginEnum::Class(),(size_t)*v2_DataOrigin))); } if (v3_UserDefinedDataOrigin) {set_attribute_value(2, (*v3_UserDefinedDataOrigin)); } if (v4_DurationType) {set_attribute_value(3, (enumeration_reference(&::Ifc4x3::IfcTaskDurationEnum::Class(),(size_t)*v4_DurationType))); } if (v5_ScheduleDuration) {set_attribute_value(4, (*v5_ScheduleDuration)); } if (v6_ScheduleStart) {set_attribute_value(5, (*v6_ScheduleStart)); } if (v7_ScheduleFinish) {set_attribute_value(6, (*v7_ScheduleFinish)); } if (v8_EarlyStart) {set_attribute_value(7, (*v8_EarlyStart)); } if (v9_EarlyFinish) {set_attribute_value(8, (*v9_EarlyFinish)); } if (v10_LateStart) {set_attribute_value(9, (*v10_LateStart)); } if (v11_LateFinish) {set_attribute_value(10, (*v11_LateFinish)); } if (v12_FreeFloat) {set_attribute_value(11, (*v12_FreeFloat)); } if (v13_TotalFloat) {set_attribute_value(12, (*v13_TotalFloat)); } if (v14_IsCritical) {set_attribute_value(13, (*v14_IsCritical)); } if (v15_StatusTime) {set_attribute_value(14, (*v15_StatusTime)); } if (v16_ActualDuration) {set_attribute_value(15, (*v16_ActualDuration)); } if (v17_ActualStart) {set_attribute_value(16, (*v17_ActualStart)); } if (v18_ActualFinish) {set_attribute_value(17, (*v18_ActualFinish)); } if (v19_RemainingTime) {set_attribute_value(18, (*v19_RemainingTime)); } if (v20_Completion) {set_attribute_value(19, (*v20_Completion)); }; return *this; } // Function implementations for IfcTaskTimeRecurring -::Ifc4x3::IfcRecurrencePattern Ifc4x3::IfcTaskTimeRecurring::Recurrence() const { return ((express::Base)(get_attribute_value(20))).as<::Ifc4x3::IfcRecurrencePattern>(); } +::Ifc4x3::IfcRecurrencePattern Ifc4x3::IfcTaskTimeRecurring::Recurrence() const { return ((express::base)(get_attribute_value(20))).as<::Ifc4x3::IfcRecurrencePattern>(); } void Ifc4x3::IfcTaskTimeRecurring::setRecurrence(const ::Ifc4x3::IfcRecurrencePattern& v) { set_attribute_value(20, v);if constexpr (false)unset_attribute_value(20); } @@ -15785,7 +15785,7 @@ void Ifc4x3::IfcTaskType::setWorkMethod(const std::optional< std::string >& v) { const ifcopenshell::entity& Ifc4x3::IfcTaskType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[1162]); } -Ifc4x3::IfcTaskType Ifc4x3::IfcTaskType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::string > v7_Identification, std::optional< std::string > v8_LongDescription, std::optional< std::string > v9_ProcessType, ::Ifc4x3::IfcTaskTypeEnum::Value v10_PredefinedType, std::optional< std::string > v11_WorkMethod) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_Identification) {set_attribute_value(6, (*v7_Identification)); } if (v8_LongDescription) {set_attribute_value(7, (*v8_LongDescription)); } if (v9_ProcessType) {set_attribute_value(8, (*v9_ProcessType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcTaskTypeEnum::Class(),(size_t)v10_PredefinedType))); if (v11_WorkMethod) {set_attribute_value(10, (*v11_WorkMethod)); }; return *this; } +Ifc4x3::IfcTaskType Ifc4x3::IfcTaskType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::string > v7_Identification, std::optional< std::string > v8_LongDescription, std::optional< std::string > v9_ProcessType, ::Ifc4x3::IfcTaskTypeEnum::Value v10_PredefinedType, std::optional< std::string > v11_WorkMethod) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_Identification) {set_attribute_value(6, (*v7_Identification)); } if (v8_LongDescription) {set_attribute_value(7, (*v8_LongDescription)); } if (v9_ProcessType) {set_attribute_value(8, (*v9_ProcessType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcTaskTypeEnum::Class(),(size_t)v10_PredefinedType))); if (v11_WorkMethod) {set_attribute_value(10, (*v11_WorkMethod)); }; return *this; } // Function implementations for IfcTelecomAddress std::optional< std::vector< std::string > /*[1:?]*/ > Ifc4x3::IfcTelecomAddress::TelephoneNumbers() const { if(get_attribute_value(3).isNull()) { return std::nullopt; } std::vector< std::string > /*[1:?]*/ v = get_attribute_value(3); return v; } @@ -15841,7 +15841,7 @@ void Ifc4x3::IfcTendonAnchorType::setPredefinedType(const ::Ifc4x3::IfcTendonAnc const ifcopenshell::entity& Ifc4x3::IfcTendonAnchorType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[1169]); } -Ifc4x3::IfcTendonAnchorType Ifc4x3::IfcTendonAnchorType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcTendonAnchorTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcTendonAnchorTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3::IfcTendonAnchorType Ifc4x3::IfcTendonAnchorType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcTendonAnchorTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcTendonAnchorTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcTendonConduit ::Ifc4x3::IfcTendonConduitTypeEnum::Value Ifc4x3::IfcTendonConduit::PredefinedType() const { return ::Ifc4x3::IfcTendonConduitTypeEnum::FromString(get_attribute_value(9)); } @@ -15857,7 +15857,7 @@ void Ifc4x3::IfcTendonConduitType::setPredefinedType(const ::Ifc4x3::IfcTendonCo const ifcopenshell::entity& Ifc4x3::IfcTendonConduitType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[1172]); } -Ifc4x3::IfcTendonConduitType Ifc4x3::IfcTendonConduitType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcTendonConduitTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcTendonConduitTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3::IfcTendonConduitType Ifc4x3::IfcTendonConduitType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcTendonConduitTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcTendonConduitTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcTendonType ::Ifc4x3::IfcTendonTypeEnum::Value Ifc4x3::IfcTendonType::PredefinedType() const { return ::Ifc4x3::IfcTendonTypeEnum::FromString(get_attribute_value(9)); } @@ -15871,10 +15871,10 @@ void Ifc4x3::IfcTendonType::setSheathDiameter(const std::optional< double >& v) const ifcopenshell::entity& Ifc4x3::IfcTendonType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[1174]); } -Ifc4x3::IfcTendonType Ifc4x3::IfcTendonType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcTendonTypeEnum::Value v10_PredefinedType, std::optional< double > v11_NominalDiameter, std::optional< double > v12_CrossSectionArea, std::optional< double > v13_SheathDiameter) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcTendonTypeEnum::Class(),(size_t)v10_PredefinedType))); if (v11_NominalDiameter) {set_attribute_value(10, (*v11_NominalDiameter)); } if (v12_CrossSectionArea) {set_attribute_value(11, (*v12_CrossSectionArea)); } if (v13_SheathDiameter) {set_attribute_value(12, (*v13_SheathDiameter)); }; return *this; } +Ifc4x3::IfcTendonType Ifc4x3::IfcTendonType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcTendonTypeEnum::Value v10_PredefinedType, std::optional< double > v11_NominalDiameter, std::optional< double > v12_CrossSectionArea, std::optional< double > v13_SheathDiameter) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcTendonTypeEnum::Class(),(size_t)v10_PredefinedType))); if (v11_NominalDiameter) {set_attribute_value(10, (*v11_NominalDiameter)); } if (v12_CrossSectionArea) {set_attribute_value(11, (*v12_CrossSectionArea)); } if (v13_SheathDiameter) {set_attribute_value(12, (*v13_SheathDiameter)); }; return *this; } // Function implementations for IfcTessellatedFaceSet -::Ifc4x3::IfcCartesianPointList3D Ifc4x3::IfcTessellatedFaceSet::Coordinates() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3::IfcCartesianPointList3D>(); } +::Ifc4x3::IfcCartesianPointList3D Ifc4x3::IfcTessellatedFaceSet::Coordinates() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3::IfcCartesianPointList3D>(); } void Ifc4x3::IfcTessellatedFaceSet::setCoordinates(const ::Ifc4x3::IfcCartesianPointList3D& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } std::optional< bool > Ifc4x3::IfcTessellatedFaceSet::Closed() const { if(get_attribute_value(1).isNull()) { return std::nullopt; } bool v = get_attribute_value(1); return v; } void Ifc4x3::IfcTessellatedFaceSet::setClosed(const std::optional< bool >& v) { if (v) {set_attribute_value(1, *v);} else {unset_attribute_value(1);} } @@ -15894,7 +15894,7 @@ Ifc4x3::IfcTessellatedItem Ifc4x3::IfcTessellatedItem::initialize() { ; return * // Function implementations for IfcTextLiteral std::string Ifc4x3::IfcTextLiteral::Literal() const { std::string v = get_attribute_value(0); return v; } void Ifc4x3::IfcTextLiteral::setLiteral(const std::string& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } -::Ifc4x3::IfcAxis2Placement Ifc4x3::IfcTextLiteral::Placement() const { return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3::IfcAxis2Placement>(); } +::Ifc4x3::IfcAxis2Placement Ifc4x3::IfcTextLiteral::Placement() const { return ((express::base)(get_attribute_value(1))).as<::Ifc4x3::IfcAxis2Placement>(); } void Ifc4x3::IfcTextLiteral::setPlacement(const ::Ifc4x3::IfcAxis2Placement& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } ::Ifc4x3::IfcTextPath::Value Ifc4x3::IfcTextLiteral::Path() const { return ::Ifc4x3::IfcTextPath::FromString(get_attribute_value(2)); } void Ifc4x3::IfcTextLiteral::setPath(const ::Ifc4x3::IfcTextPath::Value& v) { set_attribute_value(2, enumeration_reference(&::Ifc4x3::IfcTextPath::Class(), (size_t) v));if constexpr (false)unset_attribute_value(2); } @@ -15904,7 +15904,7 @@ const ifcopenshell::entity& Ifc4x3::IfcTextLiteral::Class() { return *((ifcopens Ifc4x3::IfcTextLiteral Ifc4x3::IfcTextLiteral::initialize(std::string v1_Literal, ::Ifc4x3::IfcAxis2Placement v2_Placement, ::Ifc4x3::IfcTextPath::Value v3_Path) { set_attribute_value(0, (v1_Literal));set_attribute_value(1, (v2_Placement));set_attribute_value(2, (enumeration_reference(&::Ifc4x3::IfcTextPath::Class(),(size_t)v3_Path)));; return *this; } // Function implementations for IfcTextLiteralWithExtent -::Ifc4x3::IfcPlanarExtent Ifc4x3::IfcTextLiteralWithExtent::Extent() const { return ((express::Base)(get_attribute_value(3))).as<::Ifc4x3::IfcPlanarExtent>(); } +::Ifc4x3::IfcPlanarExtent Ifc4x3::IfcTextLiteralWithExtent::Extent() const { return ((express::base)(get_attribute_value(3))).as<::Ifc4x3::IfcPlanarExtent>(); } void Ifc4x3::IfcTextLiteralWithExtent::setExtent(const ::Ifc4x3::IfcPlanarExtent& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } std::string Ifc4x3::IfcTextLiteralWithExtent::BoxAlignment() const { std::string v = get_attribute_value(4); return v; } void Ifc4x3::IfcTextLiteralWithExtent::setBoxAlignment(const std::string& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } @@ -15914,11 +15914,11 @@ const ifcopenshell::entity& Ifc4x3::IfcTextLiteralWithExtent::Class() { return * Ifc4x3::IfcTextLiteralWithExtent Ifc4x3::IfcTextLiteralWithExtent::initialize(std::string v1_Literal, ::Ifc4x3::IfcAxis2Placement v2_Placement, ::Ifc4x3::IfcTextPath::Value v3_Path, ::Ifc4x3::IfcPlanarExtent v4_Extent, std::string v5_BoxAlignment) { set_attribute_value(0, (v1_Literal));set_attribute_value(1, (v2_Placement));set_attribute_value(2, (enumeration_reference(&::Ifc4x3::IfcTextPath::Class(),(size_t)v3_Path)));set_attribute_value(3, (v4_Extent));set_attribute_value(4, (v5_BoxAlignment));; return *this; } // Function implementations for IfcTextStyle -::Ifc4x3::IfcTextStyleForDefinedFont Ifc4x3::IfcTextStyle::TextCharacterAppearance() const { if(get_attribute_value(1).isNull()) { return ::Ifc4x3::IfcTextStyleForDefinedFont{}; } return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3::IfcTextStyleForDefinedFont>(); } +::Ifc4x3::IfcTextStyleForDefinedFont Ifc4x3::IfcTextStyle::TextCharacterAppearance() const { if(get_attribute_value(1).isNull()) { return ::Ifc4x3::IfcTextStyleForDefinedFont{}; } return ((express::base)(get_attribute_value(1))).as<::Ifc4x3::IfcTextStyleForDefinedFont>(); } void Ifc4x3::IfcTextStyle::setTextCharacterAppearance(const ::Ifc4x3::IfcTextStyleForDefinedFont& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } -::Ifc4x3::IfcTextStyleTextModel Ifc4x3::IfcTextStyle::TextStyle() const { if(get_attribute_value(2).isNull()) { return ::Ifc4x3::IfcTextStyleTextModel{}; } return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3::IfcTextStyleTextModel>(); } +::Ifc4x3::IfcTextStyleTextModel Ifc4x3::IfcTextStyle::TextStyle() const { if(get_attribute_value(2).isNull()) { return ::Ifc4x3::IfcTextStyleTextModel{}; } return ((express::base)(get_attribute_value(2))).as<::Ifc4x3::IfcTextStyleTextModel>(); } void Ifc4x3::IfcTextStyle::setTextStyle(const ::Ifc4x3::IfcTextStyleTextModel& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } -::Ifc4x3::IfcTextFontSelect Ifc4x3::IfcTextStyle::TextFontStyle() const { return ((express::Base)(get_attribute_value(3))).as<::Ifc4x3::IfcTextFontSelect>(); } +::Ifc4x3::IfcTextFontSelect Ifc4x3::IfcTextStyle::TextFontStyle() const { return ((express::base)(get_attribute_value(3))).as<::Ifc4x3::IfcTextFontSelect>(); } void Ifc4x3::IfcTextStyle::setTextFontStyle(const ::Ifc4x3::IfcTextFontSelect& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } std::optional< bool > Ifc4x3::IfcTextStyle::ModelOrDraughting() const { if(get_attribute_value(4).isNull()) { return std::nullopt; } bool v = get_attribute_value(4); return v; } void Ifc4x3::IfcTextStyle::setModelOrDraughting(const std::optional< bool >& v) { if (v) {set_attribute_value(4, *v);} else {unset_attribute_value(4);} } @@ -15936,7 +15936,7 @@ std::optional< std::string > Ifc4x3::IfcTextStyleFontModel::FontVariant() const void Ifc4x3::IfcTextStyleFontModel::setFontVariant(const std::optional< std::string >& v) { if (v) {set_attribute_value(3, *v);} else {unset_attribute_value(3);} } std::optional< std::string > Ifc4x3::IfcTextStyleFontModel::FontWeight() const { if(get_attribute_value(4).isNull()) { return std::nullopt; } std::string v = get_attribute_value(4); return v; } void Ifc4x3::IfcTextStyleFontModel::setFontWeight(const std::optional< std::string >& v) { if (v) {set_attribute_value(4, *v);} else {unset_attribute_value(4);} } -::Ifc4x3::IfcSizeSelect Ifc4x3::IfcTextStyleFontModel::FontSize() const { return ((express::Base)(get_attribute_value(5))).as<::Ifc4x3::IfcSizeSelect>(); } +::Ifc4x3::IfcSizeSelect Ifc4x3::IfcTextStyleFontModel::FontSize() const { return ((express::base)(get_attribute_value(5))).as<::Ifc4x3::IfcSizeSelect>(); } void Ifc4x3::IfcTextStyleFontModel::setFontSize(const ::Ifc4x3::IfcSizeSelect& v) { set_attribute_value(5, v);if constexpr (false)unset_attribute_value(5); } @@ -15944,9 +15944,9 @@ const ifcopenshell::entity& Ifc4x3::IfcTextStyleFontModel::Class() { return *((i Ifc4x3::IfcTextStyleFontModel Ifc4x3::IfcTextStyleFontModel::initialize(std::string v1_Name, std::vector< std::string > /*[1:?]*/ v2_FontFamily, std::optional< std::string > v3_FontStyle, std::optional< std::string > v4_FontVariant, std::optional< std::string > v5_FontWeight, ::Ifc4x3::IfcSizeSelect v6_FontSize) { set_attribute_value(0, (v1_Name));set_attribute_value(1, (v2_FontFamily)); if (v3_FontStyle) {set_attribute_value(2, (*v3_FontStyle)); } if (v4_FontVariant) {set_attribute_value(3, (*v4_FontVariant)); } if (v5_FontWeight) {set_attribute_value(4, (*v5_FontWeight)); }set_attribute_value(5, (v6_FontSize));; return *this; } // Function implementations for IfcTextStyleForDefinedFont -::Ifc4x3::IfcColour Ifc4x3::IfcTextStyleForDefinedFont::Colour() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3::IfcColour>(); } +::Ifc4x3::IfcColour Ifc4x3::IfcTextStyleForDefinedFont::Colour() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3::IfcColour>(); } void Ifc4x3::IfcTextStyleForDefinedFont::setColour(const ::Ifc4x3::IfcColour& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } -::Ifc4x3::IfcColour Ifc4x3::IfcTextStyleForDefinedFont::BackgroundColour() const { if(get_attribute_value(1).isNull()) { return ::Ifc4x3::IfcColour{}; } return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3::IfcColour>(); } +::Ifc4x3::IfcColour Ifc4x3::IfcTextStyleForDefinedFont::BackgroundColour() const { if(get_attribute_value(1).isNull()) { return ::Ifc4x3::IfcColour{}; } return ((express::base)(get_attribute_value(1))).as<::Ifc4x3::IfcColour>(); } void Ifc4x3::IfcTextStyleForDefinedFont::setBackgroundColour(const ::Ifc4x3::IfcColour& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } @@ -15954,19 +15954,19 @@ const ifcopenshell::entity& Ifc4x3::IfcTextStyleForDefinedFont::Class() { return Ifc4x3::IfcTextStyleForDefinedFont Ifc4x3::IfcTextStyleForDefinedFont::initialize(::Ifc4x3::IfcColour v1_Colour, ::Ifc4x3::IfcColour v2_BackgroundColour) { set_attribute_value(0, (v1_Colour));set_attribute_value(1, (v2_BackgroundColour));; return *this; } // Function implementations for IfcTextStyleTextModel -::Ifc4x3::IfcSizeSelect Ifc4x3::IfcTextStyleTextModel::TextIndent() const { if(get_attribute_value(0).isNull()) { return ::Ifc4x3::IfcSizeSelect{}; } return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3::IfcSizeSelect>(); } +::Ifc4x3::IfcSizeSelect Ifc4x3::IfcTextStyleTextModel::TextIndent() const { if(get_attribute_value(0).isNull()) { return ::Ifc4x3::IfcSizeSelect{}; } return ((express::base)(get_attribute_value(0))).as<::Ifc4x3::IfcSizeSelect>(); } void Ifc4x3::IfcTextStyleTextModel::setTextIndent(const ::Ifc4x3::IfcSizeSelect& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } std::optional< std::string > Ifc4x3::IfcTextStyleTextModel::TextAlign() const { if(get_attribute_value(1).isNull()) { return std::nullopt; } std::string v = get_attribute_value(1); return v; } void Ifc4x3::IfcTextStyleTextModel::setTextAlign(const std::optional< std::string >& v) { if (v) {set_attribute_value(1, *v);} else {unset_attribute_value(1);} } std::optional< std::string > Ifc4x3::IfcTextStyleTextModel::TextDecoration() const { if(get_attribute_value(2).isNull()) { return std::nullopt; } std::string v = get_attribute_value(2); return v; } void Ifc4x3::IfcTextStyleTextModel::setTextDecoration(const std::optional< std::string >& v) { if (v) {set_attribute_value(2, *v);} else {unset_attribute_value(2);} } -::Ifc4x3::IfcSizeSelect Ifc4x3::IfcTextStyleTextModel::LetterSpacing() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3::IfcSizeSelect{}; } return ((express::Base)(get_attribute_value(3))).as<::Ifc4x3::IfcSizeSelect>(); } +::Ifc4x3::IfcSizeSelect Ifc4x3::IfcTextStyleTextModel::LetterSpacing() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3::IfcSizeSelect{}; } return ((express::base)(get_attribute_value(3))).as<::Ifc4x3::IfcSizeSelect>(); } void Ifc4x3::IfcTextStyleTextModel::setLetterSpacing(const ::Ifc4x3::IfcSizeSelect& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } -::Ifc4x3::IfcSizeSelect Ifc4x3::IfcTextStyleTextModel::WordSpacing() const { if(get_attribute_value(4).isNull()) { return ::Ifc4x3::IfcSizeSelect{}; } return ((express::Base)(get_attribute_value(4))).as<::Ifc4x3::IfcSizeSelect>(); } +::Ifc4x3::IfcSizeSelect Ifc4x3::IfcTextStyleTextModel::WordSpacing() const { if(get_attribute_value(4).isNull()) { return ::Ifc4x3::IfcSizeSelect{}; } return ((express::base)(get_attribute_value(4))).as<::Ifc4x3::IfcSizeSelect>(); } void Ifc4x3::IfcTextStyleTextModel::setWordSpacing(const ::Ifc4x3::IfcSizeSelect& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } std::optional< std::string > Ifc4x3::IfcTextStyleTextModel::TextTransform() const { if(get_attribute_value(5).isNull()) { return std::nullopt; } std::string v = get_attribute_value(5); return v; } void Ifc4x3::IfcTextStyleTextModel::setTextTransform(const std::optional< std::string >& v) { if (v) {set_attribute_value(5, *v);} else {unset_attribute_value(5);} } -::Ifc4x3::IfcSizeSelect Ifc4x3::IfcTextStyleTextModel::LineHeight() const { if(get_attribute_value(6).isNull()) { return ::Ifc4x3::IfcSizeSelect{}; } return ((express::Base)(get_attribute_value(6))).as<::Ifc4x3::IfcSizeSelect>(); } +::Ifc4x3::IfcSizeSelect Ifc4x3::IfcTextStyleTextModel::LineHeight() const { if(get_attribute_value(6).isNull()) { return ::Ifc4x3::IfcSizeSelect{}; } return ((express::base)(get_attribute_value(6))).as<::Ifc4x3::IfcSizeSelect>(); } void Ifc4x3::IfcTextStyleTextModel::setLineHeight(const ::Ifc4x3::IfcSizeSelect& v) { set_attribute_value(6, v);if constexpr (false)unset_attribute_value(6); } @@ -15974,12 +15974,12 @@ const ifcopenshell::entity& Ifc4x3::IfcTextStyleTextModel::Class() { return *((i Ifc4x3::IfcTextStyleTextModel Ifc4x3::IfcTextStyleTextModel::initialize(::Ifc4x3::IfcSizeSelect v1_TextIndent, std::optional< std::string > v2_TextAlign, std::optional< std::string > v3_TextDecoration, ::Ifc4x3::IfcSizeSelect v4_LetterSpacing, ::Ifc4x3::IfcSizeSelect v5_WordSpacing, std::optional< std::string > v6_TextTransform, ::Ifc4x3::IfcSizeSelect v7_LineHeight) { set_attribute_value(0, (v1_TextIndent)); if (v2_TextAlign) {set_attribute_value(1, (*v2_TextAlign)); } if (v3_TextDecoration) {set_attribute_value(2, (*v3_TextDecoration)); }set_attribute_value(3, (v4_LetterSpacing));set_attribute_value(4, (v5_WordSpacing)); if (v6_TextTransform) {set_attribute_value(5, (*v6_TextTransform)); }set_attribute_value(6, (v7_LineHeight));; return *this; } // Function implementations for IfcTextureCoordinate -std::vector< ::Ifc4x3::IfcSurfaceTexture > Ifc4x3::IfcTextureCoordinate::Maps() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3::IfcSurfaceTexture>(es); } -void Ifc4x3::IfcTextureCoordinate::setMaps(const std::vector< ::Ifc4x3::IfcSurfaceTexture >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } +std::vector< ::Ifc4x3::IfcSurfaceTexture > Ifc4x3::IfcTextureCoordinate::Maps() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3::IfcSurfaceTexture>(es); } +void Ifc4x3::IfcTextureCoordinate::setMaps(const std::vector< ::Ifc4x3::IfcSurfaceTexture >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } const ifcopenshell::entity& Ifc4x3::IfcTextureCoordinate::Class() { return *((ifcopenshell::entity*)IFC4X3_types[1191]); } -Ifc4x3::IfcTextureCoordinate Ifc4x3::IfcTextureCoordinate::initialize(std::vector< ::Ifc4x3::IfcSurfaceTexture > v1_Maps) { set_attribute_value(0, cast_vector(v1_Maps));; return *this; } +Ifc4x3::IfcTextureCoordinate Ifc4x3::IfcTextureCoordinate::initialize(std::vector< ::Ifc4x3::IfcSurfaceTexture > v1_Maps) { set_attribute_value(0, cast_vector(v1_Maps));; return *this; } // Function implementations for IfcTextureCoordinateGenerator std::string Ifc4x3::IfcTextureCoordinateGenerator::Mode() const { std::string v = get_attribute_value(1); return v; } @@ -15989,12 +15989,12 @@ void Ifc4x3::IfcTextureCoordinateGenerator::setParameter(const std::optional< st const ifcopenshell::entity& Ifc4x3::IfcTextureCoordinateGenerator::Class() { return *((ifcopenshell::entity*)IFC4X3_types[1192]); } -Ifc4x3::IfcTextureCoordinateGenerator Ifc4x3::IfcTextureCoordinateGenerator::initialize(std::vector< ::Ifc4x3::IfcSurfaceTexture > v1_Maps, std::string v2_Mode, std::optional< std::vector< double > /*[1:?]*/ > v3_Parameter) { set_attribute_value(0, cast_vector(v1_Maps));set_attribute_value(1, (v2_Mode)); if (v3_Parameter) {set_attribute_value(2, (*v3_Parameter)); }; return *this; } +Ifc4x3::IfcTextureCoordinateGenerator Ifc4x3::IfcTextureCoordinateGenerator::initialize(std::vector< ::Ifc4x3::IfcSurfaceTexture > v1_Maps, std::string v2_Mode, std::optional< std::vector< double > /*[1:?]*/ > v3_Parameter) { set_attribute_value(0, cast_vector(v1_Maps));set_attribute_value(1, (v2_Mode)); if (v3_Parameter) {set_attribute_value(2, (*v3_Parameter)); }; return *this; } // Function implementations for IfcTextureCoordinateIndices std::vector< int64_t > /*[3:?]*/ Ifc4x3::IfcTextureCoordinateIndices::TexCoordIndex() const { std::vector< int64_t > /*[3:?]*/ v = get_attribute_value(0); return v; } void Ifc4x3::IfcTextureCoordinateIndices::setTexCoordIndex(const std::vector< int64_t > /*[3:?]*/& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } -::Ifc4x3::IfcIndexedPolygonalFace Ifc4x3::IfcTextureCoordinateIndices::TexCoordsOf() const { return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3::IfcIndexedPolygonalFace>(); } +::Ifc4x3::IfcIndexedPolygonalFace Ifc4x3::IfcTextureCoordinateIndices::TexCoordsOf() const { return ((express::base)(get_attribute_value(1))).as<::Ifc4x3::IfcIndexedPolygonalFace>(); } void Ifc4x3::IfcTextureCoordinateIndices::setTexCoordsOf(const ::Ifc4x3::IfcIndexedPolygonalFace& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } std::vector<::Ifc4x3::IfcIndexedPolygonalTextureMap> Ifc4x3::IfcTextureCoordinateIndices::ToTexMap() const { return cast_vector(file()->get_inverse(data()->id(), IFC4X3_types[548], 3)); } @@ -16011,14 +16011,14 @@ const ifcopenshell::entity& Ifc4x3::IfcTextureCoordinateIndicesWithVoids::Class( Ifc4x3::IfcTextureCoordinateIndicesWithVoids Ifc4x3::IfcTextureCoordinateIndicesWithVoids::initialize(std::vector< int64_t > /*[3:?]*/ v1_TexCoordIndex, ::Ifc4x3::IfcIndexedPolygonalFace v2_TexCoordsOf, std::vector< std::vector< int64_t > > v3_InnerTexCoordIndices) { set_attribute_value(0, (v1_TexCoordIndex));set_attribute_value(1, (v2_TexCoordsOf));set_attribute_value(2, (v3_InnerTexCoordIndices));; return *this; } // Function implementations for IfcTextureMap -std::vector< ::Ifc4x3::IfcTextureVertex > Ifc4x3::IfcTextureMap::Vertices() const { std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3::IfcTextureVertex>(es); } -void Ifc4x3::IfcTextureMap::setVertices(const std::vector< ::Ifc4x3::IfcTextureVertex >& v) { set_attribute_value(1, cast_vector(v));if constexpr (false)unset_attribute_value(1); } -::Ifc4x3::IfcFace Ifc4x3::IfcTextureMap::MappedTo() const { return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3::IfcFace>(); } +std::vector< ::Ifc4x3::IfcTextureVertex > Ifc4x3::IfcTextureMap::Vertices() const { std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3::IfcTextureVertex>(es); } +void Ifc4x3::IfcTextureMap::setVertices(const std::vector< ::Ifc4x3::IfcTextureVertex >& v) { set_attribute_value(1, cast_vector(v));if constexpr (false)unset_attribute_value(1); } +::Ifc4x3::IfcFace Ifc4x3::IfcTextureMap::MappedTo() const { return ((express::base)(get_attribute_value(2))).as<::Ifc4x3::IfcFace>(); } void Ifc4x3::IfcTextureMap::setMappedTo(const ::Ifc4x3::IfcFace& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } const ifcopenshell::entity& Ifc4x3::IfcTextureMap::Class() { return *((ifcopenshell::entity*)IFC4X3_types[1195]); } -Ifc4x3::IfcTextureMap Ifc4x3::IfcTextureMap::initialize(std::vector< ::Ifc4x3::IfcSurfaceTexture > v1_Maps, std::vector< ::Ifc4x3::IfcTextureVertex > v2_Vertices, ::Ifc4x3::IfcFace v3_MappedTo) { set_attribute_value(0, cast_vector(v1_Maps));set_attribute_value(1, cast_vector(v2_Vertices));set_attribute_value(2, (v3_MappedTo));; return *this; } +Ifc4x3::IfcTextureMap Ifc4x3::IfcTextureMap::initialize(std::vector< ::Ifc4x3::IfcSurfaceTexture > v1_Maps, std::vector< ::Ifc4x3::IfcTextureVertex > v2_Vertices, ::Ifc4x3::IfcFace v3_MappedTo) { set_attribute_value(0, cast_vector(v1_Maps));set_attribute_value(1, cast_vector(v2_Vertices));set_attribute_value(2, (v3_MappedTo));; return *this; } // Function implementations for IfcTextureVertex std::vector< double > /*[2:2]*/ Ifc4x3::IfcTextureVertex::Coordinates() const { std::vector< double > /*[2:2]*/ v = get_attribute_value(0); return v; } @@ -16075,7 +16075,7 @@ void Ifc4x3::IfcTimeSeries::setTimeSeriesDataType(const ::Ifc4x3::IfcTimeSeriesD void Ifc4x3::IfcTimeSeries::setDataOrigin(const ::Ifc4x3::IfcDataOriginEnum::Value& v) { set_attribute_value(5, enumeration_reference(&::Ifc4x3::IfcDataOriginEnum::Class(), (size_t) v));if constexpr (false)unset_attribute_value(5); } std::optional< std::string > Ifc4x3::IfcTimeSeries::UserDefinedDataOrigin() const { if(get_attribute_value(6).isNull()) { return std::nullopt; } std::string v = get_attribute_value(6); return v; } void Ifc4x3::IfcTimeSeries::setUserDefinedDataOrigin(const std::optional< std::string >& v) { if (v) {set_attribute_value(6, *v);} else {unset_attribute_value(6);} } -::Ifc4x3::IfcUnit Ifc4x3::IfcTimeSeries::Unit() const { if(get_attribute_value(7).isNull()) { return ::Ifc4x3::IfcUnit{}; } return ((express::Base)(get_attribute_value(7))).as<::Ifc4x3::IfcUnit>(); } +::Ifc4x3::IfcUnit Ifc4x3::IfcTimeSeries::Unit() const { if(get_attribute_value(7).isNull()) { return ::Ifc4x3::IfcUnit{}; } return ((express::base)(get_attribute_value(7))).as<::Ifc4x3::IfcUnit>(); } void Ifc4x3::IfcTimeSeries::setUnit(const ::Ifc4x3::IfcUnit& v) { set_attribute_value(7, v);if constexpr (false)unset_attribute_value(7); } std::vector<::Ifc4x3::IfcExternalReferenceRelationship> Ifc4x3::IfcTimeSeries::HasExternalReference() const { return cast_vector(file()->get_inverse(data()->id(), IFC4X3_types[430], 3)); } @@ -16084,12 +16084,12 @@ const ifcopenshell::entity& Ifc4x3::IfcTimeSeries::Class() { return *((ifcopensh Ifc4x3::IfcTimeSeries Ifc4x3::IfcTimeSeries::initialize(std::string v1_Name, std::optional< std::string > v2_Description, std::string v3_StartTime, std::string v4_EndTime, ::Ifc4x3::IfcTimeSeriesDataTypeEnum::Value v5_TimeSeriesDataType, ::Ifc4x3::IfcDataOriginEnum::Value v6_DataOrigin, std::optional< std::string > v7_UserDefinedDataOrigin, ::Ifc4x3::IfcUnit v8_Unit) { set_attribute_value(0, (v1_Name)); if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, (v3_StartTime));set_attribute_value(3, (v4_EndTime));set_attribute_value(4, (enumeration_reference(&::Ifc4x3::IfcTimeSeriesDataTypeEnum::Class(),(size_t)v5_TimeSeriesDataType)));set_attribute_value(5, (enumeration_reference(&::Ifc4x3::IfcDataOriginEnum::Class(),(size_t)v6_DataOrigin))); if (v7_UserDefinedDataOrigin) {set_attribute_value(6, (*v7_UserDefinedDataOrigin)); }set_attribute_value(7, (v8_Unit));; return *this; } // Function implementations for IfcTimeSeriesValue -std::vector< ::Ifc4x3::IfcValue > Ifc4x3::IfcTimeSeriesValue::ListValues() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3::IfcValue>(es); } -void Ifc4x3::IfcTimeSeriesValue::setListValues(const std::vector< ::Ifc4x3::IfcValue >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } +std::vector< ::Ifc4x3::IfcValue > Ifc4x3::IfcTimeSeriesValue::ListValues() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3::IfcValue>(es); } +void Ifc4x3::IfcTimeSeriesValue::setListValues(const std::vector< ::Ifc4x3::IfcValue >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } const ifcopenshell::entity& Ifc4x3::IfcTimeSeriesValue::Class() { return *((ifcopenshell::entity*)IFC4X3_types[1211]); } -Ifc4x3::IfcTimeSeriesValue Ifc4x3::IfcTimeSeriesValue::initialize(std::vector< ::Ifc4x3::IfcValue > v1_ListValues) { set_attribute_value(0, cast_vector(v1_ListValues));; return *this; } +Ifc4x3::IfcTimeSeriesValue Ifc4x3::IfcTimeSeriesValue::initialize(std::vector< ::Ifc4x3::IfcValue > v1_ListValues) { set_attribute_value(0, cast_vector(v1_ListValues));; return *this; } // Function implementations for IfcTopologicalRepresentationItem @@ -16101,7 +16101,7 @@ Ifc4x3::IfcTopologicalRepresentationItem Ifc4x3::IfcTopologicalRepresentationIte const ifcopenshell::entity& Ifc4x3::IfcTopologyRepresentation::Class() { return *((ifcopenshell::entity*)IFC4X3_types[1214]); } -Ifc4x3::IfcTopologyRepresentation Ifc4x3::IfcTopologyRepresentation::initialize(::Ifc4x3::IfcRepresentationContext v1_ContextOfItems, std::optional< std::string > v2_RepresentationIdentifier, std::optional< std::string > v3_RepresentationType, std::vector< ::Ifc4x3::IfcRepresentationItem > v4_Items) { set_attribute_value(0, (v1_ContextOfItems)); if (v2_RepresentationIdentifier) {set_attribute_value(1, (*v2_RepresentationIdentifier)); } if (v3_RepresentationType) {set_attribute_value(2, (*v3_RepresentationType)); }set_attribute_value(3, cast_vector(v4_Items));; return *this; } +Ifc4x3::IfcTopologyRepresentation Ifc4x3::IfcTopologyRepresentation::initialize(::Ifc4x3::IfcRepresentationContext v1_ContextOfItems, std::optional< std::string > v2_RepresentationIdentifier, std::optional< std::string > v3_RepresentationType, std::vector< ::Ifc4x3::IfcRepresentationItem > v4_Items) { set_attribute_value(0, (v1_ContextOfItems)); if (v2_RepresentationIdentifier) {set_attribute_value(1, (*v2_RepresentationIdentifier)); } if (v3_RepresentationType) {set_attribute_value(2, (*v3_RepresentationType)); }set_attribute_value(3, cast_vector(v4_Items));; return *this; } // Function implementations for IfcToroidalSurface double Ifc4x3::IfcToroidalSurface::MajorRadius() const { double v = get_attribute_value(1); return v; } @@ -16127,7 +16127,7 @@ void Ifc4x3::IfcTrackElementType::setPredefinedType(const ::Ifc4x3::IfcTrackElem const ifcopenshell::entity& Ifc4x3::IfcTrackElementType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[1218]); } -Ifc4x3::IfcTrackElementType Ifc4x3::IfcTrackElementType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcTrackElementTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcTrackElementTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3::IfcTrackElementType Ifc4x3::IfcTrackElementType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcTrackElementTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcTrackElementTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcTransformer std::optional< ::Ifc4x3::IfcTransformerTypeEnum::Value > Ifc4x3::IfcTransformer::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3::IfcTransformerTypeEnum::FromString(get_attribute_value(8)); } @@ -16143,7 +16143,7 @@ void Ifc4x3::IfcTransformerType::setPredefinedType(const ::Ifc4x3::IfcTransforme const ifcopenshell::entity& Ifc4x3::IfcTransformerType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[1221]); } -Ifc4x3::IfcTransformerType Ifc4x3::IfcTransformerType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcTransformerTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcTransformerTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3::IfcTransformerType Ifc4x3::IfcTransformerType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcTransformerTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcTransformerTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcTransportElement std::optional< ::Ifc4x3::IfcTransportElementTypeEnum::Value > Ifc4x3::IfcTransportElement::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3::IfcTransportElementTypeEnum::FromString(get_attribute_value(8)); } @@ -16159,7 +16159,7 @@ void Ifc4x3::IfcTransportElementType::setPredefinedType(const ::Ifc4x3::IfcTrans const ifcopenshell::entity& Ifc4x3::IfcTransportElementType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[1228]); } -Ifc4x3::IfcTransportElementType Ifc4x3::IfcTransportElementType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcTransportElementTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcTransportElementTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3::IfcTransportElementType Ifc4x3::IfcTransportElementType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcTransportElementTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcTransportElementTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcTransportationDevice @@ -16171,7 +16171,7 @@ Ifc4x3::IfcTransportationDevice Ifc4x3::IfcTransportationDevice::initialize(std: const ifcopenshell::entity& Ifc4x3::IfcTransportationDeviceType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[1226]); } -Ifc4x3::IfcTransportationDeviceType Ifc4x3::IfcTransportationDeviceType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } +Ifc4x3::IfcTransportationDeviceType Ifc4x3::IfcTransportationDeviceType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } // Function implementations for IfcTrapeziumProfileDef double Ifc4x3::IfcTrapeziumProfileDef::BottomXDim() const { double v = get_attribute_value(3); return v; } @@ -16208,12 +16208,12 @@ const ifcopenshell::entity& Ifc4x3::IfcTriangulatedIrregularNetwork::Class() { r Ifc4x3::IfcTriangulatedIrregularNetwork Ifc4x3::IfcTriangulatedIrregularNetwork::initialize(::Ifc4x3::IfcCartesianPointList3D v1_Coordinates, std::optional< bool > v2_Closed, std::optional< std::vector< std::vector< double > > > v3_Normals, std::vector< std::vector< int64_t > > v4_CoordIndex, std::optional< std::vector< int64_t > /*[1:?]*/ > v5_PnIndex, std::vector< int64_t > /*[1:?]*/ v6_Flags) { set_attribute_value(0, (v1_Coordinates)); if (v2_Closed) {set_attribute_value(1, (*v2_Closed)); } if (v3_Normals) {set_attribute_value(2, (*v3_Normals)); }set_attribute_value(3, (v4_CoordIndex)); if (v5_PnIndex) {set_attribute_value(4, (*v5_PnIndex)); }set_attribute_value(5, (v6_Flags));; return *this; } // Function implementations for IfcTrimmedCurve -::Ifc4x3::IfcCurve Ifc4x3::IfcTrimmedCurve::BasisCurve() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3::IfcCurve>(); } +::Ifc4x3::IfcCurve Ifc4x3::IfcTrimmedCurve::BasisCurve() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3::IfcCurve>(); } void Ifc4x3::IfcTrimmedCurve::setBasisCurve(const ::Ifc4x3::IfcCurve& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } -std::vector< ::Ifc4x3::IfcTrimmingSelect > Ifc4x3::IfcTrimmedCurve::Trim1() const { std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3::IfcTrimmingSelect>(es); } -void Ifc4x3::IfcTrimmedCurve::setTrim1(const std::vector< ::Ifc4x3::IfcTrimmingSelect >& v) { set_attribute_value(1, cast_vector(v));if constexpr (false)unset_attribute_value(1); } -std::vector< ::Ifc4x3::IfcTrimmingSelect > Ifc4x3::IfcTrimmedCurve::Trim2() const { std::vector es = get_attribute_value(2); return cast_vector<::Ifc4x3::IfcTrimmingSelect>(es); } -void Ifc4x3::IfcTrimmedCurve::setTrim2(const std::vector< ::Ifc4x3::IfcTrimmingSelect >& v) { set_attribute_value(2, cast_vector(v));if constexpr (false)unset_attribute_value(2); } +std::vector< ::Ifc4x3::IfcTrimmingSelect > Ifc4x3::IfcTrimmedCurve::Trim1() const { std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3::IfcTrimmingSelect>(es); } +void Ifc4x3::IfcTrimmedCurve::setTrim1(const std::vector< ::Ifc4x3::IfcTrimmingSelect >& v) { set_attribute_value(1, cast_vector(v));if constexpr (false)unset_attribute_value(1); } +std::vector< ::Ifc4x3::IfcTrimmingSelect > Ifc4x3::IfcTrimmedCurve::Trim2() const { std::vector es = get_attribute_value(2); return cast_vector<::Ifc4x3::IfcTrimmingSelect>(es); } +void Ifc4x3::IfcTrimmedCurve::setTrim2(const std::vector< ::Ifc4x3::IfcTrimmingSelect >& v) { set_attribute_value(2, cast_vector(v));if constexpr (false)unset_attribute_value(2); } bool Ifc4x3::IfcTrimmedCurve::SenseAgreement() const { bool v = get_attribute_value(3); return v; } void Ifc4x3::IfcTrimmedCurve::setSenseAgreement(const bool& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } ::Ifc4x3::IfcTrimmingPreference::Value Ifc4x3::IfcTrimmedCurve::MasterRepresentation() const { return ::Ifc4x3::IfcTrimmingPreference::FromString(get_attribute_value(4)); } @@ -16221,7 +16221,7 @@ void Ifc4x3::IfcTrimmedCurve::setMasterRepresentation(const ::Ifc4x3::IfcTrimmin const ifcopenshell::entity& Ifc4x3::IfcTrimmedCurve::Class() { return *((ifcopenshell::entity*)IFC4X3_types[1233]); } -Ifc4x3::IfcTrimmedCurve Ifc4x3::IfcTrimmedCurve::initialize(::Ifc4x3::IfcCurve v1_BasisCurve, std::vector< ::Ifc4x3::IfcTrimmingSelect > v2_Trim1, std::vector< ::Ifc4x3::IfcTrimmingSelect > v3_Trim2, bool v4_SenseAgreement, ::Ifc4x3::IfcTrimmingPreference::Value v5_MasterRepresentation) { set_attribute_value(0, (v1_BasisCurve));set_attribute_value(1, cast_vector(v2_Trim1));set_attribute_value(2, cast_vector(v3_Trim2));set_attribute_value(3, (v4_SenseAgreement));set_attribute_value(4, (enumeration_reference(&::Ifc4x3::IfcTrimmingPreference::Class(),(size_t)v5_MasterRepresentation)));; return *this; } +Ifc4x3::IfcTrimmedCurve Ifc4x3::IfcTrimmedCurve::initialize(::Ifc4x3::IfcCurve v1_BasisCurve, std::vector< ::Ifc4x3::IfcTrimmingSelect > v2_Trim1, std::vector< ::Ifc4x3::IfcTrimmingSelect > v3_Trim2, bool v4_SenseAgreement, ::Ifc4x3::IfcTrimmingPreference::Value v5_MasterRepresentation) { set_attribute_value(0, (v1_BasisCurve));set_attribute_value(1, cast_vector(v2_Trim1));set_attribute_value(2, cast_vector(v3_Trim2));set_attribute_value(3, (v4_SenseAgreement));set_attribute_value(4, (enumeration_reference(&::Ifc4x3::IfcTrimmingPreference::Class(),(size_t)v5_MasterRepresentation)));; return *this; } // Function implementations for IfcTubeBundle std::optional< ::Ifc4x3::IfcTubeBundleTypeEnum::Value > Ifc4x3::IfcTubeBundle::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3::IfcTubeBundleTypeEnum::FromString(get_attribute_value(8)); } @@ -16237,18 +16237,18 @@ void Ifc4x3::IfcTubeBundleType::setPredefinedType(const ::Ifc4x3::IfcTubeBundleT const ifcopenshell::entity& Ifc4x3::IfcTubeBundleType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[1238]); } -Ifc4x3::IfcTubeBundleType Ifc4x3::IfcTubeBundleType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcTubeBundleTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcTubeBundleTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3::IfcTubeBundleType Ifc4x3::IfcTubeBundleType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcTubeBundleTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcTubeBundleTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcTypeObject std::optional< std::string > Ifc4x3::IfcTypeObject::ApplicableOccurrence() const { if(get_attribute_value(4).isNull()) { return std::nullopt; } std::string v = get_attribute_value(4); return v; } void Ifc4x3::IfcTypeObject::setApplicableOccurrence(const std::optional< std::string >& v) { if (v) {set_attribute_value(4, *v);} else {unset_attribute_value(4);} } -std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > Ifc4x3::IfcTypeObject::HasPropertySets() const { if(get_attribute_value(5).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(5); return cast_vector<::Ifc4x3::IfcPropertySetDefinition>(es); } -void Ifc4x3::IfcTypeObject::setHasPropertySets(const std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > >& v) { if (v) {set_attribute_value(5, cast_vector(*v));} else {unset_attribute_value(5);} } +std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > Ifc4x3::IfcTypeObject::HasPropertySets() const { if(get_attribute_value(5).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(5); return cast_vector<::Ifc4x3::IfcPropertySetDefinition>(es); } +void Ifc4x3::IfcTypeObject::setHasPropertySets(const std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > >& v) { if (v) {set_attribute_value(5, cast_vector(*v));} else {unset_attribute_value(5);} } std::vector<::Ifc4x3::IfcRelDefinesByType> Ifc4x3::IfcTypeObject::Types() const { return cast_vector(file()->get_inverse(data()->id(), IFC4X3_types[936], 5)); } const ifcopenshell::entity& Ifc4x3::IfcTypeObject::Class() { return *((ifcopenshell::entity*)IFC4X3_types[1240]); } -Ifc4x3::IfcTypeObject Ifc4x3::IfcTypeObject::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); }; return *this; } +Ifc4x3::IfcTypeObject Ifc4x3::IfcTypeObject::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); }; return *this; } // Function implementations for IfcTypeProcess std::optional< std::string > Ifc4x3::IfcTypeProcess::Identification() const { if(get_attribute_value(6).isNull()) { return std::nullopt; } std::string v = get_attribute_value(6); return v; } @@ -16261,18 +16261,18 @@ void Ifc4x3::IfcTypeProcess::setProcessType(const std::optional< std::string >& std::vector<::Ifc4x3::IfcRelAssignsToProcess> Ifc4x3::IfcTypeProcess::OperatesOn() const { return cast_vector(file()->get_inverse(data()->id(), IFC4X3_types[906], 6)); } const ifcopenshell::entity& Ifc4x3::IfcTypeProcess::Class() { return *((ifcopenshell::entity*)IFC4X3_types[1241]); } -Ifc4x3::IfcTypeProcess Ifc4x3::IfcTypeProcess::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::string > v7_Identification, std::optional< std::string > v8_LongDescription, std::optional< std::string > v9_ProcessType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_Identification) {set_attribute_value(6, (*v7_Identification)); } if (v8_LongDescription) {set_attribute_value(7, (*v8_LongDescription)); } if (v9_ProcessType) {set_attribute_value(8, (*v9_ProcessType)); }; return *this; } +Ifc4x3::IfcTypeProcess Ifc4x3::IfcTypeProcess::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::string > v7_Identification, std::optional< std::string > v8_LongDescription, std::optional< std::string > v9_ProcessType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_Identification) {set_attribute_value(6, (*v7_Identification)); } if (v8_LongDescription) {set_attribute_value(7, (*v8_LongDescription)); } if (v9_ProcessType) {set_attribute_value(8, (*v9_ProcessType)); }; return *this; } // Function implementations for IfcTypeProduct -std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > Ifc4x3::IfcTypeProduct::RepresentationMaps() const { if(get_attribute_value(6).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(6); return cast_vector<::Ifc4x3::IfcRepresentationMap>(es); } -void Ifc4x3::IfcTypeProduct::setRepresentationMaps(const std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > >& v) { if (v) {set_attribute_value(6, cast_vector(*v));} else {unset_attribute_value(6);} } +std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > Ifc4x3::IfcTypeProduct::RepresentationMaps() const { if(get_attribute_value(6).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(6); return cast_vector<::Ifc4x3::IfcRepresentationMap>(es); } +void Ifc4x3::IfcTypeProduct::setRepresentationMaps(const std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > >& v) { if (v) {set_attribute_value(6, cast_vector(*v));} else {unset_attribute_value(6);} } std::optional< std::string > Ifc4x3::IfcTypeProduct::Tag() const { if(get_attribute_value(7).isNull()) { return std::nullopt; } std::string v = get_attribute_value(7); return v; } void Ifc4x3::IfcTypeProduct::setTag(const std::optional< std::string >& v) { if (v) {set_attribute_value(7, *v);} else {unset_attribute_value(7);} } std::vector<::Ifc4x3::IfcRelAssignsToProduct> Ifc4x3::IfcTypeProduct::ReferencedBy() const { return cast_vector(file()->get_inverse(data()->id(), IFC4X3_types[907], 6)); } const ifcopenshell::entity& Ifc4x3::IfcTypeProduct::Class() { return *((ifcopenshell::entity*)IFC4X3_types[1242]); } -Ifc4x3::IfcTypeProduct Ifc4x3::IfcTypeProduct::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); }; return *this; } +Ifc4x3::IfcTypeProduct Ifc4x3::IfcTypeProduct::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); }; return *this; } // Function implementations for IfcTypeResource std::optional< std::string > Ifc4x3::IfcTypeResource::Identification() const { if(get_attribute_value(6).isNull()) { return std::nullopt; } std::string v = get_attribute_value(6); return v; } @@ -16285,7 +16285,7 @@ void Ifc4x3::IfcTypeResource::setResourceType(const std::optional< std::string > std::vector<::Ifc4x3::IfcRelAssignsToResource> Ifc4x3::IfcTypeResource::ResourceOf() const { return cast_vector(file()->get_inverse(data()->id(), IFC4X3_types[908], 6)); } const ifcopenshell::entity& Ifc4x3::IfcTypeResource::Class() { return *((ifcopenshell::entity*)IFC4X3_types[1243]); } -Ifc4x3::IfcTypeResource Ifc4x3::IfcTypeResource::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::string > v7_Identification, std::optional< std::string > v8_LongDescription, std::optional< std::string > v9_ResourceType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_Identification) {set_attribute_value(6, (*v7_Identification)); } if (v8_LongDescription) {set_attribute_value(7, (*v8_LongDescription)); } if (v9_ResourceType) {set_attribute_value(8, (*v9_ResourceType)); }; return *this; } +Ifc4x3::IfcTypeResource Ifc4x3::IfcTypeResource::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::string > v7_Identification, std::optional< std::string > v8_LongDescription, std::optional< std::string > v9_ResourceType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_Identification) {set_attribute_value(6, (*v7_Identification)); } if (v8_LongDescription) {set_attribute_value(7, (*v8_LongDescription)); } if (v9_ResourceType) {set_attribute_value(8, (*v9_ResourceType)); }; return *this; } // Function implementations for IfcUShapeProfileDef double Ifc4x3::IfcUShapeProfileDef::Depth() const { double v = get_attribute_value(3); return v; } @@ -16308,12 +16308,12 @@ const ifcopenshell::entity& Ifc4x3::IfcUShapeProfileDef::Class() { return *((ifc Ifc4x3::IfcUShapeProfileDef Ifc4x3::IfcUShapeProfileDef::initialize(::Ifc4x3::IfcProfileTypeEnum::Value v1_ProfileType, std::optional< std::string > v2_ProfileName, ::Ifc4x3::IfcAxis2Placement2D v3_Position, double v4_Depth, double v5_FlangeWidth, double v6_WebThickness, double v7_FlangeThickness, std::optional< double > v8_FilletRadius, std::optional< double > v9_EdgeRadius, std::optional< double > v10_FlangeSlope) { set_attribute_value(0, (enumeration_reference(&::Ifc4x3::IfcProfileTypeEnum::Class(),(size_t)v1_ProfileType))); if (v2_ProfileName) {set_attribute_value(1, (*v2_ProfileName)); }set_attribute_value(2, (v3_Position));set_attribute_value(3, (v4_Depth));set_attribute_value(4, (v5_FlangeWidth));set_attribute_value(5, (v6_WebThickness));set_attribute_value(6, (v7_FlangeThickness)); if (v8_FilletRadius) {set_attribute_value(7, (*v8_FilletRadius)); } if (v9_EdgeRadius) {set_attribute_value(8, (*v9_EdgeRadius)); } if (v10_FlangeSlope) {set_attribute_value(9, (*v10_FlangeSlope)); }; return *this; } // Function implementations for IfcUnitAssignment -std::vector< ::Ifc4x3::IfcUnit > Ifc4x3::IfcUnitAssignment::Units() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3::IfcUnit>(es); } -void Ifc4x3::IfcUnitAssignment::setUnits(const std::vector< ::Ifc4x3::IfcUnit >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } +std::vector< ::Ifc4x3::IfcUnit > Ifc4x3::IfcUnitAssignment::Units() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3::IfcUnit>(es); } +void Ifc4x3::IfcUnitAssignment::setUnits(const std::vector< ::Ifc4x3::IfcUnit >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } const ifcopenshell::entity& Ifc4x3::IfcUnitAssignment::Class() { return *((ifcopenshell::entity*)IFC4X3_types[1251]); } -Ifc4x3::IfcUnitAssignment Ifc4x3::IfcUnitAssignment::initialize(std::vector< ::Ifc4x3::IfcUnit > v1_Units) { set_attribute_value(0, cast_vector(v1_Units));; return *this; } +Ifc4x3::IfcUnitAssignment Ifc4x3::IfcUnitAssignment::initialize(std::vector< ::Ifc4x3::IfcUnit > v1_Units) { set_attribute_value(0, cast_vector(v1_Units));; return *this; } // Function implementations for IfcUnitaryControlElement std::optional< ::Ifc4x3::IfcUnitaryControlElementTypeEnum::Value > Ifc4x3::IfcUnitaryControlElement::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3::IfcUnitaryControlElementTypeEnum::FromString(get_attribute_value(8)); } @@ -16329,7 +16329,7 @@ void Ifc4x3::IfcUnitaryControlElementType::setPredefinedType(const ::Ifc4x3::Ifc const ifcopenshell::entity& Ifc4x3::IfcUnitaryControlElementType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[1246]); } -Ifc4x3::IfcUnitaryControlElementType Ifc4x3::IfcUnitaryControlElementType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcUnitaryControlElementTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcUnitaryControlElementTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3::IfcUnitaryControlElementType Ifc4x3::IfcUnitaryControlElementType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcUnitaryControlElementTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcUnitaryControlElementTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcUnitaryEquipment std::optional< ::Ifc4x3::IfcUnitaryEquipmentTypeEnum::Value > Ifc4x3::IfcUnitaryEquipment::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3::IfcUnitaryEquipmentTypeEnum::FromString(get_attribute_value(8)); } @@ -16345,7 +16345,7 @@ void Ifc4x3::IfcUnitaryEquipmentType::setPredefinedType(const ::Ifc4x3::IfcUnita const ifcopenshell::entity& Ifc4x3::IfcUnitaryEquipmentType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[1249]); } -Ifc4x3::IfcUnitaryEquipmentType Ifc4x3::IfcUnitaryEquipmentType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcUnitaryEquipmentTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcUnitaryEquipmentTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3::IfcUnitaryEquipmentType Ifc4x3::IfcUnitaryEquipmentType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcUnitaryEquipmentTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcUnitaryEquipmentTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcValve std::optional< ::Ifc4x3::IfcValveTypeEnum::Value > Ifc4x3::IfcValve::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3::IfcValveTypeEnum::FromString(get_attribute_value(8)); } @@ -16361,10 +16361,10 @@ void Ifc4x3::IfcValveType::setPredefinedType(const ::Ifc4x3::IfcValveTypeEnum::V const ifcopenshell::entity& Ifc4x3::IfcValveType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[1257]); } -Ifc4x3::IfcValveType Ifc4x3::IfcValveType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcValveTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcValveTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3::IfcValveType Ifc4x3::IfcValveType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcValveTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcValveTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcVector -::Ifc4x3::IfcDirection Ifc4x3::IfcVector::Orientation() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3::IfcDirection>(); } +::Ifc4x3::IfcDirection Ifc4x3::IfcVector::Orientation() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3::IfcDirection>(); } void Ifc4x3::IfcVector::setOrientation(const ::Ifc4x3::IfcDirection& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } double Ifc4x3::IfcVector::Magnitude() const { double v = get_attribute_value(1); return v; } void Ifc4x3::IfcVector::setMagnitude(const double& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } @@ -16387,7 +16387,7 @@ void Ifc4x3::IfcVehicleType::setPredefinedType(const ::Ifc4x3::IfcVehicleTypeEnu const ifcopenshell::entity& Ifc4x3::IfcVehicleType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[1263]); } -Ifc4x3::IfcVehicleType Ifc4x3::IfcVehicleType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcVehicleTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcVehicleTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3::IfcVehicleType Ifc4x3::IfcVehicleType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcVehicleTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcVehicleTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcVertex @@ -16396,7 +16396,7 @@ const ifcopenshell::entity& Ifc4x3::IfcVertex::Class() { return *((ifcopenshell: Ifc4x3::IfcVertex Ifc4x3::IfcVertex::initialize() { ; return *this; } // Function implementations for IfcVertexLoop -::Ifc4x3::IfcVertex Ifc4x3::IfcVertexLoop::LoopVertex() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3::IfcVertex>(); } +::Ifc4x3::IfcVertex Ifc4x3::IfcVertexLoop::LoopVertex() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3::IfcVertex>(); } void Ifc4x3::IfcVertexLoop::setLoopVertex(const ::Ifc4x3::IfcVertex& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } @@ -16404,7 +16404,7 @@ const ifcopenshell::entity& Ifc4x3::IfcVertexLoop::Class() { return *((ifcopensh Ifc4x3::IfcVertexLoop Ifc4x3::IfcVertexLoop::initialize(::Ifc4x3::IfcVertex v1_LoopVertex) { set_attribute_value(0, (v1_LoopVertex));; return *this; } // Function implementations for IfcVertexPoint -::Ifc4x3::IfcPoint Ifc4x3::IfcVertexPoint::VertexGeometry() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3::IfcPoint>(); } +::Ifc4x3::IfcPoint Ifc4x3::IfcVertexPoint::VertexGeometry() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3::IfcPoint>(); } void Ifc4x3::IfcVertexPoint::setVertexGeometry(const ::Ifc4x3::IfcPoint& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } @@ -16425,7 +16425,7 @@ void Ifc4x3::IfcVibrationDamperType::setPredefinedType(const ::Ifc4x3::IfcVibrat const ifcopenshell::entity& Ifc4x3::IfcVibrationDamperType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[1269]); } -Ifc4x3::IfcVibrationDamperType Ifc4x3::IfcVibrationDamperType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcVibrationDamperTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcVibrationDamperTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3::IfcVibrationDamperType Ifc4x3::IfcVibrationDamperType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcVibrationDamperTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcVibrationDamperTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcVibrationIsolator std::optional< ::Ifc4x3::IfcVibrationIsolatorTypeEnum::Value > Ifc4x3::IfcVibrationIsolator::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3::IfcVibrationIsolatorTypeEnum::FromString(get_attribute_value(8)); } @@ -16441,7 +16441,7 @@ void Ifc4x3::IfcVibrationIsolatorType::setPredefinedType(const ::Ifc4x3::IfcVibr const ifcopenshell::entity& Ifc4x3::IfcVibrationIsolatorType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[1272]); } -Ifc4x3::IfcVibrationIsolatorType Ifc4x3::IfcVibrationIsolatorType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcVibrationIsolatorTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcVibrationIsolatorTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3::IfcVibrationIsolatorType Ifc4x3::IfcVibrationIsolatorType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcVibrationIsolatorTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcVibrationIsolatorTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcVirtualElement std::optional< ::Ifc4x3::IfcVirtualElementTypeEnum::Value > Ifc4x3::IfcVirtualElement::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3::IfcVirtualElementTypeEnum::FromString(get_attribute_value(8)); } @@ -16452,14 +16452,14 @@ const ifcopenshell::entity& Ifc4x3::IfcVirtualElement::Class() { return *((ifcop Ifc4x3::IfcVirtualElement Ifc4x3::IfcVirtualElement::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, ::Ifc4x3::IfcObjectPlacement v6_ObjectPlacement, ::Ifc4x3::IfcProductRepresentation v7_Representation, std::optional< std::string > v8_Tag, std::optional< ::Ifc4x3::IfcVirtualElementTypeEnum::Value > v9_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); }set_attribute_value(5, (v6_ObjectPlacement));set_attribute_value(6, (v7_Representation)); if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_PredefinedType) {set_attribute_value(8, (enumeration_reference(&::Ifc4x3::IfcVirtualElementTypeEnum::Class(),(size_t)*v9_PredefinedType))); }; return *this; } // Function implementations for IfcVirtualGridIntersection -std::vector< ::Ifc4x3::IfcGridAxis > Ifc4x3::IfcVirtualGridIntersection::IntersectingAxes() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3::IfcGridAxis>(es); } -void Ifc4x3::IfcVirtualGridIntersection::setIntersectingAxes(const std::vector< ::Ifc4x3::IfcGridAxis >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } +std::vector< ::Ifc4x3::IfcGridAxis > Ifc4x3::IfcVirtualGridIntersection::IntersectingAxes() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3::IfcGridAxis>(es); } +void Ifc4x3::IfcVirtualGridIntersection::setIntersectingAxes(const std::vector< ::Ifc4x3::IfcGridAxis >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } std::vector< double > /*[2:3]*/ Ifc4x3::IfcVirtualGridIntersection::OffsetDistances() const { std::vector< double > /*[2:3]*/ v = get_attribute_value(1); return v; } void Ifc4x3::IfcVirtualGridIntersection::setOffsetDistances(const std::vector< double > /*[2:3]*/& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } const ifcopenshell::entity& Ifc4x3::IfcVirtualGridIntersection::Class() { return *((ifcopenshell::entity*)IFC4X3_types[1276]); } -Ifc4x3::IfcVirtualGridIntersection Ifc4x3::IfcVirtualGridIntersection::initialize(std::vector< ::Ifc4x3::IfcGridAxis > v1_IntersectingAxes, std::vector< double > /*[2:3]*/ v2_OffsetDistances) { set_attribute_value(0, cast_vector(v1_IntersectingAxes));set_attribute_value(1, (v2_OffsetDistances));; return *this; } +Ifc4x3::IfcVirtualGridIntersection Ifc4x3::IfcVirtualGridIntersection::initialize(std::vector< ::Ifc4x3::IfcGridAxis > v1_IntersectingAxes, std::vector< double > /*[2:3]*/ v2_OffsetDistances) { set_attribute_value(0, cast_vector(v1_IntersectingAxes));set_attribute_value(1, (v2_OffsetDistances));; return *this; } // Function implementations for IfcVoidingFeature std::optional< ::Ifc4x3::IfcVoidingFeatureTypeEnum::Value > Ifc4x3::IfcVoidingFeature::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3::IfcVoidingFeatureTypeEnum::FromString(get_attribute_value(8)); } @@ -16489,7 +16489,7 @@ void Ifc4x3::IfcWallType::setPredefinedType(const ::Ifc4x3::IfcWallTypeEnum::Val const ifcopenshell::entity& Ifc4x3::IfcWallType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[1283]); } -Ifc4x3::IfcWallType Ifc4x3::IfcWallType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcWallTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcWallTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3::IfcWallType Ifc4x3::IfcWallType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcWallTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcWallTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcWasteTerminal std::optional< ::Ifc4x3::IfcWasteTerminalTypeEnum::Value > Ifc4x3::IfcWasteTerminal::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3::IfcWasteTerminalTypeEnum::FromString(get_attribute_value(8)); } @@ -16505,7 +16505,7 @@ void Ifc4x3::IfcWasteTerminalType::setPredefinedType(const ::Ifc4x3::IfcWasteTer const ifcopenshell::entity& Ifc4x3::IfcWasteTerminalType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[1289]); } -Ifc4x3::IfcWasteTerminalType Ifc4x3::IfcWasteTerminalType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcWasteTerminalTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcWasteTerminalTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3::IfcWasteTerminalType Ifc4x3::IfcWasteTerminalType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcWasteTerminalTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcWasteTerminalTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcWindow std::optional< double > Ifc4x3::IfcWindow::OverallHeight() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } double v = get_attribute_value(8); return v; } @@ -16540,7 +16540,7 @@ std::optional< double > Ifc4x3::IfcWindowLiningProperties::FirstMullionOffset() void Ifc4x3::IfcWindowLiningProperties::setFirstMullionOffset(const std::optional< double >& v) { if (v) {set_attribute_value(10, *v);} else {unset_attribute_value(10);} } std::optional< double > Ifc4x3::IfcWindowLiningProperties::SecondMullionOffset() const { if(get_attribute_value(11).isNull()) { return std::nullopt; } double v = get_attribute_value(11); return v; } void Ifc4x3::IfcWindowLiningProperties::setSecondMullionOffset(const std::optional< double >& v) { if (v) {set_attribute_value(11, *v);} else {unset_attribute_value(11);} } -::Ifc4x3::IfcShapeAspect Ifc4x3::IfcWindowLiningProperties::ShapeAspectStyle() const { if(get_attribute_value(12).isNull()) { return ::Ifc4x3::IfcShapeAspect{}; } return ((express::Base)(get_attribute_value(12))).as<::Ifc4x3::IfcShapeAspect>(); } +::Ifc4x3::IfcShapeAspect Ifc4x3::IfcWindowLiningProperties::ShapeAspectStyle() const { if(get_attribute_value(12).isNull()) { return ::Ifc4x3::IfcShapeAspect{}; } return ((express::base)(get_attribute_value(12))).as<::Ifc4x3::IfcShapeAspect>(); } void Ifc4x3::IfcWindowLiningProperties::setShapeAspectStyle(const ::Ifc4x3::IfcShapeAspect& v) { set_attribute_value(12, v);if constexpr (false)unset_attribute_value(12); } std::optional< double > Ifc4x3::IfcWindowLiningProperties::LiningOffset() const { if(get_attribute_value(13).isNull()) { return std::nullopt; } double v = get_attribute_value(13); return v; } void Ifc4x3::IfcWindowLiningProperties::setLiningOffset(const std::optional< double >& v) { if (v) {set_attribute_value(13, *v);} else {unset_attribute_value(13);} } @@ -16562,7 +16562,7 @@ std::optional< double > Ifc4x3::IfcWindowPanelProperties::FrameDepth() const { i void Ifc4x3::IfcWindowPanelProperties::setFrameDepth(const std::optional< double >& v) { if (v) {set_attribute_value(6, *v);} else {unset_attribute_value(6);} } std::optional< double > Ifc4x3::IfcWindowPanelProperties::FrameThickness() const { if(get_attribute_value(7).isNull()) { return std::nullopt; } double v = get_attribute_value(7); return v; } void Ifc4x3::IfcWindowPanelProperties::setFrameThickness(const std::optional< double >& v) { if (v) {set_attribute_value(7, *v);} else {unset_attribute_value(7);} } -::Ifc4x3::IfcShapeAspect Ifc4x3::IfcWindowPanelProperties::ShapeAspectStyle() const { if(get_attribute_value(8).isNull()) { return ::Ifc4x3::IfcShapeAspect{}; } return ((express::Base)(get_attribute_value(8))).as<::Ifc4x3::IfcShapeAspect>(); } +::Ifc4x3::IfcShapeAspect Ifc4x3::IfcWindowPanelProperties::ShapeAspectStyle() const { if(get_attribute_value(8).isNull()) { return ::Ifc4x3::IfcShapeAspect{}; } return ((express::base)(get_attribute_value(8))).as<::Ifc4x3::IfcShapeAspect>(); } void Ifc4x3::IfcWindowPanelProperties::setShapeAspectStyle(const ::Ifc4x3::IfcShapeAspect& v) { set_attribute_value(8, v);if constexpr (false)unset_attribute_value(8); } @@ -16581,25 +16581,25 @@ void Ifc4x3::IfcWindowType::setUserDefinedPartitioningType(const std::optional< const ifcopenshell::entity& Ifc4x3::IfcWindowType::Class() { return *((ifcopenshell::entity*)IFC4X3_types[1298]); } -Ifc4x3::IfcWindowType Ifc4x3::IfcWindowType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcWindowTypeEnum::Value v10_PredefinedType, ::Ifc4x3::IfcWindowTypePartitioningEnum::Value v11_PartitioningType, std::optional< bool > v12_ParameterTakesPrecedence, std::optional< std::string > v13_UserDefinedPartitioningType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcWindowTypeEnum::Class(),(size_t)v10_PredefinedType)));set_attribute_value(10, (enumeration_reference(&::Ifc4x3::IfcWindowTypePartitioningEnum::Class(),(size_t)v11_PartitioningType))); if (v12_ParameterTakesPrecedence) {set_attribute_value(11, (*v12_ParameterTakesPrecedence)); } if (v13_UserDefinedPartitioningType) {set_attribute_value(12, (*v13_UserDefinedPartitioningType)); }; return *this; } +Ifc4x3::IfcWindowType Ifc4x3::IfcWindowType::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3::IfcWindowTypeEnum::Value v10_PredefinedType, ::Ifc4x3::IfcWindowTypePartitioningEnum::Value v11_PartitioningType, std::optional< bool > v12_ParameterTakesPrecedence, std::optional< std::string > v13_UserDefinedPartitioningType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3::IfcWindowTypeEnum::Class(),(size_t)v10_PredefinedType)));set_attribute_value(10, (enumeration_reference(&::Ifc4x3::IfcWindowTypePartitioningEnum::Class(),(size_t)v11_PartitioningType))); if (v12_ParameterTakesPrecedence) {set_attribute_value(11, (*v12_ParameterTakesPrecedence)); } if (v13_UserDefinedPartitioningType) {set_attribute_value(12, (*v13_UserDefinedPartitioningType)); }; return *this; } // Function implementations for IfcWorkCalendar -std::optional< std::vector< ::Ifc4x3::IfcWorkTime > > Ifc4x3::IfcWorkCalendar::WorkingTimes() const { if(get_attribute_value(6).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(6); return cast_vector<::Ifc4x3::IfcWorkTime>(es); } -void Ifc4x3::IfcWorkCalendar::setWorkingTimes(const std::optional< std::vector< ::Ifc4x3::IfcWorkTime > >& v) { if (v) {set_attribute_value(6, cast_vector(*v));} else {unset_attribute_value(6);} } -std::optional< std::vector< ::Ifc4x3::IfcWorkTime > > Ifc4x3::IfcWorkCalendar::ExceptionTimes() const { if(get_attribute_value(7).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(7); return cast_vector<::Ifc4x3::IfcWorkTime>(es); } -void Ifc4x3::IfcWorkCalendar::setExceptionTimes(const std::optional< std::vector< ::Ifc4x3::IfcWorkTime > >& v) { if (v) {set_attribute_value(7, cast_vector(*v));} else {unset_attribute_value(7);} } +std::optional< std::vector< ::Ifc4x3::IfcWorkTime > > Ifc4x3::IfcWorkCalendar::WorkingTimes() const { if(get_attribute_value(6).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(6); return cast_vector<::Ifc4x3::IfcWorkTime>(es); } +void Ifc4x3::IfcWorkCalendar::setWorkingTimes(const std::optional< std::vector< ::Ifc4x3::IfcWorkTime > >& v) { if (v) {set_attribute_value(6, cast_vector(*v));} else {unset_attribute_value(6);} } +std::optional< std::vector< ::Ifc4x3::IfcWorkTime > > Ifc4x3::IfcWorkCalendar::ExceptionTimes() const { if(get_attribute_value(7).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(7); return cast_vector<::Ifc4x3::IfcWorkTime>(es); } +void Ifc4x3::IfcWorkCalendar::setExceptionTimes(const std::optional< std::vector< ::Ifc4x3::IfcWorkTime > >& v) { if (v) {set_attribute_value(7, cast_vector(*v));} else {unset_attribute_value(7);} } std::optional< ::Ifc4x3::IfcWorkCalendarTypeEnum::Value > Ifc4x3::IfcWorkCalendar::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3::IfcWorkCalendarTypeEnum::FromString(get_attribute_value(8)); } void Ifc4x3::IfcWorkCalendar::setPredefinedType(const std::optional< ::Ifc4x3::IfcWorkCalendarTypeEnum::Value >& v) { if (v) {set_attribute_value(8, enumeration_reference(&::Ifc4x3::IfcWorkCalendarTypeEnum::Class(), (size_t) *v));} else {unset_attribute_value(8);} } const ifcopenshell::entity& Ifc4x3::IfcWorkCalendar::Class() { return *((ifcopenshell::entity*)IFC4X3_types[1301]); } -Ifc4x3::IfcWorkCalendar Ifc4x3::IfcWorkCalendar::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, std::optional< std::string > v6_Identification, std::optional< std::vector< ::Ifc4x3::IfcWorkTime > > v7_WorkingTimes, std::optional< std::vector< ::Ifc4x3::IfcWorkTime > > v8_ExceptionTimes, std::optional< ::Ifc4x3::IfcWorkCalendarTypeEnum::Value > v9_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); } if (v6_Identification) {set_attribute_value(5, (*v6_Identification)); } if (v7_WorkingTimes) {set_attribute_value(6, cast_vector(*v7_WorkingTimes)); } if (v8_ExceptionTimes) {set_attribute_value(7, cast_vector(*v8_ExceptionTimes)); } if (v9_PredefinedType) {set_attribute_value(8, (enumeration_reference(&::Ifc4x3::IfcWorkCalendarTypeEnum::Class(),(size_t)*v9_PredefinedType))); }; return *this; } +Ifc4x3::IfcWorkCalendar Ifc4x3::IfcWorkCalendar::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, std::optional< std::string > v6_Identification, std::optional< std::vector< ::Ifc4x3::IfcWorkTime > > v7_WorkingTimes, std::optional< std::vector< ::Ifc4x3::IfcWorkTime > > v8_ExceptionTimes, std::optional< ::Ifc4x3::IfcWorkCalendarTypeEnum::Value > v9_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); } if (v6_Identification) {set_attribute_value(5, (*v6_Identification)); } if (v7_WorkingTimes) {set_attribute_value(6, cast_vector(*v7_WorkingTimes)); } if (v8_ExceptionTimes) {set_attribute_value(7, cast_vector(*v8_ExceptionTimes)); } if (v9_PredefinedType) {set_attribute_value(8, (enumeration_reference(&::Ifc4x3::IfcWorkCalendarTypeEnum::Class(),(size_t)*v9_PredefinedType))); }; return *this; } // Function implementations for IfcWorkControl std::string Ifc4x3::IfcWorkControl::CreationDate() const { std::string v = get_attribute_value(6); return v; } void Ifc4x3::IfcWorkControl::setCreationDate(const std::string& v) { set_attribute_value(6, v);if constexpr (false)unset_attribute_value(6); } -std::optional< std::vector< ::Ifc4x3::IfcPerson > > Ifc4x3::IfcWorkControl::Creators() const { if(get_attribute_value(7).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(7); return cast_vector<::Ifc4x3::IfcPerson>(es); } -void Ifc4x3::IfcWorkControl::setCreators(const std::optional< std::vector< ::Ifc4x3::IfcPerson > >& v) { if (v) {set_attribute_value(7, cast_vector(*v));} else {unset_attribute_value(7);} } +std::optional< std::vector< ::Ifc4x3::IfcPerson > > Ifc4x3::IfcWorkControl::Creators() const { if(get_attribute_value(7).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(7); return cast_vector<::Ifc4x3::IfcPerson>(es); } +void Ifc4x3::IfcWorkControl::setCreators(const std::optional< std::vector< ::Ifc4x3::IfcPerson > >& v) { if (v) {set_attribute_value(7, cast_vector(*v));} else {unset_attribute_value(7);} } std::optional< std::string > Ifc4x3::IfcWorkControl::Purpose() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } std::string v = get_attribute_value(8); return v; } void Ifc4x3::IfcWorkControl::setPurpose(const std::optional< std::string >& v) { if (v) {set_attribute_value(8, *v);} else {unset_attribute_value(8);} } std::optional< std::string > Ifc4x3::IfcWorkControl::Duration() const { if(get_attribute_value(9).isNull()) { return std::nullopt; } std::string v = get_attribute_value(9); return v; } @@ -16613,7 +16613,7 @@ void Ifc4x3::IfcWorkControl::setFinishTime(const std::optional< std::string >& v const ifcopenshell::entity& Ifc4x3::IfcWorkControl::Class() { return *((ifcopenshell::entity*)IFC4X3_types[1303]); } -Ifc4x3::IfcWorkControl Ifc4x3::IfcWorkControl::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, std::optional< std::string > v6_Identification, std::string v7_CreationDate, std::optional< std::vector< ::Ifc4x3::IfcPerson > > v8_Creators, std::optional< std::string > v9_Purpose, std::optional< std::string > v10_Duration, std::optional< std::string > v11_TotalFloat, std::string v12_StartTime, std::optional< std::string > v13_FinishTime) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); } if (v6_Identification) {set_attribute_value(5, (*v6_Identification)); }set_attribute_value(6, (v7_CreationDate)); if (v8_Creators) {set_attribute_value(7, cast_vector(*v8_Creators)); } if (v9_Purpose) {set_attribute_value(8, (*v9_Purpose)); } if (v10_Duration) {set_attribute_value(9, (*v10_Duration)); } if (v11_TotalFloat) {set_attribute_value(10, (*v11_TotalFloat)); }set_attribute_value(11, (v12_StartTime)); if (v13_FinishTime) {set_attribute_value(12, (*v13_FinishTime)); }; return *this; } +Ifc4x3::IfcWorkControl Ifc4x3::IfcWorkControl::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, std::optional< std::string > v6_Identification, std::string v7_CreationDate, std::optional< std::vector< ::Ifc4x3::IfcPerson > > v8_Creators, std::optional< std::string > v9_Purpose, std::optional< std::string > v10_Duration, std::optional< std::string > v11_TotalFloat, std::string v12_StartTime, std::optional< std::string > v13_FinishTime) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); } if (v6_Identification) {set_attribute_value(5, (*v6_Identification)); }set_attribute_value(6, (v7_CreationDate)); if (v8_Creators) {set_attribute_value(7, cast_vector(*v8_Creators)); } if (v9_Purpose) {set_attribute_value(8, (*v9_Purpose)); } if (v10_Duration) {set_attribute_value(9, (*v10_Duration)); } if (v11_TotalFloat) {set_attribute_value(10, (*v11_TotalFloat)); }set_attribute_value(11, (v12_StartTime)); if (v13_FinishTime) {set_attribute_value(12, (*v13_FinishTime)); }; return *this; } // Function implementations for IfcWorkPlan std::optional< ::Ifc4x3::IfcWorkPlanTypeEnum::Value > Ifc4x3::IfcWorkPlan::PredefinedType() const { if(get_attribute_value(13).isNull()) { return std::nullopt; } return ::Ifc4x3::IfcWorkPlanTypeEnum::FromString(get_attribute_value(13)); } @@ -16621,7 +16621,7 @@ void Ifc4x3::IfcWorkPlan::setPredefinedType(const std::optional< ::Ifc4x3::IfcWo const ifcopenshell::entity& Ifc4x3::IfcWorkPlan::Class() { return *((ifcopenshell::entity*)IFC4X3_types[1304]); } -Ifc4x3::IfcWorkPlan Ifc4x3::IfcWorkPlan::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, std::optional< std::string > v6_Identification, std::string v7_CreationDate, std::optional< std::vector< ::Ifc4x3::IfcPerson > > v8_Creators, std::optional< std::string > v9_Purpose, std::optional< std::string > v10_Duration, std::optional< std::string > v11_TotalFloat, std::string v12_StartTime, std::optional< std::string > v13_FinishTime, std::optional< ::Ifc4x3::IfcWorkPlanTypeEnum::Value > v14_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); } if (v6_Identification) {set_attribute_value(5, (*v6_Identification)); }set_attribute_value(6, (v7_CreationDate)); if (v8_Creators) {set_attribute_value(7, cast_vector(*v8_Creators)); } if (v9_Purpose) {set_attribute_value(8, (*v9_Purpose)); } if (v10_Duration) {set_attribute_value(9, (*v10_Duration)); } if (v11_TotalFloat) {set_attribute_value(10, (*v11_TotalFloat)); }set_attribute_value(11, (v12_StartTime)); if (v13_FinishTime) {set_attribute_value(12, (*v13_FinishTime)); } if (v14_PredefinedType) {set_attribute_value(13, (enumeration_reference(&::Ifc4x3::IfcWorkPlanTypeEnum::Class(),(size_t)*v14_PredefinedType))); }; return *this; } +Ifc4x3::IfcWorkPlan Ifc4x3::IfcWorkPlan::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, std::optional< std::string > v6_Identification, std::string v7_CreationDate, std::optional< std::vector< ::Ifc4x3::IfcPerson > > v8_Creators, std::optional< std::string > v9_Purpose, std::optional< std::string > v10_Duration, std::optional< std::string > v11_TotalFloat, std::string v12_StartTime, std::optional< std::string > v13_FinishTime, std::optional< ::Ifc4x3::IfcWorkPlanTypeEnum::Value > v14_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); } if (v6_Identification) {set_attribute_value(5, (*v6_Identification)); }set_attribute_value(6, (v7_CreationDate)); if (v8_Creators) {set_attribute_value(7, cast_vector(*v8_Creators)); } if (v9_Purpose) {set_attribute_value(8, (*v9_Purpose)); } if (v10_Duration) {set_attribute_value(9, (*v10_Duration)); } if (v11_TotalFloat) {set_attribute_value(10, (*v11_TotalFloat)); }set_attribute_value(11, (v12_StartTime)); if (v13_FinishTime) {set_attribute_value(12, (*v13_FinishTime)); } if (v14_PredefinedType) {set_attribute_value(13, (enumeration_reference(&::Ifc4x3::IfcWorkPlanTypeEnum::Class(),(size_t)*v14_PredefinedType))); }; return *this; } // Function implementations for IfcWorkSchedule std::optional< ::Ifc4x3::IfcWorkScheduleTypeEnum::Value > Ifc4x3::IfcWorkSchedule::PredefinedType() const { if(get_attribute_value(13).isNull()) { return std::nullopt; } return ::Ifc4x3::IfcWorkScheduleTypeEnum::FromString(get_attribute_value(13)); } @@ -16629,10 +16629,10 @@ void Ifc4x3::IfcWorkSchedule::setPredefinedType(const std::optional< ::Ifc4x3::I const ifcopenshell::entity& Ifc4x3::IfcWorkSchedule::Class() { return *((ifcopenshell::entity*)IFC4X3_types[1306]); } -Ifc4x3::IfcWorkSchedule Ifc4x3::IfcWorkSchedule::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, std::optional< std::string > v6_Identification, std::string v7_CreationDate, std::optional< std::vector< ::Ifc4x3::IfcPerson > > v8_Creators, std::optional< std::string > v9_Purpose, std::optional< std::string > v10_Duration, std::optional< std::string > v11_TotalFloat, std::string v12_StartTime, std::optional< std::string > v13_FinishTime, std::optional< ::Ifc4x3::IfcWorkScheduleTypeEnum::Value > v14_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); } if (v6_Identification) {set_attribute_value(5, (*v6_Identification)); }set_attribute_value(6, (v7_CreationDate)); if (v8_Creators) {set_attribute_value(7, cast_vector(*v8_Creators)); } if (v9_Purpose) {set_attribute_value(8, (*v9_Purpose)); } if (v10_Duration) {set_attribute_value(9, (*v10_Duration)); } if (v11_TotalFloat) {set_attribute_value(10, (*v11_TotalFloat)); }set_attribute_value(11, (v12_StartTime)); if (v13_FinishTime) {set_attribute_value(12, (*v13_FinishTime)); } if (v14_PredefinedType) {set_attribute_value(13, (enumeration_reference(&::Ifc4x3::IfcWorkScheduleTypeEnum::Class(),(size_t)*v14_PredefinedType))); }; return *this; } +Ifc4x3::IfcWorkSchedule Ifc4x3::IfcWorkSchedule::initialize(std::string v1_GlobalId, ::Ifc4x3::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, std::optional< std::string > v6_Identification, std::string v7_CreationDate, std::optional< std::vector< ::Ifc4x3::IfcPerson > > v8_Creators, std::optional< std::string > v9_Purpose, std::optional< std::string > v10_Duration, std::optional< std::string > v11_TotalFloat, std::string v12_StartTime, std::optional< std::string > v13_FinishTime, std::optional< ::Ifc4x3::IfcWorkScheduleTypeEnum::Value > v14_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); } if (v6_Identification) {set_attribute_value(5, (*v6_Identification)); }set_attribute_value(6, (v7_CreationDate)); if (v8_Creators) {set_attribute_value(7, cast_vector(*v8_Creators)); } if (v9_Purpose) {set_attribute_value(8, (*v9_Purpose)); } if (v10_Duration) {set_attribute_value(9, (*v10_Duration)); } if (v11_TotalFloat) {set_attribute_value(10, (*v11_TotalFloat)); }set_attribute_value(11, (v12_StartTime)); if (v13_FinishTime) {set_attribute_value(12, (*v13_FinishTime)); } if (v14_PredefinedType) {set_attribute_value(13, (enumeration_reference(&::Ifc4x3::IfcWorkScheduleTypeEnum::Class(),(size_t)*v14_PredefinedType))); }; return *this; } // Function implementations for IfcWorkTime -::Ifc4x3::IfcRecurrencePattern Ifc4x3::IfcWorkTime::RecurrencePattern() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3::IfcRecurrencePattern{}; } return ((express::Base)(get_attribute_value(3))).as<::Ifc4x3::IfcRecurrencePattern>(); } +::Ifc4x3::IfcRecurrencePattern Ifc4x3::IfcWorkTime::RecurrencePattern() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3::IfcRecurrencePattern{}; } return ((express::base)(get_attribute_value(3))).as<::Ifc4x3::IfcRecurrencePattern>(); } void Ifc4x3::IfcWorkTime::setRecurrencePattern(const ::Ifc4x3::IfcRecurrencePattern& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } std::optional< std::string > Ifc4x3::IfcWorkTime::StartDate() const { if(get_attribute_value(4).isNull()) { return std::nullopt; } std::string v = get_attribute_value(4); return v; } void Ifc4x3::IfcWorkTime::setStartDate(const std::optional< std::string >& v) { if (v) {set_attribute_value(4, *v);} else {unset_attribute_value(4);} } diff --git a/src/ifcparse/schemas/Ifc4x3.h b/src/ifcparse/schemas/Ifc4x3.h index e80aa93d63..78d674d79b 100644 --- a/src/ifcparse/schemas/Ifc4x3.h +++ b/src/ifcparse/schemas/Ifc4x3.h @@ -65,28 +65,28 @@ class IfcActionRequest; class IfcActor; class IfcActorRole; class IfcActuator; c /// IfcOrganization An organization. /// IfcPerson A person. /// IfcPersonAndOrganization A person related to an organization. -class IFC_SCHEMA_API IfcActorSelect : public express::Select { +class IFC_SCHEMA_API IfcActorSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcOrganization as() const { return express::Base::as(); } + // IfcOrganization as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPerson as() const { return express::Base::as(); } + // IfcPerson as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPersonAndOrganization as() const { return express::Base::as(); } + // IfcPersonAndOrganization as() const { return express::base::as(); } - IfcActorSelect(const IfcOrganization& c) : express::Select(c) {}; + IfcActorSelect(const IfcOrganization& c) : express::select(c) {}; - IfcActorSelect(const IfcPerson& c) : express::Select(c) {}; + IfcActorSelect(const IfcPerson& c) : express::select(c) {}; - IfcActorSelect(const IfcPersonAndOrganization& c) : express::Select(c) {}; + IfcActorSelect(const IfcPersonAndOrganization& c) : express::select(c) {}; }; /// IfcAppliedValueSelect defines the selection of whether a value (expressed as a ratio) or an amount should be used as the value for an IfcAppliedValue. @@ -103,694 +103,694 @@ public: /// Selecting IfcMeasureWithUnit allows the specification of both the actual figure for the value together with the currency in which the value is represented. /// Selecting IfcMonetaryMeasure allows the specification only of the value, the currency being as set by the global context /// Selecting IfcRatioMeasure assumes that the amount is a percentage or other REAL number. Note that if the amount is normally specified as -20%, then this figure will need to be converted to a multiplier of 0.8 -class IFC_SCHEMA_API IfcAppliedValueSelect : public express::Select { +class IFC_SCHEMA_API IfcAppliedValueSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMeasureWithUnit as() const { return express::Base::as(); } + // IfcMeasureWithUnit as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcReference as() const { return express::Base::as(); } + // IfcReference as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcValue as() const { return express::Base::as(); } + // IfcValue as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcDerivedMeasureValue as() const { return express::Base::as(); } + // IfcDerivedMeasureValue as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcAbsorbedDoseMeasure as() const { return express::Base::as(); } + // IfcAbsorbedDoseMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcAccelerationMeasure as() const { return express::Base::as(); } + // IfcAccelerationMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcAngularVelocityMeasure as() const { return express::Base::as(); } + // IfcAngularVelocityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcAreaDensityMeasure as() const { return express::Base::as(); } + // IfcAreaDensityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcCompoundPlaneAngleMeasure as() const { return express::Base::as(); } + // IfcCompoundPlaneAngleMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcCurvatureMeasure as() const { return express::Base::as(); } + // IfcCurvatureMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcDoseEquivalentMeasure as() const { return express::Base::as(); } + // IfcDoseEquivalentMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcDynamicViscosityMeasure as() const { return express::Base::as(); } + // IfcDynamicViscosityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcElectricCapacitanceMeasure as() const { return express::Base::as(); } + // IfcElectricCapacitanceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcElectricChargeMeasure as() const { return express::Base::as(); } + // IfcElectricChargeMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcElectricConductanceMeasure as() const { return express::Base::as(); } + // IfcElectricConductanceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcElectricResistanceMeasure as() const { return express::Base::as(); } + // IfcElectricResistanceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcElectricVoltageMeasure as() const { return express::Base::as(); } + // IfcElectricVoltageMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcEnergyMeasure as() const { return express::Base::as(); } + // IfcEnergyMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcForceMeasure as() const { return express::Base::as(); } + // IfcForceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcFrequencyMeasure as() const { return express::Base::as(); } + // IfcFrequencyMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcHeatFluxDensityMeasure as() const { return express::Base::as(); } + // IfcHeatFluxDensityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcHeatingValueMeasure as() const { return express::Base::as(); } + // IfcHeatingValueMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcIlluminanceMeasure as() const { return express::Base::as(); } + // IfcIlluminanceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcInductanceMeasure as() const { return express::Base::as(); } + // IfcInductanceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcIntegerCountRateMeasure as() const { return express::Base::as(); } + // IfcIntegerCountRateMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcIonConcentrationMeasure as() const { return express::Base::as(); } + // IfcIonConcentrationMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcIsothermalMoistureCapacityMeasure as() const { return express::Base::as(); } + // IfcIsothermalMoistureCapacityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcKinematicViscosityMeasure as() const { return express::Base::as(); } + // IfcKinematicViscosityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLinearForceMeasure as() const { return express::Base::as(); } + // IfcLinearForceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLinearMomentMeasure as() const { return express::Base::as(); } + // IfcLinearMomentMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLinearStiffnessMeasure as() const { return express::Base::as(); } + // IfcLinearStiffnessMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLinearVelocityMeasure as() const { return express::Base::as(); } + // IfcLinearVelocityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLuminousFluxMeasure as() const { return express::Base::as(); } + // IfcLuminousFluxMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLuminousIntensityDistributionMeasure as() const { return express::Base::as(); } + // IfcLuminousIntensityDistributionMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMagneticFluxDensityMeasure as() const { return express::Base::as(); } + // IfcMagneticFluxDensityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMagneticFluxMeasure as() const { return express::Base::as(); } + // IfcMagneticFluxMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMassDensityMeasure as() const { return express::Base::as(); } + // IfcMassDensityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMassFlowRateMeasure as() const { return express::Base::as(); } + // IfcMassFlowRateMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMassPerLengthMeasure as() const { return express::Base::as(); } + // IfcMassPerLengthMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcModulusOfElasticityMeasure as() const { return express::Base::as(); } + // IfcModulusOfElasticityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcModulusOfLinearSubgradeReactionMeasure as() const { return express::Base::as(); } + // IfcModulusOfLinearSubgradeReactionMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcModulusOfRotationalSubgradeReactionMeasure as() const { return express::Base::as(); } + // IfcModulusOfRotationalSubgradeReactionMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcModulusOfSubgradeReactionMeasure as() const { return express::Base::as(); } + // IfcModulusOfSubgradeReactionMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMoistureDiffusivityMeasure as() const { return express::Base::as(); } + // IfcMoistureDiffusivityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMolecularWeightMeasure as() const { return express::Base::as(); } + // IfcMolecularWeightMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMomentOfInertiaMeasure as() const { return express::Base::as(); } + // IfcMomentOfInertiaMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMonetaryMeasure as() const { return express::Base::as(); } + // IfcMonetaryMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPHMeasure as() const { return express::Base::as(); } + // IfcPHMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPlanarForceMeasure as() const { return express::Base::as(); } + // IfcPlanarForceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPowerMeasure as() const { return express::Base::as(); } + // IfcPowerMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPressureMeasure as() const { return express::Base::as(); } + // IfcPressureMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcRadioActivityMeasure as() const { return express::Base::as(); } + // IfcRadioActivityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcRotationalFrequencyMeasure as() const { return express::Base::as(); } + // IfcRotationalFrequencyMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcRotationalMassMeasure as() const { return express::Base::as(); } + // IfcRotationalMassMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcRotationalStiffnessMeasure as() const { return express::Base::as(); } + // IfcRotationalStiffnessMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSectionModulusMeasure as() const { return express::Base::as(); } + // IfcSectionModulusMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSectionalAreaIntegralMeasure as() const { return express::Base::as(); } + // IfcSectionalAreaIntegralMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcShearModulusMeasure as() const { return express::Base::as(); } + // IfcShearModulusMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSoundPowerLevelMeasure as() const { return express::Base::as(); } + // IfcSoundPowerLevelMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSoundPowerMeasure as() const { return express::Base::as(); } + // IfcSoundPowerMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSoundPressureLevelMeasure as() const { return express::Base::as(); } + // IfcSoundPressureLevelMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSoundPressureMeasure as() const { return express::Base::as(); } + // IfcSoundPressureMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSpecificHeatCapacityMeasure as() const { return express::Base::as(); } + // IfcSpecificHeatCapacityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcTemperatureGradientMeasure as() const { return express::Base::as(); } + // IfcTemperatureGradientMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcTemperatureRateOfChangeMeasure as() const { return express::Base::as(); } + // IfcTemperatureRateOfChangeMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcThermalAdmittanceMeasure as() const { return express::Base::as(); } + // IfcThermalAdmittanceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcThermalConductivityMeasure as() const { return express::Base::as(); } + // IfcThermalConductivityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcThermalExpansionCoefficientMeasure as() const { return express::Base::as(); } + // IfcThermalExpansionCoefficientMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcThermalResistanceMeasure as() const { return express::Base::as(); } + // IfcThermalResistanceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcThermalTransmittanceMeasure as() const { return express::Base::as(); } + // IfcThermalTransmittanceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcTorqueMeasure as() const { return express::Base::as(); } + // IfcTorqueMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcVaporPermeabilityMeasure as() const { return express::Base::as(); } + // IfcVaporPermeabilityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcVolumetricFlowRateMeasure as() const { return express::Base::as(); } + // IfcVolumetricFlowRateMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcWarpingConstantMeasure as() const { return express::Base::as(); } + // IfcWarpingConstantMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcWarpingMomentMeasure as() const { return express::Base::as(); } + // IfcWarpingMomentMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMeasureValue as() const { return express::Base::as(); } + // IfcMeasureValue as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcAmountOfSubstanceMeasure as() const { return express::Base::as(); } + // IfcAmountOfSubstanceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcAreaMeasure as() const { return express::Base::as(); } + // IfcAreaMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcComplexNumber as() const { return express::Base::as(); } + // IfcComplexNumber as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcContextDependentMeasure as() const { return express::Base::as(); } + // IfcContextDependentMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcCountMeasure as() const { return express::Base::as(); } + // IfcCountMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcDescriptiveMeasure as() const { return express::Base::as(); } + // IfcDescriptiveMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcElectricCurrentMeasure as() const { return express::Base::as(); } + // IfcElectricCurrentMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLengthMeasure as() const { return express::Base::as(); } + // IfcLengthMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLuminousIntensityMeasure as() const { return express::Base::as(); } + // IfcLuminousIntensityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMassMeasure as() const { return express::Base::as(); } + // IfcMassMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcNonNegativeLengthMeasure as() const { return express::Base::as(); } + // IfcNonNegativeLengthMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcNormalisedRatioMeasure as() const { return express::Base::as(); } + // IfcNormalisedRatioMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcNumericMeasure as() const { return express::Base::as(); } + // IfcNumericMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcParameterValue as() const { return express::Base::as(); } + // IfcParameterValue as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPlaneAngleMeasure as() const { return express::Base::as(); } + // IfcPlaneAngleMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPositiveLengthMeasure as() const { return express::Base::as(); } + // IfcPositiveLengthMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPositivePlaneAngleMeasure as() const { return express::Base::as(); } + // IfcPositivePlaneAngleMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPositiveRatioMeasure as() const { return express::Base::as(); } + // IfcPositiveRatioMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcRatioMeasure as() const { return express::Base::as(); } + // IfcRatioMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSolidAngleMeasure as() const { return express::Base::as(); } + // IfcSolidAngleMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcThermodynamicTemperatureMeasure as() const { return express::Base::as(); } + // IfcThermodynamicTemperatureMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcTimeMeasure as() const { return express::Base::as(); } + // IfcTimeMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcVolumeMeasure as() const { return express::Base::as(); } + // IfcVolumeMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSimpleValue as() const { return express::Base::as(); } + // IfcSimpleValue as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcBinary as() const { return express::Base::as(); } + // IfcBinary as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcBoolean as() const { return express::Base::as(); } + // IfcBoolean as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcDate as() const { return express::Base::as(); } + // IfcDate as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcDateTime as() const { return express::Base::as(); } + // IfcDateTime as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcDuration as() const { return express::Base::as(); } + // IfcDuration as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcIdentifier as() const { return express::Base::as(); } + // IfcIdentifier as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcInteger as() const { return express::Base::as(); } + // IfcInteger as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLabel as() const { return express::Base::as(); } + // IfcLabel as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLogical as() const { return express::Base::as(); } + // IfcLogical as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPositiveInteger as() const { return express::Base::as(); } + // IfcPositiveInteger as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcReal as() const { return express::Base::as(); } + // IfcReal as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcText as() const { return express::Base::as(); } + // IfcText as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcTime as() const { return express::Base::as(); } + // IfcTime as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcTimeStamp as() const { return express::Base::as(); } + // IfcTimeStamp as() const { return express::base::as(); } - IfcAppliedValueSelect(const IfcMeasureWithUnit& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcMeasureWithUnit& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcReference& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcReference& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcValue& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcValue& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcDerivedMeasureValue& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcDerivedMeasureValue& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcAbsorbedDoseMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcAbsorbedDoseMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcAccelerationMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcAccelerationMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcAngularVelocityMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcAngularVelocityMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcAreaDensityMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcAreaDensityMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcCompoundPlaneAngleMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcCompoundPlaneAngleMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcCurvatureMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcCurvatureMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcDoseEquivalentMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcDoseEquivalentMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcDynamicViscosityMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcDynamicViscosityMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcElectricCapacitanceMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcElectricCapacitanceMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcElectricChargeMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcElectricChargeMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcElectricConductanceMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcElectricConductanceMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcElectricResistanceMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcElectricResistanceMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcElectricVoltageMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcElectricVoltageMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcEnergyMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcEnergyMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcForceMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcForceMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcFrequencyMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcFrequencyMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcHeatFluxDensityMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcHeatFluxDensityMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcHeatingValueMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcHeatingValueMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcIlluminanceMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcIlluminanceMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcInductanceMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcInductanceMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcIntegerCountRateMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcIntegerCountRateMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcIonConcentrationMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcIonConcentrationMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcIsothermalMoistureCapacityMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcIsothermalMoistureCapacityMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcKinematicViscosityMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcKinematicViscosityMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcLinearForceMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcLinearForceMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcLinearMomentMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcLinearMomentMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcLinearStiffnessMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcLinearStiffnessMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcLinearVelocityMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcLinearVelocityMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcLuminousFluxMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcLuminousFluxMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcLuminousIntensityDistributionMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcLuminousIntensityDistributionMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcMagneticFluxDensityMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcMagneticFluxDensityMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcMagneticFluxMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcMagneticFluxMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcMassDensityMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcMassDensityMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcMassFlowRateMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcMassFlowRateMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcMassPerLengthMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcMassPerLengthMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcModulusOfElasticityMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcModulusOfElasticityMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcModulusOfLinearSubgradeReactionMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcModulusOfLinearSubgradeReactionMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcModulusOfRotationalSubgradeReactionMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcModulusOfRotationalSubgradeReactionMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcModulusOfSubgradeReactionMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcModulusOfSubgradeReactionMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcMoistureDiffusivityMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcMoistureDiffusivityMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcMolecularWeightMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcMolecularWeightMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcMomentOfInertiaMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcMomentOfInertiaMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcMonetaryMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcMonetaryMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcPHMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcPHMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcPlanarForceMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcPlanarForceMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcPowerMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcPowerMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcPressureMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcPressureMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcRadioActivityMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcRadioActivityMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcRotationalFrequencyMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcRotationalFrequencyMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcRotationalMassMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcRotationalMassMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcRotationalStiffnessMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcRotationalStiffnessMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcSectionModulusMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcSectionModulusMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcSectionalAreaIntegralMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcSectionalAreaIntegralMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcShearModulusMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcShearModulusMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcSoundPowerLevelMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcSoundPowerLevelMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcSoundPowerMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcSoundPowerMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcSoundPressureLevelMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcSoundPressureLevelMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcSoundPressureMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcSoundPressureMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcSpecificHeatCapacityMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcSpecificHeatCapacityMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcTemperatureGradientMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcTemperatureGradientMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcTemperatureRateOfChangeMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcTemperatureRateOfChangeMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcThermalAdmittanceMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcThermalAdmittanceMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcThermalConductivityMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcThermalConductivityMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcThermalExpansionCoefficientMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcThermalExpansionCoefficientMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcThermalResistanceMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcThermalResistanceMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcThermalTransmittanceMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcThermalTransmittanceMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcTorqueMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcTorqueMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcVaporPermeabilityMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcVaporPermeabilityMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcVolumetricFlowRateMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcVolumetricFlowRateMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcWarpingConstantMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcWarpingConstantMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcWarpingMomentMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcWarpingMomentMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcMeasureValue& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcMeasureValue& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcAmountOfSubstanceMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcAmountOfSubstanceMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcAreaMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcAreaMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcComplexNumber& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcComplexNumber& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcContextDependentMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcContextDependentMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcCountMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcCountMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcDescriptiveMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcDescriptiveMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcElectricCurrentMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcElectricCurrentMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcLengthMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcLengthMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcLuminousIntensityMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcLuminousIntensityMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcMassMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcMassMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcNonNegativeLengthMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcNonNegativeLengthMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcNormalisedRatioMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcNormalisedRatioMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcNumericMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcNumericMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcParameterValue& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcParameterValue& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcPlaneAngleMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcPlaneAngleMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcPositiveLengthMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcPositiveLengthMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcPositivePlaneAngleMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcPositivePlaneAngleMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcPositiveRatioMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcPositiveRatioMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcRatioMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcRatioMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcSolidAngleMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcSolidAngleMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcThermodynamicTemperatureMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcThermodynamicTemperatureMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcTimeMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcTimeMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcVolumeMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcVolumeMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcSimpleValue& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcSimpleValue& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcBinary& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcBinary& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcBoolean& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcBoolean& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcDate& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcDate& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcDateTime& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcDateTime& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcDuration& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcDuration& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcIdentifier& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcIdentifier& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcInteger& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcInteger& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcLabel& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcLabel& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcLogical& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcLogical& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcPositiveInteger& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcPositiveInteger& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcReal& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcReal& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcText& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcText& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcTime& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcTime& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcTimeStamp& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcTimeStamp& c) : express::select(c) {}; }; /// Definition from ISO/CD 10303-42:1992: This select type collects together both versions of the placement as used in two dimensional or in three dimensional Cartesian space. This enables entities requiring this information to reference them without specifying the space dimensionality. @@ -798,43 +798,43 @@ public: /// NOTE: Corresponding STEP type: axis2_placement, please refer to ISO/IS 10303-42:1994, p. 19 for the final definition of the formal standard. /// /// HISTORY: New type in IFC Release 1.5 -class IFC_SCHEMA_API IfcAxis2Placement : public express::Select { +class IFC_SCHEMA_API IfcAxis2Placement : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcAxis2Placement2D as() const { return express::Base::as(); } + // IfcAxis2Placement2D as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcAxis2Placement3D as() const { return express::Base::as(); } + // IfcAxis2Placement3D as() const { return express::base::as(); } - IfcAxis2Placement(const IfcAxis2Placement2D& c) : express::Select(c) {}; + IfcAxis2Placement(const IfcAxis2Placement2D& c) : express::select(c) {}; - IfcAxis2Placement(const IfcAxis2Placement3D& c) : express::Select(c) {}; + IfcAxis2Placement(const IfcAxis2Placement3D& c) : express::select(c) {}; }; /// Definition from IAI: A select type for selecting between simple measure types for reinforcement bending parameters. /// /// HISTORY New type in IFC Release 2x4 -class IFC_SCHEMA_API IfcBendingParameterSelect : public express::Select { +class IFC_SCHEMA_API IfcBendingParameterSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLengthMeasure as() const { return express::Base::as(); } + // IfcLengthMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPlaneAngleMeasure as() const { return express::Base::as(); } + // IfcPlaneAngleMeasure as() const { return express::base::as(); } - IfcBendingParameterSelect(const IfcLengthMeasure& c) : express::Select(c) {}; + IfcBendingParameterSelect(const IfcLengthMeasure& c) : express::select(c) {}; - IfcBendingParameterSelect(const IfcPlaneAngleMeasure& c) : express::Select(c) {}; + IfcBendingParameterSelect(const IfcPlaneAngleMeasure& c) : express::select(c) {}; }; /// Definition from ISO/CD 10303-42:1992: This select type identifies @@ -853,40 +853,40 @@ public: /// (IfcSolidModel) are defined for being valid Boolean operands. /// /// HISTORY: New Type in IFC Release 1.5.1 -class IFC_SCHEMA_API IfcBooleanOperand : public express::Select { +class IFC_SCHEMA_API IfcBooleanOperand : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcBooleanResult as() const { return express::Base::as(); } + // IfcBooleanResult as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcCsgPrimitive3D as() const { return express::Base::as(); } + // IfcCsgPrimitive3D as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcHalfSpaceSolid as() const { return express::Base::as(); } + // IfcHalfSpaceSolid as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSolidModel as() const { return express::Base::as(); } + // IfcSolidModel as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcTessellatedFaceSet as() const { return express::Base::as(); } + // IfcTessellatedFaceSet as() const { return express::base::as(); } - IfcBooleanOperand(const IfcBooleanResult& c) : express::Select(c) {}; + IfcBooleanOperand(const IfcBooleanResult& c) : express::select(c) {}; - IfcBooleanOperand(const IfcCsgPrimitive3D& c) : express::Select(c) {}; + IfcBooleanOperand(const IfcCsgPrimitive3D& c) : express::select(c) {}; - IfcBooleanOperand(const IfcHalfSpaceSolid& c) : express::Select(c) {}; + IfcBooleanOperand(const IfcHalfSpaceSolid& c) : express::select(c) {}; - IfcBooleanOperand(const IfcSolidModel& c) : express::Select(c) {}; + IfcBooleanOperand(const IfcSolidModel& c) : express::select(c) {}; - IfcBooleanOperand(const IfcTessellatedFaceSet& c) : express::Select(c) {}; + IfcBooleanOperand(const IfcTessellatedFaceSet& c) : express::select(c) {}; }; /// IfcClassificationReferenceSelect enables selection of whether a classification reference is a subset of another classification reference or is a top level entry of a classification source. @@ -897,22 +897,22 @@ public: /// /// IfcClassification (for classification information) /// IfcClassificationReference (for reference into a classification source) -class IFC_SCHEMA_API IfcClassificationReferenceSelect : public express::Select { +class IFC_SCHEMA_API IfcClassificationReferenceSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcClassification as() const { return express::Base::as(); } + // IfcClassification as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcClassificationReference as() const { return express::Base::as(); } + // IfcClassificationReference as() const { return express::base::as(); } - IfcClassificationReferenceSelect(const IfcClassification& c) : express::Select(c) {}; + IfcClassificationReferenceSelect(const IfcClassification& c) : express::select(c) {}; - IfcClassificationReferenceSelect(const IfcClassificationReference& c) : express::Select(c) {}; + IfcClassificationReferenceSelect(const IfcClassificationReference& c) : express::select(c) {}; }; /// IfcClassificationSelect enables selection of whether a classification reference is to be referenced from an external source, or whether a classification is referenced as such. @@ -928,22 +928,22 @@ public: /// /// IfcClassification (for referencing a classification system) /// IfcClassificationReference (for referencing a classification item (or facet) inside a classification system) -class IFC_SCHEMA_API IfcClassificationSelect : public express::Select { +class IFC_SCHEMA_API IfcClassificationSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcClassification as() const { return express::Base::as(); } + // IfcClassification as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcClassificationReference as() const { return express::Base::as(); } + // IfcClassificationReference as() const { return express::base::as(); } - IfcClassificationSelect(const IfcClassification& c) : express::Select(c) {}; + IfcClassificationSelect(const IfcClassification& c) : express::select(c) {}; - IfcClassificationSelect(const IfcClassificationReference& c) : express::Select(c) {}; + IfcClassificationSelect(const IfcClassificationReference& c) : express::select(c) {}; }; /// Definition from ISO/CD 10303-46:1992: The colour entity defines a basic appearance of elements which shall be visualized in a picture. @@ -951,64 +951,64 @@ public: /// NOTE  Corresponding STEP name: colour. It has been made into a SELECT type in IFC to avoid multiple inheritance for pre defined colour. Please refer to ISO/IS 10303-46:1994, p. 138 for the final definition of the formal standard. /// /// HISTORY  New entity in IFC2x2. -class IFC_SCHEMA_API IfcColour : public express::Select { +class IFC_SCHEMA_API IfcColour : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcColourSpecification as() const { return express::Base::as(); } + // IfcColourSpecification as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPreDefinedColour as() const { return express::Base::as(); } + // IfcPreDefinedColour as() const { return express::base::as(); } - IfcColour(const IfcColourSpecification& c) : express::Select(c) {}; + IfcColour(const IfcColourSpecification& c) : express::select(c) {}; - IfcColour(const IfcPreDefinedColour& c) : express::Select(c) {}; + IfcColour(const IfcPreDefinedColour& c) : express::select(c) {}; }; /// The IfcColourOrFactor enables the selection of either a RGB colour value or a scalar factor value for the use as values of the reflectance components. /// /// HISTORY: New type in IFC2x2. -class IFC_SCHEMA_API IfcColourOrFactor : public express::Select { +class IFC_SCHEMA_API IfcColourOrFactor : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcColourRgb as() const { return express::Base::as(); } + // IfcColourRgb as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcNormalisedRatioMeasure as() const { return express::Base::as(); } + // IfcNormalisedRatioMeasure as() const { return express::base::as(); } - IfcColourOrFactor(const IfcColourRgb& c) : express::Select(c) {}; + IfcColourOrFactor(const IfcColourRgb& c) : express::select(c) {}; - IfcColourOrFactor(const IfcNormalisedRatioMeasure& c) : express::Select(c) {}; + IfcColourOrFactor(const IfcNormalisedRatioMeasure& c) : express::select(c) {}; }; /// IfcCoordinateReferenceSystemSelect is a select between either the local engineering coordinate system, represented by the IfcGeometricRepresentationContext, or another coordinate reference system, represented by IfcCoordinateReferenceSystem, to be the source of a coordinate operation. /// /// HISTORY  New select type in IFC2x4. -class IFC_SCHEMA_API IfcCoordinateReferenceSystemSelect : public express::Select { +class IFC_SCHEMA_API IfcCoordinateReferenceSystemSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcCoordinateReferenceSystem as() const { return express::Base::as(); } + // IfcCoordinateReferenceSystem as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcGeometricRepresentationContext as() const { return express::Base::as(); } + // IfcGeometricRepresentationContext as() const { return express::base::as(); } - IfcCoordinateReferenceSystemSelect(const IfcCoordinateReferenceSystem& c) : express::Select(c) {}; + IfcCoordinateReferenceSystemSelect(const IfcCoordinateReferenceSystem& c) : express::select(c) {}; - IfcCoordinateReferenceSystemSelect(const IfcGeometricRepresentationContext& c) : express::Select(c) {}; + IfcCoordinateReferenceSystemSelect(const IfcGeometricRepresentationContext& c) : express::select(c) {}; }; /// Definition from ISO/CD 10303-42:1992: This type identifies the types of entity which may be selected as the root of a CSG tree including a single CSG primitive as a special case. @@ -1017,22 +1017,22 @@ public: /// NOTE Corresponding ISO 10303-42 type: csg_select, please refer to ISO/IS 10303-42:1994, p.168 for the final definition of the formal standard. /// /// HISTORY New Type in IFC Release 1.5.1. -class IFC_SCHEMA_API IfcCsgSelect : public express::Select { +class IFC_SCHEMA_API IfcCsgSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcBooleanResult as() const { return express::Base::as(); } + // IfcBooleanResult as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcCsgPrimitive3D as() const { return express::Base::as(); } + // IfcCsgPrimitive3D as() const { return express::base::as(); } - IfcCsgSelect(const IfcBooleanResult& c) : express::Select(c) {}; + IfcCsgSelect(const IfcBooleanResult& c) : express::select(c) {}; - IfcCsgSelect(const IfcCsgPrimitive3D& c) : express::Select(c) {}; + IfcCsgSelect(const IfcCsgPrimitive3D& c) : express::select(c) {}; }; /// Definition from ISO/CD 10303-46:1992: The curve font or scaled curve font select is a selection of either a curve font style select (being either a predefined curve font or an explicitly defined curve font) or a curve style font and scaling. @@ -1040,78 +1040,78 @@ public: /// NOTE Corresponding ISO 10303 name: curve_font_or_scaled_curve_font_select. Please refer to ISO/IS 10303-46:1994 for the final definition of the formal standard. /// /// HISTORY New entity in IFC2x2. -class IFC_SCHEMA_API IfcCurveFontOrScaledCurveFontSelect : public express::Select { +class IFC_SCHEMA_API IfcCurveFontOrScaledCurveFontSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcCurveStyleFontAndScaling as() const { return express::Base::as(); } + // IfcCurveStyleFontAndScaling as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcCurveStyleFontSelect as() const { return express::Base::as(); } + // IfcCurveStyleFontSelect as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcCurveStyleFont as() const { return express::Base::as(); } + // IfcCurveStyleFont as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPreDefinedCurveFont as() const { return express::Base::as(); } + // IfcPreDefinedCurveFont as() const { return express::base::as(); } - IfcCurveFontOrScaledCurveFontSelect(const IfcCurveStyleFontAndScaling& c) : express::Select(c) {}; + IfcCurveFontOrScaledCurveFontSelect(const IfcCurveStyleFontAndScaling& c) : express::select(c) {}; - IfcCurveFontOrScaledCurveFontSelect(const IfcCurveStyleFontSelect& c) : express::Select(c) {}; + IfcCurveFontOrScaledCurveFontSelect(const IfcCurveStyleFontSelect& c) : express::select(c) {}; - IfcCurveFontOrScaledCurveFontSelect(const IfcCurveStyleFont& c) : express::Select(c) {}; + IfcCurveFontOrScaledCurveFontSelect(const IfcCurveStyleFont& c) : express::select(c) {}; - IfcCurveFontOrScaledCurveFontSelect(const IfcPreDefinedCurveFont& c) : express::Select(c) {}; + IfcCurveFontOrScaledCurveFontSelect(const IfcPreDefinedCurveFont& c) : express::select(c) {}; }; -class IFC_SCHEMA_API IfcCurveMeasureSelect : public express::Select { +class IFC_SCHEMA_API IfcCurveMeasureSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcNonNegativeLengthMeasure as() const { return express::Base::as(); } + // IfcNonNegativeLengthMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcParameterValue as() const { return express::Base::as(); } + // IfcParameterValue as() const { return express::base::as(); } - IfcCurveMeasureSelect(const IfcNonNegativeLengthMeasure& c) : express::Select(c) {}; + IfcCurveMeasureSelect(const IfcNonNegativeLengthMeasure& c) : express::select(c) {}; - IfcCurveMeasureSelect(const IfcParameterValue& c) : express::Select(c) {}; + IfcCurveMeasureSelect(const IfcParameterValue& c) : express::select(c) {}; }; -class IFC_SCHEMA_API IfcCurveOnSurface : public express::Select { +class IFC_SCHEMA_API IfcCurveOnSurface : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcCompositeCurveOnSurface as() const { return express::Base::as(); } + // IfcCompositeCurveOnSurface as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPcurve as() const { return express::Base::as(); } + // IfcPcurve as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSurfaceCurve as() const { return express::Base::as(); } + // IfcSurfaceCurve as() const { return express::base::as(); } - IfcCurveOnSurface(const IfcCompositeCurveOnSurface& c) : express::Select(c) {}; + IfcCurveOnSurface(const IfcCompositeCurveOnSurface& c) : express::select(c) {}; - IfcCurveOnSurface(const IfcPcurve& c) : express::Select(c) {}; + IfcCurveOnSurface(const IfcPcurve& c) : express::select(c) {}; - IfcCurveOnSurface(const IfcSurfaceCurve& c) : express::Select(c) {}; + IfcCurveOnSurface(const IfcSurfaceCurve& c) : express::select(c) {}; }; /// IfcCurveOrEdgeCurve provides the option to either select a geometric curve (IfcCurve @@ -1122,22 +1122,22 @@ public: /// IfcEdgeCurve /// /// HISTORY  New select type in IFC2x Edition 3. -class IFC_SCHEMA_API IfcCurveOrEdgeCurve : public express::Select { +class IFC_SCHEMA_API IfcCurveOrEdgeCurve : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcBoundedCurve as() const { return express::Base::as(); } + // IfcBoundedCurve as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcEdgeCurve as() const { return express::Base::as(); } + // IfcEdgeCurve as() const { return express::base::as(); } - IfcCurveOrEdgeCurve(const IfcBoundedCurve& c) : express::Select(c) {}; + IfcCurveOrEdgeCurve(const IfcBoundedCurve& c) : express::select(c) {}; - IfcCurveOrEdgeCurve(const IfcEdgeCurve& c) : express::Select(c) {}; + IfcCurveOrEdgeCurve(const IfcEdgeCurve& c) : express::select(c) {}; }; /// Definition from ISO/CD 10303-46:1992: The curve style font select is a selection of a curve style font or a predefined curve style font. @@ -1145,22 +1145,22 @@ public: /// NOTE Corresponding ISO 10303 name: curve_style_font_select. Please refer to ISO/IS 10303-46:1994 for the final definition of the formal standard. /// /// HISTORY New entity in IFC2x2. -class IFC_SCHEMA_API IfcCurveStyleFontSelect : public express::Select { +class IFC_SCHEMA_API IfcCurveStyleFontSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcCurveStyleFont as() const { return express::Base::as(); } + // IfcCurveStyleFont as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPreDefinedCurveFont as() const { return express::Base::as(); } + // IfcPreDefinedCurveFont as() const { return express::base::as(); } - IfcCurveStyleFontSelect(const IfcCurveStyleFont& c) : express::Select(c) {}; + IfcCurveStyleFontSelect(const IfcCurveStyleFont& c) : express::select(c) {}; - IfcCurveStyleFontSelect(const IfcPreDefinedCurveFont& c) : express::Select(c) {}; + IfcCurveStyleFontSelect(const IfcPreDefinedCurveFont& c) : express::select(c) {}; }; /// IfcDefinitionSelectprovides the option to either select an object or type object IfcObjectDefinition, or a property set template or property set, IfcPropertyDefinition. @@ -1170,22 +1170,22 @@ public: /// IfcPropertyDefinition /// /// HISTORY New select type in IFC2x4. -class IFC_SCHEMA_API IfcDefinitionSelect : public express::Select { +class IFC_SCHEMA_API IfcDefinitionSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcObjectDefinition as() const { return express::Base::as(); } + // IfcObjectDefinition as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPropertyDefinition as() const { return express::Base::as(); } + // IfcPropertyDefinition as() const { return express::base::as(); } - IfcDefinitionSelect(const IfcObjectDefinition& c) : express::Select(c) {}; + IfcDefinitionSelect(const IfcObjectDefinition& c) : express::select(c) {}; - IfcDefinitionSelect(const IfcPropertyDefinition& c) : express::Select(c) {}; + IfcDefinitionSelect(const IfcPropertyDefinition& c) : express::select(c) {}; }; /// IfcDerivedMeasureValue is a select type for selecting between derived measure types. @@ -1262,436 +1262,436 @@ public: /// HISTORY New type in IFC Release 2x. /// /// IFC2x4 change: added IfcTemperatureRateOfChangeMeasure. -class IFC_SCHEMA_API IfcDerivedMeasureValue : public express::Select { +class IFC_SCHEMA_API IfcDerivedMeasureValue : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcAbsorbedDoseMeasure as() const { return express::Base::as(); } + // IfcAbsorbedDoseMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcAccelerationMeasure as() const { return express::Base::as(); } + // IfcAccelerationMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcAngularVelocityMeasure as() const { return express::Base::as(); } + // IfcAngularVelocityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcAreaDensityMeasure as() const { return express::Base::as(); } + // IfcAreaDensityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcCompoundPlaneAngleMeasure as() const { return express::Base::as(); } + // IfcCompoundPlaneAngleMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcCurvatureMeasure as() const { return express::Base::as(); } + // IfcCurvatureMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcDoseEquivalentMeasure as() const { return express::Base::as(); } + // IfcDoseEquivalentMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcDynamicViscosityMeasure as() const { return express::Base::as(); } + // IfcDynamicViscosityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcElectricCapacitanceMeasure as() const { return express::Base::as(); } + // IfcElectricCapacitanceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcElectricChargeMeasure as() const { return express::Base::as(); } + // IfcElectricChargeMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcElectricConductanceMeasure as() const { return express::Base::as(); } + // IfcElectricConductanceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcElectricResistanceMeasure as() const { return express::Base::as(); } + // IfcElectricResistanceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcElectricVoltageMeasure as() const { return express::Base::as(); } + // IfcElectricVoltageMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcEnergyMeasure as() const { return express::Base::as(); } + // IfcEnergyMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcForceMeasure as() const { return express::Base::as(); } + // IfcForceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcFrequencyMeasure as() const { return express::Base::as(); } + // IfcFrequencyMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcHeatFluxDensityMeasure as() const { return express::Base::as(); } + // IfcHeatFluxDensityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcHeatingValueMeasure as() const { return express::Base::as(); } + // IfcHeatingValueMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcIlluminanceMeasure as() const { return express::Base::as(); } + // IfcIlluminanceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcInductanceMeasure as() const { return express::Base::as(); } + // IfcInductanceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcIntegerCountRateMeasure as() const { return express::Base::as(); } + // IfcIntegerCountRateMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcIonConcentrationMeasure as() const { return express::Base::as(); } + // IfcIonConcentrationMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcIsothermalMoistureCapacityMeasure as() const { return express::Base::as(); } + // IfcIsothermalMoistureCapacityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcKinematicViscosityMeasure as() const { return express::Base::as(); } + // IfcKinematicViscosityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLinearForceMeasure as() const { return express::Base::as(); } + // IfcLinearForceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLinearMomentMeasure as() const { return express::Base::as(); } + // IfcLinearMomentMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLinearStiffnessMeasure as() const { return express::Base::as(); } + // IfcLinearStiffnessMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLinearVelocityMeasure as() const { return express::Base::as(); } + // IfcLinearVelocityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLuminousFluxMeasure as() const { return express::Base::as(); } + // IfcLuminousFluxMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLuminousIntensityDistributionMeasure as() const { return express::Base::as(); } + // IfcLuminousIntensityDistributionMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMagneticFluxDensityMeasure as() const { return express::Base::as(); } + // IfcMagneticFluxDensityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMagneticFluxMeasure as() const { return express::Base::as(); } + // IfcMagneticFluxMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMassDensityMeasure as() const { return express::Base::as(); } + // IfcMassDensityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMassFlowRateMeasure as() const { return express::Base::as(); } + // IfcMassFlowRateMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMassPerLengthMeasure as() const { return express::Base::as(); } + // IfcMassPerLengthMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcModulusOfElasticityMeasure as() const { return express::Base::as(); } + // IfcModulusOfElasticityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcModulusOfLinearSubgradeReactionMeasure as() const { return express::Base::as(); } + // IfcModulusOfLinearSubgradeReactionMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcModulusOfRotationalSubgradeReactionMeasure as() const { return express::Base::as(); } + // IfcModulusOfRotationalSubgradeReactionMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcModulusOfSubgradeReactionMeasure as() const { return express::Base::as(); } + // IfcModulusOfSubgradeReactionMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMoistureDiffusivityMeasure as() const { return express::Base::as(); } + // IfcMoistureDiffusivityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMolecularWeightMeasure as() const { return express::Base::as(); } + // IfcMolecularWeightMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMomentOfInertiaMeasure as() const { return express::Base::as(); } + // IfcMomentOfInertiaMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMonetaryMeasure as() const { return express::Base::as(); } + // IfcMonetaryMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPHMeasure as() const { return express::Base::as(); } + // IfcPHMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPlanarForceMeasure as() const { return express::Base::as(); } + // IfcPlanarForceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPowerMeasure as() const { return express::Base::as(); } + // IfcPowerMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPressureMeasure as() const { return express::Base::as(); } + // IfcPressureMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcRadioActivityMeasure as() const { return express::Base::as(); } + // IfcRadioActivityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcRotationalFrequencyMeasure as() const { return express::Base::as(); } + // IfcRotationalFrequencyMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcRotationalMassMeasure as() const { return express::Base::as(); } + // IfcRotationalMassMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcRotationalStiffnessMeasure as() const { return express::Base::as(); } + // IfcRotationalStiffnessMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSectionModulusMeasure as() const { return express::Base::as(); } + // IfcSectionModulusMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSectionalAreaIntegralMeasure as() const { return express::Base::as(); } + // IfcSectionalAreaIntegralMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcShearModulusMeasure as() const { return express::Base::as(); } + // IfcShearModulusMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSoundPowerLevelMeasure as() const { return express::Base::as(); } + // IfcSoundPowerLevelMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSoundPowerMeasure as() const { return express::Base::as(); } + // IfcSoundPowerMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSoundPressureLevelMeasure as() const { return express::Base::as(); } + // IfcSoundPressureLevelMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSoundPressureMeasure as() const { return express::Base::as(); } + // IfcSoundPressureMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSpecificHeatCapacityMeasure as() const { return express::Base::as(); } + // IfcSpecificHeatCapacityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcTemperatureGradientMeasure as() const { return express::Base::as(); } + // IfcTemperatureGradientMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcTemperatureRateOfChangeMeasure as() const { return express::Base::as(); } + // IfcTemperatureRateOfChangeMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcThermalAdmittanceMeasure as() const { return express::Base::as(); } + // IfcThermalAdmittanceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcThermalConductivityMeasure as() const { return express::Base::as(); } + // IfcThermalConductivityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcThermalExpansionCoefficientMeasure as() const { return express::Base::as(); } + // IfcThermalExpansionCoefficientMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcThermalResistanceMeasure as() const { return express::Base::as(); } + // IfcThermalResistanceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcThermalTransmittanceMeasure as() const { return express::Base::as(); } + // IfcThermalTransmittanceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcTorqueMeasure as() const { return express::Base::as(); } + // IfcTorqueMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcVaporPermeabilityMeasure as() const { return express::Base::as(); } + // IfcVaporPermeabilityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcVolumetricFlowRateMeasure as() const { return express::Base::as(); } + // IfcVolumetricFlowRateMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcWarpingConstantMeasure as() const { return express::Base::as(); } + // IfcWarpingConstantMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcWarpingMomentMeasure as() const { return express::Base::as(); } + // IfcWarpingMomentMeasure as() const { return express::base::as(); } - IfcDerivedMeasureValue(const IfcAbsorbedDoseMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcAbsorbedDoseMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcAccelerationMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcAccelerationMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcAngularVelocityMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcAngularVelocityMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcAreaDensityMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcAreaDensityMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcCompoundPlaneAngleMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcCompoundPlaneAngleMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcCurvatureMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcCurvatureMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcDoseEquivalentMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcDoseEquivalentMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcDynamicViscosityMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcDynamicViscosityMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcElectricCapacitanceMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcElectricCapacitanceMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcElectricChargeMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcElectricChargeMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcElectricConductanceMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcElectricConductanceMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcElectricResistanceMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcElectricResistanceMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcElectricVoltageMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcElectricVoltageMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcEnergyMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcEnergyMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcForceMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcForceMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcFrequencyMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcFrequencyMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcHeatFluxDensityMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcHeatFluxDensityMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcHeatingValueMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcHeatingValueMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcIlluminanceMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcIlluminanceMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcInductanceMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcInductanceMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcIntegerCountRateMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcIntegerCountRateMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcIonConcentrationMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcIonConcentrationMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcIsothermalMoistureCapacityMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcIsothermalMoistureCapacityMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcKinematicViscosityMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcKinematicViscosityMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcLinearForceMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcLinearForceMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcLinearMomentMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcLinearMomentMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcLinearStiffnessMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcLinearStiffnessMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcLinearVelocityMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcLinearVelocityMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcLuminousFluxMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcLuminousFluxMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcLuminousIntensityDistributionMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcLuminousIntensityDistributionMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcMagneticFluxDensityMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcMagneticFluxDensityMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcMagneticFluxMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcMagneticFluxMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcMassDensityMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcMassDensityMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcMassFlowRateMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcMassFlowRateMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcMassPerLengthMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcMassPerLengthMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcModulusOfElasticityMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcModulusOfElasticityMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcModulusOfLinearSubgradeReactionMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcModulusOfLinearSubgradeReactionMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcModulusOfRotationalSubgradeReactionMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcModulusOfRotationalSubgradeReactionMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcModulusOfSubgradeReactionMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcModulusOfSubgradeReactionMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcMoistureDiffusivityMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcMoistureDiffusivityMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcMolecularWeightMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcMolecularWeightMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcMomentOfInertiaMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcMomentOfInertiaMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcMonetaryMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcMonetaryMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcPHMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcPHMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcPlanarForceMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcPlanarForceMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcPowerMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcPowerMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcPressureMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcPressureMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcRadioActivityMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcRadioActivityMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcRotationalFrequencyMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcRotationalFrequencyMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcRotationalMassMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcRotationalMassMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcRotationalStiffnessMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcRotationalStiffnessMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcSectionModulusMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcSectionModulusMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcSectionalAreaIntegralMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcSectionalAreaIntegralMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcShearModulusMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcShearModulusMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcSoundPowerLevelMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcSoundPowerLevelMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcSoundPowerMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcSoundPowerMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcSoundPressureLevelMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcSoundPressureLevelMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcSoundPressureMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcSoundPressureMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcSpecificHeatCapacityMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcSpecificHeatCapacityMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcTemperatureGradientMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcTemperatureGradientMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcTemperatureRateOfChangeMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcTemperatureRateOfChangeMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcThermalAdmittanceMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcThermalAdmittanceMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcThermalConductivityMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcThermalConductivityMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcThermalExpansionCoefficientMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcThermalExpansionCoefficientMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcThermalResistanceMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcThermalResistanceMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcThermalTransmittanceMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcThermalTransmittanceMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcTorqueMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcTorqueMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcVaporPermeabilityMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcVaporPermeabilityMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcVolumetricFlowRateMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcVolumetricFlowRateMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcWarpingConstantMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcWarpingConstantMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcWarpingMomentMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcWarpingMomentMeasure& c) : express::select(c) {}; }; /// IfcDocumentSelect enables selection of whether document information is to be contained within an IFC model or is to be referenced from an external source. @@ -1702,22 +1702,22 @@ public: /// /// IfcDocumentInformation (for "metadata" of an external document) /// IfcDocumentReference (for reference within a document) -class IFC_SCHEMA_API IfcDocumentSelect : public express::Select { +class IFC_SCHEMA_API IfcDocumentSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcDocumentInformation as() const { return express::Base::as(); } + // IfcDocumentInformation as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcDocumentReference as() const { return express::Base::as(); } + // IfcDocumentReference as() const { return express::base::as(); } - IfcDocumentSelect(const IfcDocumentInformation& c) : express::Select(c) {}; + IfcDocumentSelect(const IfcDocumentInformation& c) : express::select(c) {}; - IfcDocumentSelect(const IfcDocumentReference& c) : express::Select(c) {}; + IfcDocumentSelect(const IfcDocumentReference& c) : express::select(c) {}; }; /// Definition from ISO/CD 10303-46:1992: The fill style select is a selection between different fill area styles. @@ -1726,46 +1726,46 @@ public: /// the final definition of the formal standard. /// /// HISTORY New type in IFC2x2. -class IFC_SCHEMA_API IfcFillStyleSelect : public express::Select { +class IFC_SCHEMA_API IfcFillStyleSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcColour as() const { return express::Base::as(); } + // IfcColour as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcColourSpecification as() const { return express::Base::as(); } + // IfcColourSpecification as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPreDefinedColour as() const { return express::Base::as(); } + // IfcPreDefinedColour as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcExternallyDefinedHatchStyle as() const { return express::Base::as(); } + // IfcExternallyDefinedHatchStyle as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcFillAreaStyleHatching as() const { return express::Base::as(); } + // IfcFillAreaStyleHatching as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcFillAreaStyleTiles as() const { return express::Base::as(); } + // IfcFillAreaStyleTiles as() const { return express::base::as(); } - IfcFillStyleSelect(const IfcColour& c) : express::Select(c) {}; + IfcFillStyleSelect(const IfcColour& c) : express::select(c) {}; - IfcFillStyleSelect(const IfcColourSpecification& c) : express::Select(c) {}; + IfcFillStyleSelect(const IfcColourSpecification& c) : express::select(c) {}; - IfcFillStyleSelect(const IfcPreDefinedColour& c) : express::Select(c) {}; + IfcFillStyleSelect(const IfcPreDefinedColour& c) : express::select(c) {}; - IfcFillStyleSelect(const IfcExternallyDefinedHatchStyle& c) : express::Select(c) {}; + IfcFillStyleSelect(const IfcExternallyDefinedHatchStyle& c) : express::select(c) {}; - IfcFillStyleSelect(const IfcFillAreaStyleHatching& c) : express::Select(c) {}; + IfcFillStyleSelect(const IfcFillAreaStyleHatching& c) : express::select(c) {}; - IfcFillStyleSelect(const IfcFillAreaStyleTiles& c) : express::Select(c) {}; + IfcFillStyleSelect(const IfcFillAreaStyleTiles& c) : express::select(c) {}; }; /// Definition from ISO/CD 10303-42:1992: This select type identifies the types of entities which can occur in a geometric set. @@ -1773,28 +1773,28 @@ public: /// NOTE: Corresponding ISO 10303 type: geometric_set_select. Please refer to ISO/IS 10303-42:1994, p. 169 for the final definition of the formal standard. /// /// HISTORY: New type in IFC Release 2x. -class IFC_SCHEMA_API IfcGeometricSetSelect : public express::Select { +class IFC_SCHEMA_API IfcGeometricSetSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcCurve as() const { return express::Base::as(); } + // IfcCurve as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPoint as() const { return express::Base::as(); } + // IfcPoint as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSurface as() const { return express::Base::as(); } + // IfcSurface as() const { return express::base::as(); } - IfcGeometricSetSelect(const IfcCurve& c) : express::Select(c) {}; + IfcGeometricSetSelect(const IfcCurve& c) : express::select(c) {}; - IfcGeometricSetSelect(const IfcPoint& c) : express::Select(c) {}; + IfcGeometricSetSelect(const IfcPoint& c) : express::select(c) {}; - IfcGeometricSetSelect(const IfcSurface& c) : express::Select(c) {}; + IfcGeometricSetSelect(const IfcSurface& c) : express::select(c) {}; }; /// IfcGridPlacementDirectionSelect enables the choice of defining a grid placement be either an explicit direction, or by referencing a second grid intersection to provide the direction. @@ -1805,62 +1805,62 @@ public: /// IfcVirtualGridIntersection /// /// HISTORY New select type in IFC2x4. -class IFC_SCHEMA_API IfcGridPlacementDirectionSelect : public express::Select { +class IFC_SCHEMA_API IfcGridPlacementDirectionSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcDirection as() const { return express::Base::as(); } + // IfcDirection as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcVirtualGridIntersection as() const { return express::Base::as(); } + // IfcVirtualGridIntersection as() const { return express::base::as(); } - IfcGridPlacementDirectionSelect(const IfcDirection& c) : express::Select(c) {}; + IfcGridPlacementDirectionSelect(const IfcDirection& c) : express::select(c) {}; - IfcGridPlacementDirectionSelect(const IfcVirtualGridIntersection& c) : express::Select(c) {}; + IfcGridPlacementDirectionSelect(const IfcVirtualGridIntersection& c) : express::select(c) {}; }; /// The IfcHatchLineDistanceSelect is a selection between different ways to determine the distance and potentially start point of hatch lines, either by an offset distance length measure or by a vector. /// /// HISTORY  New type in IFC2x3. -class IFC_SCHEMA_API IfcHatchLineDistanceSelect : public express::Select { +class IFC_SCHEMA_API IfcHatchLineDistanceSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPositiveLengthMeasure as() const { return express::Base::as(); } + // IfcPositiveLengthMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcVector as() const { return express::Base::as(); } + // IfcVector as() const { return express::base::as(); } - IfcHatchLineDistanceSelect(const IfcPositiveLengthMeasure& c) : express::Select(c) {}; + IfcHatchLineDistanceSelect(const IfcPositiveLengthMeasure& c) : express::select(c) {}; - IfcHatchLineDistanceSelect(const IfcVector& c) : express::Select(c) {}; + IfcHatchLineDistanceSelect(const IfcVector& c) : express::select(c) {}; }; -class IFC_SCHEMA_API IfcInterferenceSelect : public express::Select { +class IFC_SCHEMA_API IfcInterferenceSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcElement as() const { return express::Base::as(); } + // IfcElement as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSpatialElement as() const { return express::Base::as(); } + // IfcSpatialElement as() const { return express::base::as(); } - IfcInterferenceSelect(const IfcElement& c) : express::Select(c) {}; + IfcInterferenceSelect(const IfcElement& c) : express::select(c) {}; - IfcInterferenceSelect(const IfcSpatialElement& c) : express::Select(c) {}; + IfcInterferenceSelect(const IfcSpatialElement& c) : express::select(c) {}; }; /// Definition from ISO/CD 10303-46:1992: The layered things type selects those things, which can be grouped in layers. @@ -1870,22 +1870,22 @@ public: /// NOTE: Corresponding ISO 10303 name: layered_item. It was called layered_things in the ISO/CD version and had been renamed to layered_item in the ISO/IS final version. Please refer to ISO/IS 10303-46:1994, p. 13 for the final definition of the formal standard. /// /// HISTORY: New type in IFC2x2. -class IFC_SCHEMA_API IfcLayeredItem : public express::Select { +class IFC_SCHEMA_API IfcLayeredItem : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcRepresentation as() const { return express::Base::as(); } + // IfcRepresentation as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcRepresentationItem as() const { return express::Base::as(); } + // IfcRepresentationItem as() const { return express::base::as(); } - IfcLayeredItem(const IfcRepresentation& c) : express::Select(c) {}; + IfcLayeredItem(const IfcRepresentation& c) : express::select(c) {}; - IfcLayeredItem(const IfcRepresentationItem& c) : express::Select(c) {}; + IfcLayeredItem(const IfcRepresentationItem& c) : express::select(c) {}; }; /// IfcLibrarySelect enables selection of whether library information is to be contained within an IFC model or is to be referenced from an external source. @@ -1898,22 +1898,22 @@ public: /// IfcLibraryReference (for reference into a library of information by location) /// /// Generally, it is expected that selection will be IfcLibraryReference and only rarely IfcLibraryInformation. IfcLibraryInformation should only be selected in circumstances where there could be a need to indicate the libraries that will be used without making individual references. This may occur for higher level objects such as a project or building. -class IFC_SCHEMA_API IfcLibrarySelect : public express::Select { +class IFC_SCHEMA_API IfcLibrarySelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLibraryInformation as() const { return express::Base::as(); } + // IfcLibraryInformation as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLibraryReference as() const { return express::Base::as(); } + // IfcLibraryReference as() const { return express::base::as(); } - IfcLibrarySelect(const IfcLibraryInformation& c) : express::Select(c) {}; + IfcLibrarySelect(const IfcLibraryInformation& c) : express::select(c) {}; - IfcLibrarySelect(const IfcLibraryReference& c) : express::Select(c) {}; + IfcLibrarySelect(const IfcLibraryReference& c) : express::select(c) {}; }; /// A goniometric light gets its intensity distribution function (how much light goes in any one direction) from one of two sources: (i) an industry-standard file, (ii) from distribution data passed directly via the IfcLightIntensityDistribution. @@ -1938,22 +1938,22 @@ public: /// directions covers all cases. /// /// HISTORY New type in IFC2x2. -class IFC_SCHEMA_API IfcLightDistributionDataSourceSelect : public express::Select { +class IFC_SCHEMA_API IfcLightDistributionDataSourceSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcExternalReference as() const { return express::Base::as(); } + // IfcExternalReference as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLightIntensityDistribution as() const { return express::Base::as(); } + // IfcLightIntensityDistribution as() const { return express::base::as(); } - IfcLightDistributionDataSourceSelect(const IfcExternalReference& c) : express::Select(c) {}; + IfcLightDistributionDataSourceSelect(const IfcExternalReference& c) : express::select(c) {}; - IfcLightDistributionDataSourceSelect(const IfcLightIntensityDistribution& c) : express::Select(c) {}; + IfcLightDistributionDataSourceSelect(const IfcLightIntensityDistribution& c) : express::select(c) {}; }; /// IfcMaterialSelect provides selection of either a material @@ -1982,28 +1982,28 @@ public: /// /// IFC2x4 CHANGE The select now includes two new abstract entities IfcMaterialDefinition /// and IfcMaterialUsageDefinition with upward compatibility. The use of IfcMaterialList is deprecated from IFC2x4 onwards. -class IFC_SCHEMA_API IfcMaterialSelect : public express::Select { +class IFC_SCHEMA_API IfcMaterialSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMaterialDefinition as() const { return express::Base::as(); } + // IfcMaterialDefinition as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMaterialList as() const { return express::Base::as(); } + // IfcMaterialList as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMaterialUsageDefinition as() const { return express::Base::as(); } + // IfcMaterialUsageDefinition as() const { return express::base::as(); } - IfcMaterialSelect(const IfcMaterialDefinition& c) : express::Select(c) {}; + IfcMaterialSelect(const IfcMaterialDefinition& c) : express::select(c) {}; - IfcMaterialSelect(const IfcMaterialList& c) : express::Select(c) {}; + IfcMaterialSelect(const IfcMaterialList& c) : express::select(c) {}; - IfcMaterialSelect(const IfcMaterialUsageDefinition& c) : express::Select(c) {}; + IfcMaterialSelect(const IfcMaterialUsageDefinition& c) : express::select(c) {}; }; /// Definition from ISO/CD 10303-41:1992: A measure value is a value as defined in ISO 31-0 (clause 2). @@ -2015,148 +2015,148 @@ public: /// HISTORY New type in IFC Release 1.5.1. /// /// IFC 2x4 change: added IfcNonNegativeLengthMeasure -class IFC_SCHEMA_API IfcMeasureValue : public express::Select { +class IFC_SCHEMA_API IfcMeasureValue : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcAmountOfSubstanceMeasure as() const { return express::Base::as(); } + // IfcAmountOfSubstanceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcAreaMeasure as() const { return express::Base::as(); } + // IfcAreaMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcComplexNumber as() const { return express::Base::as(); } + // IfcComplexNumber as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcContextDependentMeasure as() const { return express::Base::as(); } + // IfcContextDependentMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcCountMeasure as() const { return express::Base::as(); } + // IfcCountMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcDescriptiveMeasure as() const { return express::Base::as(); } + // IfcDescriptiveMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcElectricCurrentMeasure as() const { return express::Base::as(); } + // IfcElectricCurrentMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLengthMeasure as() const { return express::Base::as(); } + // IfcLengthMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLuminousIntensityMeasure as() const { return express::Base::as(); } + // IfcLuminousIntensityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMassMeasure as() const { return express::Base::as(); } + // IfcMassMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcNonNegativeLengthMeasure as() const { return express::Base::as(); } + // IfcNonNegativeLengthMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcNormalisedRatioMeasure as() const { return express::Base::as(); } + // IfcNormalisedRatioMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcNumericMeasure as() const { return express::Base::as(); } + // IfcNumericMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcParameterValue as() const { return express::Base::as(); } + // IfcParameterValue as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPlaneAngleMeasure as() const { return express::Base::as(); } + // IfcPlaneAngleMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPositiveLengthMeasure as() const { return express::Base::as(); } + // IfcPositiveLengthMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPositivePlaneAngleMeasure as() const { return express::Base::as(); } + // IfcPositivePlaneAngleMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPositiveRatioMeasure as() const { return express::Base::as(); } + // IfcPositiveRatioMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcRatioMeasure as() const { return express::Base::as(); } + // IfcRatioMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSolidAngleMeasure as() const { return express::Base::as(); } + // IfcSolidAngleMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcThermodynamicTemperatureMeasure as() const { return express::Base::as(); } + // IfcThermodynamicTemperatureMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcTimeMeasure as() const { return express::Base::as(); } + // IfcTimeMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcVolumeMeasure as() const { return express::Base::as(); } + // IfcVolumeMeasure as() const { return express::base::as(); } - IfcMeasureValue(const IfcAmountOfSubstanceMeasure& c) : express::Select(c) {}; + IfcMeasureValue(const IfcAmountOfSubstanceMeasure& c) : express::select(c) {}; - IfcMeasureValue(const IfcAreaMeasure& c) : express::Select(c) {}; + IfcMeasureValue(const IfcAreaMeasure& c) : express::select(c) {}; - IfcMeasureValue(const IfcComplexNumber& c) : express::Select(c) {}; + IfcMeasureValue(const IfcComplexNumber& c) : express::select(c) {}; - IfcMeasureValue(const IfcContextDependentMeasure& c) : express::Select(c) {}; + IfcMeasureValue(const IfcContextDependentMeasure& c) : express::select(c) {}; - IfcMeasureValue(const IfcCountMeasure& c) : express::Select(c) {}; + IfcMeasureValue(const IfcCountMeasure& c) : express::select(c) {}; - IfcMeasureValue(const IfcDescriptiveMeasure& c) : express::Select(c) {}; + IfcMeasureValue(const IfcDescriptiveMeasure& c) : express::select(c) {}; - IfcMeasureValue(const IfcElectricCurrentMeasure& c) : express::Select(c) {}; + IfcMeasureValue(const IfcElectricCurrentMeasure& c) : express::select(c) {}; - IfcMeasureValue(const IfcLengthMeasure& c) : express::Select(c) {}; + IfcMeasureValue(const IfcLengthMeasure& c) : express::select(c) {}; - IfcMeasureValue(const IfcLuminousIntensityMeasure& c) : express::Select(c) {}; + IfcMeasureValue(const IfcLuminousIntensityMeasure& c) : express::select(c) {}; - IfcMeasureValue(const IfcMassMeasure& c) : express::Select(c) {}; + IfcMeasureValue(const IfcMassMeasure& c) : express::select(c) {}; - IfcMeasureValue(const IfcNonNegativeLengthMeasure& c) : express::Select(c) {}; + IfcMeasureValue(const IfcNonNegativeLengthMeasure& c) : express::select(c) {}; - IfcMeasureValue(const IfcNormalisedRatioMeasure& c) : express::Select(c) {}; + IfcMeasureValue(const IfcNormalisedRatioMeasure& c) : express::select(c) {}; - IfcMeasureValue(const IfcNumericMeasure& c) : express::Select(c) {}; + IfcMeasureValue(const IfcNumericMeasure& c) : express::select(c) {}; - IfcMeasureValue(const IfcParameterValue& c) : express::Select(c) {}; + IfcMeasureValue(const IfcParameterValue& c) : express::select(c) {}; - IfcMeasureValue(const IfcPlaneAngleMeasure& c) : express::Select(c) {}; + IfcMeasureValue(const IfcPlaneAngleMeasure& c) : express::select(c) {}; - IfcMeasureValue(const IfcPositiveLengthMeasure& c) : express::Select(c) {}; + IfcMeasureValue(const IfcPositiveLengthMeasure& c) : express::select(c) {}; - IfcMeasureValue(const IfcPositivePlaneAngleMeasure& c) : express::Select(c) {}; + IfcMeasureValue(const IfcPositivePlaneAngleMeasure& c) : express::select(c) {}; - IfcMeasureValue(const IfcPositiveRatioMeasure& c) : express::Select(c) {}; + IfcMeasureValue(const IfcPositiveRatioMeasure& c) : express::select(c) {}; - IfcMeasureValue(const IfcRatioMeasure& c) : express::Select(c) {}; + IfcMeasureValue(const IfcRatioMeasure& c) : express::select(c) {}; - IfcMeasureValue(const IfcSolidAngleMeasure& c) : express::Select(c) {}; + IfcMeasureValue(const IfcSolidAngleMeasure& c) : express::select(c) {}; - IfcMeasureValue(const IfcThermodynamicTemperatureMeasure& c) : express::Select(c) {}; + IfcMeasureValue(const IfcThermodynamicTemperatureMeasure& c) : express::select(c) {}; - IfcMeasureValue(const IfcTimeMeasure& c) : express::Select(c) {}; + IfcMeasureValue(const IfcTimeMeasure& c) : express::select(c) {}; - IfcMeasureValue(const IfcVolumeMeasure& c) : express::Select(c) {}; + IfcMeasureValue(const IfcVolumeMeasure& c) : express::select(c) {}; }; /// IfcMetricValueSelect is a select type that enables selection of the data type for the value component of an IfcMetric. @@ -2171,838 +2171,838 @@ public: /// IfcTable /// IfcText /// IfcTimeSeries -class IFC_SCHEMA_API IfcMetricValueSelect : public express::Select { +class IFC_SCHEMA_API IfcMetricValueSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcAppliedValue as() const { return express::Base::as(); } + // IfcAppliedValue as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMeasureWithUnit as() const { return express::Base::as(); } + // IfcMeasureWithUnit as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcReference as() const { return express::Base::as(); } + // IfcReference as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcTable as() const { return express::Base::as(); } + // IfcTable as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcTimeSeries as() const { return express::Base::as(); } + // IfcTimeSeries as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcValue as() const { return express::Base::as(); } + // IfcValue as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcDerivedMeasureValue as() const { return express::Base::as(); } + // IfcDerivedMeasureValue as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcAbsorbedDoseMeasure as() const { return express::Base::as(); } + // IfcAbsorbedDoseMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcAccelerationMeasure as() const { return express::Base::as(); } + // IfcAccelerationMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcAngularVelocityMeasure as() const { return express::Base::as(); } + // IfcAngularVelocityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcAreaDensityMeasure as() const { return express::Base::as(); } + // IfcAreaDensityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcCompoundPlaneAngleMeasure as() const { return express::Base::as(); } + // IfcCompoundPlaneAngleMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcCurvatureMeasure as() const { return express::Base::as(); } + // IfcCurvatureMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcDoseEquivalentMeasure as() const { return express::Base::as(); } + // IfcDoseEquivalentMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcDynamicViscosityMeasure as() const { return express::Base::as(); } + // IfcDynamicViscosityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcElectricCapacitanceMeasure as() const { return express::Base::as(); } + // IfcElectricCapacitanceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcElectricChargeMeasure as() const { return express::Base::as(); } + // IfcElectricChargeMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcElectricConductanceMeasure as() const { return express::Base::as(); } + // IfcElectricConductanceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcElectricResistanceMeasure as() const { return express::Base::as(); } + // IfcElectricResistanceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcElectricVoltageMeasure as() const { return express::Base::as(); } + // IfcElectricVoltageMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcEnergyMeasure as() const { return express::Base::as(); } + // IfcEnergyMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcForceMeasure as() const { return express::Base::as(); } + // IfcForceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcFrequencyMeasure as() const { return express::Base::as(); } + // IfcFrequencyMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcHeatFluxDensityMeasure as() const { return express::Base::as(); } + // IfcHeatFluxDensityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcHeatingValueMeasure as() const { return express::Base::as(); } + // IfcHeatingValueMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcIlluminanceMeasure as() const { return express::Base::as(); } + // IfcIlluminanceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcInductanceMeasure as() const { return express::Base::as(); } + // IfcInductanceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcIntegerCountRateMeasure as() const { return express::Base::as(); } + // IfcIntegerCountRateMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcIonConcentrationMeasure as() const { return express::Base::as(); } + // IfcIonConcentrationMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcIsothermalMoistureCapacityMeasure as() const { return express::Base::as(); } + // IfcIsothermalMoistureCapacityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcKinematicViscosityMeasure as() const { return express::Base::as(); } + // IfcKinematicViscosityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLinearForceMeasure as() const { return express::Base::as(); } + // IfcLinearForceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLinearMomentMeasure as() const { return express::Base::as(); } + // IfcLinearMomentMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLinearStiffnessMeasure as() const { return express::Base::as(); } + // IfcLinearStiffnessMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLinearVelocityMeasure as() const { return express::Base::as(); } + // IfcLinearVelocityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLuminousFluxMeasure as() const { return express::Base::as(); } + // IfcLuminousFluxMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLuminousIntensityDistributionMeasure as() const { return express::Base::as(); } + // IfcLuminousIntensityDistributionMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMagneticFluxDensityMeasure as() const { return express::Base::as(); } + // IfcMagneticFluxDensityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMagneticFluxMeasure as() const { return express::Base::as(); } + // IfcMagneticFluxMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMassDensityMeasure as() const { return express::Base::as(); } + // IfcMassDensityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMassFlowRateMeasure as() const { return express::Base::as(); } + // IfcMassFlowRateMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMassPerLengthMeasure as() const { return express::Base::as(); } + // IfcMassPerLengthMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcModulusOfElasticityMeasure as() const { return express::Base::as(); } + // IfcModulusOfElasticityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcModulusOfLinearSubgradeReactionMeasure as() const { return express::Base::as(); } + // IfcModulusOfLinearSubgradeReactionMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcModulusOfRotationalSubgradeReactionMeasure as() const { return express::Base::as(); } + // IfcModulusOfRotationalSubgradeReactionMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcModulusOfSubgradeReactionMeasure as() const { return express::Base::as(); } + // IfcModulusOfSubgradeReactionMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMoistureDiffusivityMeasure as() const { return express::Base::as(); } + // IfcMoistureDiffusivityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMolecularWeightMeasure as() const { return express::Base::as(); } + // IfcMolecularWeightMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMomentOfInertiaMeasure as() const { return express::Base::as(); } + // IfcMomentOfInertiaMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMonetaryMeasure as() const { return express::Base::as(); } + // IfcMonetaryMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPHMeasure as() const { return express::Base::as(); } + // IfcPHMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPlanarForceMeasure as() const { return express::Base::as(); } + // IfcPlanarForceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPowerMeasure as() const { return express::Base::as(); } + // IfcPowerMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPressureMeasure as() const { return express::Base::as(); } + // IfcPressureMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcRadioActivityMeasure as() const { return express::Base::as(); } + // IfcRadioActivityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcRotationalFrequencyMeasure as() const { return express::Base::as(); } + // IfcRotationalFrequencyMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcRotationalMassMeasure as() const { return express::Base::as(); } + // IfcRotationalMassMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcRotationalStiffnessMeasure as() const { return express::Base::as(); } + // IfcRotationalStiffnessMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSectionModulusMeasure as() const { return express::Base::as(); } + // IfcSectionModulusMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSectionalAreaIntegralMeasure as() const { return express::Base::as(); } + // IfcSectionalAreaIntegralMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcShearModulusMeasure as() const { return express::Base::as(); } + // IfcShearModulusMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSoundPowerLevelMeasure as() const { return express::Base::as(); } + // IfcSoundPowerLevelMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSoundPowerMeasure as() const { return express::Base::as(); } + // IfcSoundPowerMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSoundPressureLevelMeasure as() const { return express::Base::as(); } + // IfcSoundPressureLevelMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSoundPressureMeasure as() const { return express::Base::as(); } + // IfcSoundPressureMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSpecificHeatCapacityMeasure as() const { return express::Base::as(); } + // IfcSpecificHeatCapacityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcTemperatureGradientMeasure as() const { return express::Base::as(); } + // IfcTemperatureGradientMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcTemperatureRateOfChangeMeasure as() const { return express::Base::as(); } + // IfcTemperatureRateOfChangeMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcThermalAdmittanceMeasure as() const { return express::Base::as(); } + // IfcThermalAdmittanceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcThermalConductivityMeasure as() const { return express::Base::as(); } + // IfcThermalConductivityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcThermalExpansionCoefficientMeasure as() const { return express::Base::as(); } + // IfcThermalExpansionCoefficientMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcThermalResistanceMeasure as() const { return express::Base::as(); } + // IfcThermalResistanceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcThermalTransmittanceMeasure as() const { return express::Base::as(); } + // IfcThermalTransmittanceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcTorqueMeasure as() const { return express::Base::as(); } + // IfcTorqueMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcVaporPermeabilityMeasure as() const { return express::Base::as(); } + // IfcVaporPermeabilityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcVolumetricFlowRateMeasure as() const { return express::Base::as(); } + // IfcVolumetricFlowRateMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcWarpingConstantMeasure as() const { return express::Base::as(); } + // IfcWarpingConstantMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcWarpingMomentMeasure as() const { return express::Base::as(); } + // IfcWarpingMomentMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMeasureValue as() const { return express::Base::as(); } + // IfcMeasureValue as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcAmountOfSubstanceMeasure as() const { return express::Base::as(); } + // IfcAmountOfSubstanceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcAreaMeasure as() const { return express::Base::as(); } + // IfcAreaMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcComplexNumber as() const { return express::Base::as(); } + // IfcComplexNumber as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcContextDependentMeasure as() const { return express::Base::as(); } + // IfcContextDependentMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcCountMeasure as() const { return express::Base::as(); } + // IfcCountMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcDescriptiveMeasure as() const { return express::Base::as(); } + // IfcDescriptiveMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcElectricCurrentMeasure as() const { return express::Base::as(); } + // IfcElectricCurrentMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLengthMeasure as() const { return express::Base::as(); } + // IfcLengthMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLuminousIntensityMeasure as() const { return express::Base::as(); } + // IfcLuminousIntensityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMassMeasure as() const { return express::Base::as(); } + // IfcMassMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcNonNegativeLengthMeasure as() const { return express::Base::as(); } + // IfcNonNegativeLengthMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcNormalisedRatioMeasure as() const { return express::Base::as(); } + // IfcNormalisedRatioMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcNumericMeasure as() const { return express::Base::as(); } + // IfcNumericMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcParameterValue as() const { return express::Base::as(); } + // IfcParameterValue as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPlaneAngleMeasure as() const { return express::Base::as(); } + // IfcPlaneAngleMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPositiveLengthMeasure as() const { return express::Base::as(); } + // IfcPositiveLengthMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPositivePlaneAngleMeasure as() const { return express::Base::as(); } + // IfcPositivePlaneAngleMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPositiveRatioMeasure as() const { return express::Base::as(); } + // IfcPositiveRatioMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcRatioMeasure as() const { return express::Base::as(); } + // IfcRatioMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSolidAngleMeasure as() const { return express::Base::as(); } + // IfcSolidAngleMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcThermodynamicTemperatureMeasure as() const { return express::Base::as(); } + // IfcThermodynamicTemperatureMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcTimeMeasure as() const { return express::Base::as(); } + // IfcTimeMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcVolumeMeasure as() const { return express::Base::as(); } + // IfcVolumeMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSimpleValue as() const { return express::Base::as(); } + // IfcSimpleValue as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcBinary as() const { return express::Base::as(); } + // IfcBinary as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcBoolean as() const { return express::Base::as(); } + // IfcBoolean as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcDate as() const { return express::Base::as(); } + // IfcDate as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcDateTime as() const { return express::Base::as(); } + // IfcDateTime as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcDuration as() const { return express::Base::as(); } + // IfcDuration as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcIdentifier as() const { return express::Base::as(); } + // IfcIdentifier as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcInteger as() const { return express::Base::as(); } + // IfcInteger as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLabel as() const { return express::Base::as(); } + // IfcLabel as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLogical as() const { return express::Base::as(); } + // IfcLogical as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPositiveInteger as() const { return express::Base::as(); } + // IfcPositiveInteger as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcReal as() const { return express::Base::as(); } + // IfcReal as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcText as() const { return express::Base::as(); } + // IfcText as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcTime as() const { return express::Base::as(); } + // IfcTime as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcTimeStamp as() const { return express::Base::as(); } + // IfcTimeStamp as() const { return express::base::as(); } - IfcMetricValueSelect(const IfcAppliedValue& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcAppliedValue& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcMeasureWithUnit& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcMeasureWithUnit& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcReference& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcReference& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcTable& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcTable& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcTimeSeries& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcTimeSeries& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcValue& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcValue& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcDerivedMeasureValue& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcDerivedMeasureValue& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcAbsorbedDoseMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcAbsorbedDoseMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcAccelerationMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcAccelerationMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcAngularVelocityMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcAngularVelocityMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcAreaDensityMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcAreaDensityMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcCompoundPlaneAngleMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcCompoundPlaneAngleMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcCurvatureMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcCurvatureMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcDoseEquivalentMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcDoseEquivalentMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcDynamicViscosityMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcDynamicViscosityMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcElectricCapacitanceMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcElectricCapacitanceMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcElectricChargeMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcElectricChargeMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcElectricConductanceMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcElectricConductanceMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcElectricResistanceMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcElectricResistanceMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcElectricVoltageMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcElectricVoltageMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcEnergyMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcEnergyMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcForceMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcForceMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcFrequencyMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcFrequencyMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcHeatFluxDensityMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcHeatFluxDensityMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcHeatingValueMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcHeatingValueMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcIlluminanceMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcIlluminanceMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcInductanceMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcInductanceMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcIntegerCountRateMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcIntegerCountRateMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcIonConcentrationMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcIonConcentrationMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcIsothermalMoistureCapacityMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcIsothermalMoistureCapacityMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcKinematicViscosityMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcKinematicViscosityMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcLinearForceMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcLinearForceMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcLinearMomentMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcLinearMomentMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcLinearStiffnessMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcLinearStiffnessMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcLinearVelocityMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcLinearVelocityMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcLuminousFluxMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcLuminousFluxMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcLuminousIntensityDistributionMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcLuminousIntensityDistributionMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcMagneticFluxDensityMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcMagneticFluxDensityMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcMagneticFluxMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcMagneticFluxMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcMassDensityMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcMassDensityMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcMassFlowRateMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcMassFlowRateMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcMassPerLengthMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcMassPerLengthMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcModulusOfElasticityMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcModulusOfElasticityMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcModulusOfLinearSubgradeReactionMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcModulusOfLinearSubgradeReactionMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcModulusOfRotationalSubgradeReactionMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcModulusOfRotationalSubgradeReactionMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcModulusOfSubgradeReactionMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcModulusOfSubgradeReactionMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcMoistureDiffusivityMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcMoistureDiffusivityMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcMolecularWeightMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcMolecularWeightMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcMomentOfInertiaMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcMomentOfInertiaMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcMonetaryMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcMonetaryMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcPHMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcPHMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcPlanarForceMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcPlanarForceMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcPowerMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcPowerMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcPressureMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcPressureMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcRadioActivityMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcRadioActivityMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcRotationalFrequencyMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcRotationalFrequencyMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcRotationalMassMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcRotationalMassMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcRotationalStiffnessMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcRotationalStiffnessMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcSectionModulusMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcSectionModulusMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcSectionalAreaIntegralMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcSectionalAreaIntegralMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcShearModulusMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcShearModulusMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcSoundPowerLevelMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcSoundPowerLevelMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcSoundPowerMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcSoundPowerMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcSoundPressureLevelMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcSoundPressureLevelMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcSoundPressureMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcSoundPressureMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcSpecificHeatCapacityMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcSpecificHeatCapacityMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcTemperatureGradientMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcTemperatureGradientMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcTemperatureRateOfChangeMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcTemperatureRateOfChangeMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcThermalAdmittanceMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcThermalAdmittanceMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcThermalConductivityMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcThermalConductivityMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcThermalExpansionCoefficientMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcThermalExpansionCoefficientMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcThermalResistanceMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcThermalResistanceMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcThermalTransmittanceMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcThermalTransmittanceMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcTorqueMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcTorqueMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcVaporPermeabilityMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcVaporPermeabilityMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcVolumetricFlowRateMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcVolumetricFlowRateMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcWarpingConstantMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcWarpingConstantMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcWarpingMomentMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcWarpingMomentMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcMeasureValue& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcMeasureValue& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcAmountOfSubstanceMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcAmountOfSubstanceMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcAreaMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcAreaMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcComplexNumber& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcComplexNumber& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcContextDependentMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcContextDependentMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcCountMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcCountMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcDescriptiveMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcDescriptiveMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcElectricCurrentMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcElectricCurrentMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcLengthMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcLengthMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcLuminousIntensityMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcLuminousIntensityMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcMassMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcMassMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcNonNegativeLengthMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcNonNegativeLengthMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcNormalisedRatioMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcNormalisedRatioMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcNumericMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcNumericMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcParameterValue& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcParameterValue& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcPlaneAngleMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcPlaneAngleMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcPositiveLengthMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcPositiveLengthMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcPositivePlaneAngleMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcPositivePlaneAngleMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcPositiveRatioMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcPositiveRatioMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcRatioMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcRatioMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcSolidAngleMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcSolidAngleMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcThermodynamicTemperatureMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcThermodynamicTemperatureMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcTimeMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcTimeMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcVolumeMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcVolumeMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcSimpleValue& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcSimpleValue& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcBinary& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcBinary& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcBoolean& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcBoolean& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcDate& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcDate& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcDateTime& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcDateTime& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcDuration& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcDuration& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcIdentifier& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcIdentifier& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcInteger& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcInteger& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcLabel& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcLabel& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcLogical& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcLogical& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcPositiveInteger& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcPositiveInteger& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcReal& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcReal& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcText& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcText& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcTime& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcTime& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcTimeStamp& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcTimeStamp& c) : express::select(c) {}; }; /// Definition from IAI: A measure for modulus of rotational subgrade reaction which expresses the rotational bedding of a structural curve item per length. TRUE denotes infinite stiffness (rigidity). FALSE denotes no stiffness (a release). A numeric value denotes finite linear-elastic stiffness. /// /// HISTORY: New type in IFC 2x4. -class IFC_SCHEMA_API IfcModulusOfRotationalSubgradeReactionSelect : public express::Select { +class IFC_SCHEMA_API IfcModulusOfRotationalSubgradeReactionSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcBoolean as() const { return express::Base::as(); } + // IfcBoolean as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcModulusOfRotationalSubgradeReactionMeasure as() const { return express::Base::as(); } + // IfcModulusOfRotationalSubgradeReactionMeasure as() const { return express::base::as(); } - IfcModulusOfRotationalSubgradeReactionSelect(const IfcBoolean& c) : express::Select(c) {}; + IfcModulusOfRotationalSubgradeReactionSelect(const IfcBoolean& c) : express::select(c) {}; - IfcModulusOfRotationalSubgradeReactionSelect(const IfcModulusOfRotationalSubgradeReactionMeasure& c) : express::Select(c) {}; + IfcModulusOfRotationalSubgradeReactionSelect(const IfcModulusOfRotationalSubgradeReactionMeasure& c) : express::select(c) {}; }; /// Definition from IAI: Bedding measure which expresses the bedding of a structural face item per area. TRUE denotes infinite stiffness (rigidity). FALSE denotes no stiffness (a release). A numeric value denotes finite linear-elastic stiffness. /// /// HISTORY: New type in IFC 2x4. -class IFC_SCHEMA_API IfcModulusOfSubgradeReactionSelect : public express::Select { +class IFC_SCHEMA_API IfcModulusOfSubgradeReactionSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcBoolean as() const { return express::Base::as(); } + // IfcBoolean as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcModulusOfSubgradeReactionMeasure as() const { return express::Base::as(); } + // IfcModulusOfSubgradeReactionMeasure as() const { return express::base::as(); } - IfcModulusOfSubgradeReactionSelect(const IfcBoolean& c) : express::Select(c) {}; + IfcModulusOfSubgradeReactionSelect(const IfcBoolean& c) : express::select(c) {}; - IfcModulusOfSubgradeReactionSelect(const IfcModulusOfSubgradeReactionMeasure& c) : express::Select(c) {}; + IfcModulusOfSubgradeReactionSelect(const IfcModulusOfSubgradeReactionMeasure& c) : express::select(c) {}; }; /// Definition from IAI: A measure for modulus of translational subgrade reaction which expresses the translational bedding of a structural curve item per length. TRUE denotes infinite stiffness (rigidity). FALSE denotes no stiffness (a release). A numeric value denotes finite linear-elastic stiffness. /// /// HISTORY: New type in IFC 2x4. -class IFC_SCHEMA_API IfcModulusOfTranslationalSubgradeReactionSelect : public express::Select { +class IFC_SCHEMA_API IfcModulusOfTranslationalSubgradeReactionSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcBoolean as() const { return express::Base::as(); } + // IfcBoolean as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcModulusOfLinearSubgradeReactionMeasure as() const { return express::Base::as(); } + // IfcModulusOfLinearSubgradeReactionMeasure as() const { return express::base::as(); } - IfcModulusOfTranslationalSubgradeReactionSelect(const IfcBoolean& c) : express::Select(c) {}; + IfcModulusOfTranslationalSubgradeReactionSelect(const IfcBoolean& c) : express::select(c) {}; - IfcModulusOfTranslationalSubgradeReactionSelect(const IfcModulusOfLinearSubgradeReactionMeasure& c) : express::Select(c) {}; + IfcModulusOfTranslationalSubgradeReactionSelect(const IfcModulusOfLinearSubgradeReactionMeasure& c) : express::select(c) {}; }; /// IfcObjectReferenceSelect is a select type, that holds a list of resource level entities that can be used as properties within a property set. /// /// HISTORY  New select type in IFC Release 2.0. -class IFC_SCHEMA_API IfcObjectReferenceSelect : public express::Select { +class IFC_SCHEMA_API IfcObjectReferenceSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcAddress as() const { return express::Base::as(); } + // IfcAddress as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcAppliedValue as() const { return express::Base::as(); } + // IfcAppliedValue as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcExternalReference as() const { return express::Base::as(); } + // IfcExternalReference as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMaterialDefinition as() const { return express::Base::as(); } + // IfcMaterialDefinition as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcOrganization as() const { return express::Base::as(); } + // IfcOrganization as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPerson as() const { return express::Base::as(); } + // IfcPerson as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPersonAndOrganization as() const { return express::Base::as(); } + // IfcPersonAndOrganization as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcTable as() const { return express::Base::as(); } + // IfcTable as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcTimeSeries as() const { return express::Base::as(); } + // IfcTimeSeries as() const { return express::base::as(); } - IfcObjectReferenceSelect(const IfcAddress& c) : express::Select(c) {}; + IfcObjectReferenceSelect(const IfcAddress& c) : express::select(c) {}; - IfcObjectReferenceSelect(const IfcAppliedValue& c) : express::Select(c) {}; + IfcObjectReferenceSelect(const IfcAppliedValue& c) : express::select(c) {}; - IfcObjectReferenceSelect(const IfcExternalReference& c) : express::Select(c) {}; + IfcObjectReferenceSelect(const IfcExternalReference& c) : express::select(c) {}; - IfcObjectReferenceSelect(const IfcMaterialDefinition& c) : express::Select(c) {}; + IfcObjectReferenceSelect(const IfcMaterialDefinition& c) : express::select(c) {}; - IfcObjectReferenceSelect(const IfcOrganization& c) : express::Select(c) {}; + IfcObjectReferenceSelect(const IfcOrganization& c) : express::select(c) {}; - IfcObjectReferenceSelect(const IfcPerson& c) : express::Select(c) {}; + IfcObjectReferenceSelect(const IfcPerson& c) : express::select(c) {}; - IfcObjectReferenceSelect(const IfcPersonAndOrganization& c) : express::Select(c) {}; + IfcObjectReferenceSelect(const IfcPersonAndOrganization& c) : express::select(c) {}; - IfcObjectReferenceSelect(const IfcTable& c) : express::Select(c) {}; + IfcObjectReferenceSelect(const IfcTable& c) : express::select(c) {}; - IfcObjectReferenceSelect(const IfcTimeSeries& c) : express::Select(c) {}; + IfcObjectReferenceSelect(const IfcTimeSeries& c) : express::select(c) {}; }; /// IfcPointOrVertexPoint provides the option to either select a geometric point (IfcPoint and subtypes) within a geometric model, or a vertex with associated point coordinates (IfcVertexPoint) within a topological model. @@ -3012,22 +3012,22 @@ public: /// IfcVertexPoint /// /// HISTORY  New select type in IFC2x Edition 3. -class IFC_SCHEMA_API IfcPointOrVertexPoint : public express::Select { +class IFC_SCHEMA_API IfcPointOrVertexPoint : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPoint as() const { return express::Base::as(); } + // IfcPoint as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcVertexPoint as() const { return express::Base::as(); } + // IfcVertexPoint as() const { return express::base::as(); } - IfcPointOrVertexPoint(const IfcPoint& c) : express::Select(c) {}; + IfcPointOrVertexPoint(const IfcPoint& c) : express::select(c) {}; - IfcPointOrVertexPoint(const IfcVertexPoint& c) : express::Select(c) {}; + IfcPointOrVertexPoint(const IfcVertexPoint& c) : express::select(c) {}; }; /// IfcProcessSelectprovides the option to either @@ -3040,41 +3040,41 @@ public: /// IfcTypeProcess /// /// HISTORY New select type in IFC2x4. -class IFC_SCHEMA_API IfcProcessSelect : public express::Select { +class IFC_SCHEMA_API IfcProcessSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcProcess as() const { return express::Base::as(); } + // IfcProcess as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcTypeProcess as() const { return express::Base::as(); } + // IfcTypeProcess as() const { return express::base::as(); } - IfcProcessSelect(const IfcProcess& c) : express::Select(c) {}; + IfcProcessSelect(const IfcProcess& c) : express::select(c) {}; - IfcProcessSelect(const IfcTypeProcess& c) : express::Select(c) {}; + IfcProcessSelect(const IfcTypeProcess& c) : express::select(c) {}; }; -class IFC_SCHEMA_API IfcProductRepresentationSelect : public express::Select { +class IFC_SCHEMA_API IfcProductRepresentationSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcProductDefinitionShape as() const { return express::Base::as(); } + // IfcProductDefinitionShape as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcRepresentationMap as() const { return express::Base::as(); } + // IfcRepresentationMap as() const { return express::base::as(); } - IfcProductRepresentationSelect(const IfcProductDefinitionShape& c) : express::Select(c) {}; + IfcProductRepresentationSelect(const IfcProductDefinitionShape& c) : express::select(c) {}; - IfcProductRepresentationSelect(const IfcRepresentationMap& c) : express::Select(c) {}; + IfcProductRepresentationSelect(const IfcRepresentationMap& c) : express::select(c) {}; }; /// IfcProductSelectprovides the option to either select a @@ -3086,152 +3086,152 @@ public: /// IfcTypeProduct /// /// HISTORY New select type in IFC2x4. -class IFC_SCHEMA_API IfcProductSelect : public express::Select { +class IFC_SCHEMA_API IfcProductSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcProduct as() const { return express::Base::as(); } + // IfcProduct as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcTypeProduct as() const { return express::Base::as(); } + // IfcTypeProduct as() const { return express::base::as(); } - IfcProductSelect(const IfcProduct& c) : express::Select(c) {}; + IfcProductSelect(const IfcProduct& c) : express::select(c) {}; - IfcProductSelect(const IfcTypeProduct& c) : express::Select(c) {}; + IfcProductSelect(const IfcTypeProduct& c) : express::select(c) {}; }; -class IFC_SCHEMA_API IfcPropertySetDefinitionSelect : public express::Select { +class IFC_SCHEMA_API IfcPropertySetDefinitionSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPropertySetDefinition as() const { return express::Base::as(); } + // IfcPropertySetDefinition as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPropertySetDefinitionSet as() const { return express::Base::as(); } + // IfcPropertySetDefinitionSet as() const { return express::base::as(); } - IfcPropertySetDefinitionSelect(const IfcPropertySetDefinition& c) : express::Select(c) {}; + IfcPropertySetDefinitionSelect(const IfcPropertySetDefinition& c) : express::select(c) {}; - IfcPropertySetDefinitionSelect(const IfcPropertySetDefinitionSet& c) : express::Select(c) {}; + IfcPropertySetDefinitionSelect(const IfcPropertySetDefinitionSet& c) : express::select(c) {}; }; /// IfcResourceObjectSelect enables selection of resource level objects that are to be related to an resource level relationship object. The use of IfcResourceObjectSelect includes the ability to assign an external reference entity (library, classification, or documentation reference) to entities within the resource level. /// /// HISTORY  New Select type in IFC2x4. -class IFC_SCHEMA_API IfcResourceObjectSelect : public express::Select { +class IFC_SCHEMA_API IfcResourceObjectSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcActorRole as() const { return express::Base::as(); } + // IfcActorRole as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcAppliedValue as() const { return express::Base::as(); } + // IfcAppliedValue as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcApproval as() const { return express::Base::as(); } + // IfcApproval as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcConstraint as() const { return express::Base::as(); } + // IfcConstraint as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcContextDependentUnit as() const { return express::Base::as(); } + // IfcContextDependentUnit as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcConversionBasedUnit as() const { return express::Base::as(); } + // IfcConversionBasedUnit as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcExternalInformation as() const { return express::Base::as(); } + // IfcExternalInformation as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcExternalReference as() const { return express::Base::as(); } + // IfcExternalReference as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMaterialDefinition as() const { return express::Base::as(); } + // IfcMaterialDefinition as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcOrganization as() const { return express::Base::as(); } + // IfcOrganization as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPerson as() const { return express::Base::as(); } + // IfcPerson as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPersonAndOrganization as() const { return express::Base::as(); } + // IfcPersonAndOrganization as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPhysicalQuantity as() const { return express::Base::as(); } + // IfcPhysicalQuantity as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcProfileDef as() const { return express::Base::as(); } + // IfcProfileDef as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPropertyAbstraction as() const { return express::Base::as(); } + // IfcPropertyAbstraction as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcShapeAspect as() const { return express::Base::as(); } + // IfcShapeAspect as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcTimeSeries as() const { return express::Base::as(); } + // IfcTimeSeries as() const { return express::base::as(); } - IfcResourceObjectSelect(const IfcActorRole& c) : express::Select(c) {}; + IfcResourceObjectSelect(const IfcActorRole& c) : express::select(c) {}; - IfcResourceObjectSelect(const IfcAppliedValue& c) : express::Select(c) {}; + IfcResourceObjectSelect(const IfcAppliedValue& c) : express::select(c) {}; - IfcResourceObjectSelect(const IfcApproval& c) : express::Select(c) {}; + IfcResourceObjectSelect(const IfcApproval& c) : express::select(c) {}; - IfcResourceObjectSelect(const IfcConstraint& c) : express::Select(c) {}; + IfcResourceObjectSelect(const IfcConstraint& c) : express::select(c) {}; - IfcResourceObjectSelect(const IfcContextDependentUnit& c) : express::Select(c) {}; + IfcResourceObjectSelect(const IfcContextDependentUnit& c) : express::select(c) {}; - IfcResourceObjectSelect(const IfcConversionBasedUnit& c) : express::Select(c) {}; + IfcResourceObjectSelect(const IfcConversionBasedUnit& c) : express::select(c) {}; - IfcResourceObjectSelect(const IfcExternalInformation& c) : express::Select(c) {}; + IfcResourceObjectSelect(const IfcExternalInformation& c) : express::select(c) {}; - IfcResourceObjectSelect(const IfcExternalReference& c) : express::Select(c) {}; + IfcResourceObjectSelect(const IfcExternalReference& c) : express::select(c) {}; - IfcResourceObjectSelect(const IfcMaterialDefinition& c) : express::Select(c) {}; + IfcResourceObjectSelect(const IfcMaterialDefinition& c) : express::select(c) {}; - IfcResourceObjectSelect(const IfcOrganization& c) : express::Select(c) {}; + IfcResourceObjectSelect(const IfcOrganization& c) : express::select(c) {}; - IfcResourceObjectSelect(const IfcPerson& c) : express::Select(c) {}; + IfcResourceObjectSelect(const IfcPerson& c) : express::select(c) {}; - IfcResourceObjectSelect(const IfcPersonAndOrganization& c) : express::Select(c) {}; + IfcResourceObjectSelect(const IfcPersonAndOrganization& c) : express::select(c) {}; - IfcResourceObjectSelect(const IfcPhysicalQuantity& c) : express::Select(c) {}; + IfcResourceObjectSelect(const IfcPhysicalQuantity& c) : express::select(c) {}; - IfcResourceObjectSelect(const IfcProfileDef& c) : express::Select(c) {}; + IfcResourceObjectSelect(const IfcProfileDef& c) : express::select(c) {}; - IfcResourceObjectSelect(const IfcPropertyAbstraction& c) : express::Select(c) {}; + IfcResourceObjectSelect(const IfcPropertyAbstraction& c) : express::select(c) {}; - IfcResourceObjectSelect(const IfcShapeAspect& c) : express::Select(c) {}; + IfcResourceObjectSelect(const IfcShapeAspect& c) : express::select(c) {}; - IfcResourceObjectSelect(const IfcTimeSeries& c) : express::Select(c) {}; + IfcResourceObjectSelect(const IfcTimeSeries& c) : express::select(c) {}; }; /// IfcResourceSelectprovides the option to either select a @@ -3243,62 +3243,62 @@ public: /// IfcTypeResource /// /// HISTORY New select type in IFC2x4. -class IFC_SCHEMA_API IfcResourceSelect : public express::Select { +class IFC_SCHEMA_API IfcResourceSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcResource as() const { return express::Base::as(); } + // IfcResource as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcTypeResource as() const { return express::Base::as(); } + // IfcTypeResource as() const { return express::base::as(); } - IfcResourceSelect(const IfcResource& c) : express::Select(c) {}; + IfcResourceSelect(const IfcResource& c) : express::select(c) {}; - IfcResourceSelect(const IfcTypeResource& c) : express::Select(c) {}; + IfcResourceSelect(const IfcTypeResource& c) : express::select(c) {}; }; /// Definition from IAI: A measure of rotational stiffness. TRUE denotes infinite stiffness (rigidity). FALSE denotes no stiffness (a release). A numeric value denotes finite linear-elastic stiffness. /// /// HISTORY: New type in IFC 2x4. -class IFC_SCHEMA_API IfcRotationalStiffnessSelect : public express::Select { +class IFC_SCHEMA_API IfcRotationalStiffnessSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcBoolean as() const { return express::Base::as(); } + // IfcBoolean as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcRotationalStiffnessMeasure as() const { return express::Base::as(); } + // IfcRotationalStiffnessMeasure as() const { return express::base::as(); } - IfcRotationalStiffnessSelect(const IfcBoolean& c) : express::Select(c) {}; + IfcRotationalStiffnessSelect(const IfcBoolean& c) : express::select(c) {}; - IfcRotationalStiffnessSelect(const IfcRotationalStiffnessMeasure& c) : express::Select(c) {}; + IfcRotationalStiffnessSelect(const IfcRotationalStiffnessMeasure& c) : express::select(c) {}; }; -class IFC_SCHEMA_API IfcSegmentIndexSelect : public express::Select { +class IFC_SCHEMA_API IfcSegmentIndexSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcArcIndex as() const { return express::Base::as(); } + // IfcArcIndex as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLineIndex as() const { return express::Base::as(); } + // IfcLineIndex as() const { return express::base::as(); } - IfcSegmentIndexSelect(const IfcArcIndex& c) : express::Select(c) {}; + IfcSegmentIndexSelect(const IfcArcIndex& c) : express::select(c) {}; - IfcSegmentIndexSelect(const IfcLineIndex& c) : express::Select(c) {}; + IfcSegmentIndexSelect(const IfcLineIndex& c) : express::select(c) {}; }; /// Definition from ISO/CD 10303-42:1992 This type collects together, for reference when constructing more complex models, the subtypes which have the characteristics of a shell. A shell is a connected object of fixed dimensionality d = 0; 1; or 2, typically used to bound a region. The domain of a shell, if present, includes its bounds and 0 £ X < ¥. @@ -3312,22 +3312,22 @@ public: /// NOTE  Corresponding ISO 10303 type: shell. Please refer to ISO/IS 10303-42:1994, p. 127 for the final definition of the formal standard. Only the select items closed_shell (IfcClosedShell) and open_shell (IfcOpenShell) have been incorporated in the current IFC release. /// /// HISTORY  New type in IFC2x. -class IFC_SCHEMA_API IfcShell : public express::Select { +class IFC_SCHEMA_API IfcShell : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcClosedShell as() const { return express::Base::as(); } + // IfcClosedShell as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcOpenShell as() const { return express::Base::as(); } + // IfcOpenShell as() const { return express::base::as(); } - IfcShell(const IfcClosedShell& c) : express::Select(c) {}; + IfcShell(const IfcClosedShell& c) : express::select(c) {}; - IfcShell(const IfcOpenShell& c) : express::Select(c) {}; + IfcShell(const IfcOpenShell& c) : express::select(c) {}; }; /// IfcSimpleValue is a select type for selecting between simple value types. @@ -3349,94 +3349,94 @@ public: /// HISTORY New type in IFC Release 2x. /// /// IFC2x4 CHANGE Items IfcDateTime, IfcDate, IfcTime, IfcDuration added. -class IFC_SCHEMA_API IfcSimpleValue : public express::Select { +class IFC_SCHEMA_API IfcSimpleValue : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcBinary as() const { return express::Base::as(); } + // IfcBinary as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcBoolean as() const { return express::Base::as(); } + // IfcBoolean as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcDate as() const { return express::Base::as(); } + // IfcDate as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcDateTime as() const { return express::Base::as(); } + // IfcDateTime as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcDuration as() const { return express::Base::as(); } + // IfcDuration as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcIdentifier as() const { return express::Base::as(); } + // IfcIdentifier as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcInteger as() const { return express::Base::as(); } + // IfcInteger as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLabel as() const { return express::Base::as(); } + // IfcLabel as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLogical as() const { return express::Base::as(); } + // IfcLogical as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPositiveInteger as() const { return express::Base::as(); } + // IfcPositiveInteger as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcReal as() const { return express::Base::as(); } + // IfcReal as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcText as() const { return express::Base::as(); } + // IfcText as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcTime as() const { return express::Base::as(); } + // IfcTime as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcTimeStamp as() const { return express::Base::as(); } + // IfcTimeStamp as() const { return express::base::as(); } - IfcSimpleValue(const IfcBinary& c) : express::Select(c) {}; + IfcSimpleValue(const IfcBinary& c) : express::select(c) {}; - IfcSimpleValue(const IfcBoolean& c) : express::Select(c) {}; + IfcSimpleValue(const IfcBoolean& c) : express::select(c) {}; - IfcSimpleValue(const IfcDate& c) : express::Select(c) {}; + IfcSimpleValue(const IfcDate& c) : express::select(c) {}; - IfcSimpleValue(const IfcDateTime& c) : express::Select(c) {}; + IfcSimpleValue(const IfcDateTime& c) : express::select(c) {}; - IfcSimpleValue(const IfcDuration& c) : express::Select(c) {}; + IfcSimpleValue(const IfcDuration& c) : express::select(c) {}; - IfcSimpleValue(const IfcIdentifier& c) : express::Select(c) {}; + IfcSimpleValue(const IfcIdentifier& c) : express::select(c) {}; - IfcSimpleValue(const IfcInteger& c) : express::Select(c) {}; + IfcSimpleValue(const IfcInteger& c) : express::select(c) {}; - IfcSimpleValue(const IfcLabel& c) : express::Select(c) {}; + IfcSimpleValue(const IfcLabel& c) : express::select(c) {}; - IfcSimpleValue(const IfcLogical& c) : express::Select(c) {}; + IfcSimpleValue(const IfcLogical& c) : express::select(c) {}; - IfcSimpleValue(const IfcPositiveInteger& c) : express::Select(c) {}; + IfcSimpleValue(const IfcPositiveInteger& c) : express::select(c) {}; - IfcSimpleValue(const IfcReal& c) : express::Select(c) {}; + IfcSimpleValue(const IfcReal& c) : express::select(c) {}; - IfcSimpleValue(const IfcText& c) : express::Select(c) {}; + IfcSimpleValue(const IfcText& c) : express::select(c) {}; - IfcSimpleValue(const IfcTime& c) : express::Select(c) {}; + IfcSimpleValue(const IfcTime& c) : express::select(c) {}; - IfcSimpleValue(const IfcTimeStamp& c) : express::Select(c) {}; + IfcSimpleValue(const IfcTimeStamp& c) : express::select(c) {}; }; /// Definition from ISO/CD 10303-46:1992: The size select is a selection of a specific positive length measure. @@ -3451,46 +3451,46 @@ public: /// HISTORY  New type in IFC2x2. /// /// IFC2x3 CHANGE  The SELECT item IfcMeasureWithUnit has been removed from the IfcSizeSelect, the IfcRatioMeasure and IfcDescriptiveMeasure has been added. -class IFC_SCHEMA_API IfcSizeSelect : public express::Select { +class IFC_SCHEMA_API IfcSizeSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcDescriptiveMeasure as() const { return express::Base::as(); } + // IfcDescriptiveMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLengthMeasure as() const { return express::Base::as(); } + // IfcLengthMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcNormalisedRatioMeasure as() const { return express::Base::as(); } + // IfcNormalisedRatioMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPositiveLengthMeasure as() const { return express::Base::as(); } + // IfcPositiveLengthMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPositiveRatioMeasure as() const { return express::Base::as(); } + // IfcPositiveRatioMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcRatioMeasure as() const { return express::Base::as(); } + // IfcRatioMeasure as() const { return express::base::as(); } - IfcSizeSelect(const IfcDescriptiveMeasure& c) : express::Select(c) {}; + IfcSizeSelect(const IfcDescriptiveMeasure& c) : express::select(c) {}; - IfcSizeSelect(const IfcLengthMeasure& c) : express::Select(c) {}; + IfcSizeSelect(const IfcLengthMeasure& c) : express::select(c) {}; - IfcSizeSelect(const IfcNormalisedRatioMeasure& c) : express::Select(c) {}; + IfcSizeSelect(const IfcNormalisedRatioMeasure& c) : express::select(c) {}; - IfcSizeSelect(const IfcPositiveLengthMeasure& c) : express::Select(c) {}; + IfcSizeSelect(const IfcPositiveLengthMeasure& c) : express::select(c) {}; - IfcSizeSelect(const IfcPositiveRatioMeasure& c) : express::Select(c) {}; + IfcSizeSelect(const IfcPositiveRatioMeasure& c) : express::select(c) {}; - IfcSizeSelect(const IfcRatioMeasure& c) : express::Select(c) {}; + IfcSizeSelect(const IfcRatioMeasure& c) : express::select(c) {}; }; /// The IfcSolidOrShell provides the option to either select a geometric volume (IfcSolidModel and subtypes) within a geometric model, or a shell (IfcClosedShell) within a topological model. @@ -3500,22 +3500,22 @@ public: /// IfcClosedShell /// /// HISTORY New select type in IFC2x4. -class IFC_SCHEMA_API IfcSolidOrShell : public express::Select { +class IFC_SCHEMA_API IfcSolidOrShell : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcClosedShell as() const { return express::Base::as(); } + // IfcClosedShell as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSolidModel as() const { return express::Base::as(); } + // IfcSolidModel as() const { return express::base::as(); } - IfcSolidOrShell(const IfcClosedShell& c) : express::Select(c) {}; + IfcSolidOrShell(const IfcClosedShell& c) : express::select(c) {}; - IfcSolidOrShell(const IfcSolidModel& c) : express::Select(c) {}; + IfcSolidOrShell(const IfcSolidModel& c) : express::select(c) {}; }; /// Definition from IAI: The @@ -3530,41 +3530,41 @@ public: /// /// HISTORY New select type /// in IFC2x4. -class IFC_SCHEMA_API IfcSpaceBoundarySelect : public express::Select { +class IFC_SCHEMA_API IfcSpaceBoundarySelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcExternalSpatialElement as() const { return express::Base::as(); } + // IfcExternalSpatialElement as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSpace as() const { return express::Base::as(); } + // IfcSpace as() const { return express::base::as(); } - IfcSpaceBoundarySelect(const IfcExternalSpatialElement& c) : express::Select(c) {}; + IfcSpaceBoundarySelect(const IfcExternalSpatialElement& c) : express::select(c) {}; - IfcSpaceBoundarySelect(const IfcSpace& c) : express::Select(c) {}; + IfcSpaceBoundarySelect(const IfcSpace& c) : express::select(c) {}; }; -class IFC_SCHEMA_API IfcSpatialReferenceSelect : public express::Select { +class IFC_SCHEMA_API IfcSpatialReferenceSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcGroup as() const { return express::Base::as(); } + // IfcGroup as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcProduct as() const { return express::Base::as(); } + // IfcProduct as() const { return express::base::as(); } - IfcSpatialReferenceSelect(const IfcGroup& c) : express::Select(c) {}; + IfcSpatialReferenceSelect(const IfcGroup& c) : express::select(c) {}; - IfcSpatialReferenceSelect(const IfcProduct& c) : express::Select(c) {}; + IfcSpatialReferenceSelect(const IfcProduct& c) : express::select(c) {}; }; /// The IfcSpecularHighlightSelect defines the selectable types of value for specular highlight sharpness. @@ -3577,22 +3577,22 @@ public: /// For each surface side style only one of the two methods is needed for calculating the specular part of the equation. /// /// HISTORY: New type in IFC2x2. -class IFC_SCHEMA_API IfcSpecularHighlightSelect : public express::Select { +class IFC_SCHEMA_API IfcSpecularHighlightSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSpecularExponent as() const { return express::Base::as(); } + // IfcSpecularExponent as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSpecularRoughness as() const { return express::Base::as(); } + // IfcSpecularRoughness as() const { return express::base::as(); } - IfcSpecularHighlightSelect(const IfcSpecularExponent& c) : express::Select(c) {}; + IfcSpecularHighlightSelect(const IfcSpecularExponent& c) : express::select(c) {}; - IfcSpecularHighlightSelect(const IfcSpecularRoughness& c) : express::Select(c) {}; + IfcSpecularHighlightSelect(const IfcSpecularRoughness& c) : express::select(c) {}; }; /// Definition from IAI: This type definition shall be used to @@ -3604,22 +3604,22 @@ public: /// /// HISTORY: New type in Release IFC2x /// Edition 2. -class IFC_SCHEMA_API IfcStructuralActivityAssignmentSelect : public express::Select { +class IFC_SCHEMA_API IfcStructuralActivityAssignmentSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcElement as() const { return express::Base::as(); } + // IfcElement as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcStructuralItem as() const { return express::Base::as(); } + // IfcStructuralItem as() const { return express::base::as(); } - IfcStructuralActivityAssignmentSelect(const IfcElement& c) : express::Select(c) {}; + IfcStructuralActivityAssignmentSelect(const IfcElement& c) : express::select(c) {}; - IfcStructuralActivityAssignmentSelect(const IfcStructuralItem& c) : express::Select(c) {}; + IfcStructuralActivityAssignmentSelect(const IfcStructuralItem& c) : express::select(c) {}; }; /// IfcSurfaceOrFaceSurface provides the option to either select a geometric surface (IfcSurface @@ -3631,28 +3631,28 @@ public: /// IfcFaceBasedSurfaceModel (a connected face set, representing a faceted surface as an approximation of a non planar, non rectangular bounded surface) /// /// HISTORY  New select type in IFC2x3. -class IFC_SCHEMA_API IfcSurfaceOrFaceSurface : public express::Select { +class IFC_SCHEMA_API IfcSurfaceOrFaceSurface : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcFaceBasedSurfaceModel as() const { return express::Base::as(); } + // IfcFaceBasedSurfaceModel as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcFaceSurface as() const { return express::Base::as(); } + // IfcFaceSurface as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSurface as() const { return express::Base::as(); } + // IfcSurface as() const { return express::base::as(); } - IfcSurfaceOrFaceSurface(const IfcFaceBasedSurfaceModel& c) : express::Select(c) {}; + IfcSurfaceOrFaceSurface(const IfcFaceBasedSurfaceModel& c) : express::select(c) {}; - IfcSurfaceOrFaceSurface(const IfcFaceSurface& c) : express::Select(c) {}; + IfcSurfaceOrFaceSurface(const IfcFaceSurface& c) : express::select(c) {}; - IfcSurfaceOrFaceSurface(const IfcSurface& c) : express::Select(c) {}; + IfcSurfaceOrFaceSurface(const IfcSurface& c) : express::select(c) {}; }; /// Definition from ISO/CD 10303-46:1992: The surface style element select is a selection of the different surface styles to use in the presentation of the side of a surface. @@ -3664,40 +3664,40 @@ public: /// NOTE: Corresponding ISO 10303 type: surface_style_element_select. Please refer to ISO/IS 10303-46:1994, p. 85 for the final definition of the formal standard. /// /// HISTORY: New Select type in IFC2x2. -class IFC_SCHEMA_API IfcSurfaceStyleElementSelect : public express::Select { +class IFC_SCHEMA_API IfcSurfaceStyleElementSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcExternallyDefinedSurfaceStyle as() const { return express::Base::as(); } + // IfcExternallyDefinedSurfaceStyle as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSurfaceStyleLighting as() const { return express::Base::as(); } + // IfcSurfaceStyleLighting as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSurfaceStyleRefraction as() const { return express::Base::as(); } + // IfcSurfaceStyleRefraction as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSurfaceStyleShading as() const { return express::Base::as(); } + // IfcSurfaceStyleShading as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSurfaceStyleWithTextures as() const { return express::Base::as(); } + // IfcSurfaceStyleWithTextures as() const { return express::base::as(); } - IfcSurfaceStyleElementSelect(const IfcExternallyDefinedSurfaceStyle& c) : express::Select(c) {}; + IfcSurfaceStyleElementSelect(const IfcExternallyDefinedSurfaceStyle& c) : express::select(c) {}; - IfcSurfaceStyleElementSelect(const IfcSurfaceStyleLighting& c) : express::Select(c) {}; + IfcSurfaceStyleElementSelect(const IfcSurfaceStyleLighting& c) : express::select(c) {}; - IfcSurfaceStyleElementSelect(const IfcSurfaceStyleRefraction& c) : express::Select(c) {}; + IfcSurfaceStyleElementSelect(const IfcSurfaceStyleRefraction& c) : express::select(c) {}; - IfcSurfaceStyleElementSelect(const IfcSurfaceStyleShading& c) : express::Select(c) {}; + IfcSurfaceStyleElementSelect(const IfcSurfaceStyleShading& c) : express::select(c) {}; - IfcSurfaceStyleElementSelect(const IfcSurfaceStyleWithTextures& c) : express::Select(c) {}; + IfcSurfaceStyleElementSelect(const IfcSurfaceStyleWithTextures& c) : express::select(c) {}; }; /// IfcTextFontSelect allows for either a predefined text font, a text font model or an externally defined text font to be used to describe the font of a text literal. The definition of the text font model is based on W3C TR Cascading Style Sheet Version 1, whereas the definition of predefined text font is based on ISO 10303. @@ -3707,63 +3707,63 @@ public: /// HISTORY  New type in IFC2x2. /// /// IFC2x3 CHANGE  The select type has been renamed from IfcFontSelect. -class IFC_SCHEMA_API IfcTextFontSelect : public express::Select { +class IFC_SCHEMA_API IfcTextFontSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcExternallyDefinedTextFont as() const { return express::Base::as(); } + // IfcExternallyDefinedTextFont as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPreDefinedTextFont as() const { return express::Base::as(); } + // IfcPreDefinedTextFont as() const { return express::base::as(); } - IfcTextFontSelect(const IfcExternallyDefinedTextFont& c) : express::Select(c) {}; + IfcTextFontSelect(const IfcExternallyDefinedTextFont& c) : express::select(c) {}; - IfcTextFontSelect(const IfcPreDefinedTextFont& c) : express::Select(c) {}; + IfcTextFontSelect(const IfcPreDefinedTextFont& c) : express::select(c) {}; }; /// IfcTimeOrRatioSelect allows a value to be selected as being either a ratio or a time measure. /// HISTORY New SELECT in IFC2x4 -class IFC_SCHEMA_API IfcTimeOrRatioSelect : public express::Select { +class IFC_SCHEMA_API IfcTimeOrRatioSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcDuration as() const { return express::Base::as(); } + // IfcDuration as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcRatioMeasure as() const { return express::Base::as(); } + // IfcRatioMeasure as() const { return express::base::as(); } - IfcTimeOrRatioSelect(const IfcDuration& c) : express::Select(c) {}; + IfcTimeOrRatioSelect(const IfcDuration& c) : express::select(c) {}; - IfcTimeOrRatioSelect(const IfcRatioMeasure& c) : express::Select(c) {}; + IfcTimeOrRatioSelect(const IfcRatioMeasure& c) : express::select(c) {}; }; /// Definition from IAI: A measure of linear stiffness. TRUE denotes infinite stiffness (rigidity). FALSE denotes no stiffness (a release). A numeric value denotes finite linear-elastic stiffness. /// /// HISTORY: New type in IFC 2x4. -class IFC_SCHEMA_API IfcTranslationalStiffnessSelect : public express::Select { +class IFC_SCHEMA_API IfcTranslationalStiffnessSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcBoolean as() const { return express::Base::as(); } + // IfcBoolean as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLinearStiffnessMeasure as() const { return express::Base::as(); } + // IfcLinearStiffnessMeasure as() const { return express::base::as(); } - IfcTranslationalStiffnessSelect(const IfcBoolean& c) : express::Select(c) {}; + IfcTranslationalStiffnessSelect(const IfcBoolean& c) : express::select(c) {}; - IfcTranslationalStiffnessSelect(const IfcLinearStiffnessMeasure& c) : express::Select(c) {}; + IfcTranslationalStiffnessSelect(const IfcLinearStiffnessMeasure& c) : express::select(c) {}; }; /// Definition from ISO/CD 10303-42:1992: This select type identifies the two possible ways of trimming a parametric curve; by a Cartesian point on the curve, or by a REAL number defining a parameter value within the parametric range of the curve. @@ -3771,22 +3771,22 @@ public: /// NOTE Corresponding ISO 10303 type: trimming_select, please refer to ISO/IS 10303-42:1994, p. 20 for the final definition of the formal standard. /// /// HISTORY New Type in IFC Release 1.0 -class IFC_SCHEMA_API IfcTrimmingSelect : public express::Select { +class IFC_SCHEMA_API IfcTrimmingSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcCartesianPoint as() const { return express::Base::as(); } + // IfcCartesianPoint as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcParameterValue as() const { return express::Base::as(); } + // IfcParameterValue as() const { return express::base::as(); } - IfcTrimmingSelect(const IfcCartesianPoint& c) : express::Select(c) {}; + IfcTrimmingSelect(const IfcCartesianPoint& c) : express::select(c) {}; - IfcTrimmingSelect(const IfcParameterValue& c) : express::Select(c) {}; + IfcTrimmingSelect(const IfcParameterValue& c) : express::select(c) {}; }; /// Definition from ISO/CD 10303-41:1992: A unit is a physical quantity, with a value of one, which is used as a standard in terms of which other quantities are expressed. @@ -3802,28 +3802,28 @@ public: /// IfcMonetaryUnit: A unit for defining currencies. /// /// HISTORY: New type in IFC Release 1.5.1. -class IFC_SCHEMA_API IfcUnit : public express::Select { +class IFC_SCHEMA_API IfcUnit : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcDerivedUnit as() const { return express::Base::as(); } + // IfcDerivedUnit as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMonetaryUnit as() const { return express::Base::as(); } + // IfcMonetaryUnit as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcNamedUnit as() const { return express::Base::as(); } + // IfcNamedUnit as() const { return express::base::as(); } - IfcUnit(const IfcDerivedUnit& c) : express::Select(c) {}; + IfcUnit(const IfcDerivedUnit& c) : express::select(c) {}; - IfcUnit(const IfcMonetaryUnit& c) : express::Select(c) {}; + IfcUnit(const IfcMonetaryUnit& c) : express::select(c) {}; - IfcUnit(const IfcNamedUnit& c) : express::Select(c) {}; + IfcUnit(const IfcNamedUnit& c) : express::select(c) {}; }; /// IfcValue is a select type for selecting between more specialised select types IfcSimpleValue, @@ -3836,676 +3836,676 @@ public: /// IfcDerivedMeasureValue A select type for derived measure types. /// /// HISTORY New type in IFC Release 2x. -class IFC_SCHEMA_API IfcValue : public express::Select { +class IFC_SCHEMA_API IfcValue : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcDerivedMeasureValue as() const { return express::Base::as(); } + // IfcDerivedMeasureValue as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcAbsorbedDoseMeasure as() const { return express::Base::as(); } + // IfcAbsorbedDoseMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcAccelerationMeasure as() const { return express::Base::as(); } + // IfcAccelerationMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcAngularVelocityMeasure as() const { return express::Base::as(); } + // IfcAngularVelocityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcAreaDensityMeasure as() const { return express::Base::as(); } + // IfcAreaDensityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcCompoundPlaneAngleMeasure as() const { return express::Base::as(); } + // IfcCompoundPlaneAngleMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcCurvatureMeasure as() const { return express::Base::as(); } + // IfcCurvatureMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcDoseEquivalentMeasure as() const { return express::Base::as(); } + // IfcDoseEquivalentMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcDynamicViscosityMeasure as() const { return express::Base::as(); } + // IfcDynamicViscosityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcElectricCapacitanceMeasure as() const { return express::Base::as(); } + // IfcElectricCapacitanceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcElectricChargeMeasure as() const { return express::Base::as(); } + // IfcElectricChargeMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcElectricConductanceMeasure as() const { return express::Base::as(); } + // IfcElectricConductanceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcElectricResistanceMeasure as() const { return express::Base::as(); } + // IfcElectricResistanceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcElectricVoltageMeasure as() const { return express::Base::as(); } + // IfcElectricVoltageMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcEnergyMeasure as() const { return express::Base::as(); } + // IfcEnergyMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcForceMeasure as() const { return express::Base::as(); } + // IfcForceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcFrequencyMeasure as() const { return express::Base::as(); } + // IfcFrequencyMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcHeatFluxDensityMeasure as() const { return express::Base::as(); } + // IfcHeatFluxDensityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcHeatingValueMeasure as() const { return express::Base::as(); } + // IfcHeatingValueMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcIlluminanceMeasure as() const { return express::Base::as(); } + // IfcIlluminanceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcInductanceMeasure as() const { return express::Base::as(); } + // IfcInductanceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcIntegerCountRateMeasure as() const { return express::Base::as(); } + // IfcIntegerCountRateMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcIonConcentrationMeasure as() const { return express::Base::as(); } + // IfcIonConcentrationMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcIsothermalMoistureCapacityMeasure as() const { return express::Base::as(); } + // IfcIsothermalMoistureCapacityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcKinematicViscosityMeasure as() const { return express::Base::as(); } + // IfcKinematicViscosityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLinearForceMeasure as() const { return express::Base::as(); } + // IfcLinearForceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLinearMomentMeasure as() const { return express::Base::as(); } + // IfcLinearMomentMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLinearStiffnessMeasure as() const { return express::Base::as(); } + // IfcLinearStiffnessMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLinearVelocityMeasure as() const { return express::Base::as(); } + // IfcLinearVelocityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLuminousFluxMeasure as() const { return express::Base::as(); } + // IfcLuminousFluxMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLuminousIntensityDistributionMeasure as() const { return express::Base::as(); } + // IfcLuminousIntensityDistributionMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMagneticFluxDensityMeasure as() const { return express::Base::as(); } + // IfcMagneticFluxDensityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMagneticFluxMeasure as() const { return express::Base::as(); } + // IfcMagneticFluxMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMassDensityMeasure as() const { return express::Base::as(); } + // IfcMassDensityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMassFlowRateMeasure as() const { return express::Base::as(); } + // IfcMassFlowRateMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMassPerLengthMeasure as() const { return express::Base::as(); } + // IfcMassPerLengthMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcModulusOfElasticityMeasure as() const { return express::Base::as(); } + // IfcModulusOfElasticityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcModulusOfLinearSubgradeReactionMeasure as() const { return express::Base::as(); } + // IfcModulusOfLinearSubgradeReactionMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcModulusOfRotationalSubgradeReactionMeasure as() const { return express::Base::as(); } + // IfcModulusOfRotationalSubgradeReactionMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcModulusOfSubgradeReactionMeasure as() const { return express::Base::as(); } + // IfcModulusOfSubgradeReactionMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMoistureDiffusivityMeasure as() const { return express::Base::as(); } + // IfcMoistureDiffusivityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMolecularWeightMeasure as() const { return express::Base::as(); } + // IfcMolecularWeightMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMomentOfInertiaMeasure as() const { return express::Base::as(); } + // IfcMomentOfInertiaMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMonetaryMeasure as() const { return express::Base::as(); } + // IfcMonetaryMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPHMeasure as() const { return express::Base::as(); } + // IfcPHMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPlanarForceMeasure as() const { return express::Base::as(); } + // IfcPlanarForceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPowerMeasure as() const { return express::Base::as(); } + // IfcPowerMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPressureMeasure as() const { return express::Base::as(); } + // IfcPressureMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcRadioActivityMeasure as() const { return express::Base::as(); } + // IfcRadioActivityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcRotationalFrequencyMeasure as() const { return express::Base::as(); } + // IfcRotationalFrequencyMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcRotationalMassMeasure as() const { return express::Base::as(); } + // IfcRotationalMassMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcRotationalStiffnessMeasure as() const { return express::Base::as(); } + // IfcRotationalStiffnessMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSectionModulusMeasure as() const { return express::Base::as(); } + // IfcSectionModulusMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSectionalAreaIntegralMeasure as() const { return express::Base::as(); } + // IfcSectionalAreaIntegralMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcShearModulusMeasure as() const { return express::Base::as(); } + // IfcShearModulusMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSoundPowerLevelMeasure as() const { return express::Base::as(); } + // IfcSoundPowerLevelMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSoundPowerMeasure as() const { return express::Base::as(); } + // IfcSoundPowerMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSoundPressureLevelMeasure as() const { return express::Base::as(); } + // IfcSoundPressureLevelMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSoundPressureMeasure as() const { return express::Base::as(); } + // IfcSoundPressureMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSpecificHeatCapacityMeasure as() const { return express::Base::as(); } + // IfcSpecificHeatCapacityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcTemperatureGradientMeasure as() const { return express::Base::as(); } + // IfcTemperatureGradientMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcTemperatureRateOfChangeMeasure as() const { return express::Base::as(); } + // IfcTemperatureRateOfChangeMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcThermalAdmittanceMeasure as() const { return express::Base::as(); } + // IfcThermalAdmittanceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcThermalConductivityMeasure as() const { return express::Base::as(); } + // IfcThermalConductivityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcThermalExpansionCoefficientMeasure as() const { return express::Base::as(); } + // IfcThermalExpansionCoefficientMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcThermalResistanceMeasure as() const { return express::Base::as(); } + // IfcThermalResistanceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcThermalTransmittanceMeasure as() const { return express::Base::as(); } + // IfcThermalTransmittanceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcTorqueMeasure as() const { return express::Base::as(); } + // IfcTorqueMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcVaporPermeabilityMeasure as() const { return express::Base::as(); } + // IfcVaporPermeabilityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcVolumetricFlowRateMeasure as() const { return express::Base::as(); } + // IfcVolumetricFlowRateMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcWarpingConstantMeasure as() const { return express::Base::as(); } + // IfcWarpingConstantMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcWarpingMomentMeasure as() const { return express::Base::as(); } + // IfcWarpingMomentMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMeasureValue as() const { return express::Base::as(); } + // IfcMeasureValue as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcAmountOfSubstanceMeasure as() const { return express::Base::as(); } + // IfcAmountOfSubstanceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcAreaMeasure as() const { return express::Base::as(); } + // IfcAreaMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcComplexNumber as() const { return express::Base::as(); } + // IfcComplexNumber as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcContextDependentMeasure as() const { return express::Base::as(); } + // IfcContextDependentMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcCountMeasure as() const { return express::Base::as(); } + // IfcCountMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcDescriptiveMeasure as() const { return express::Base::as(); } + // IfcDescriptiveMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcElectricCurrentMeasure as() const { return express::Base::as(); } + // IfcElectricCurrentMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLengthMeasure as() const { return express::Base::as(); } + // IfcLengthMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLuminousIntensityMeasure as() const { return express::Base::as(); } + // IfcLuminousIntensityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMassMeasure as() const { return express::Base::as(); } + // IfcMassMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcNonNegativeLengthMeasure as() const { return express::Base::as(); } + // IfcNonNegativeLengthMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcNormalisedRatioMeasure as() const { return express::Base::as(); } + // IfcNormalisedRatioMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcNumericMeasure as() const { return express::Base::as(); } + // IfcNumericMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcParameterValue as() const { return express::Base::as(); } + // IfcParameterValue as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPlaneAngleMeasure as() const { return express::Base::as(); } + // IfcPlaneAngleMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPositiveLengthMeasure as() const { return express::Base::as(); } + // IfcPositiveLengthMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPositivePlaneAngleMeasure as() const { return express::Base::as(); } + // IfcPositivePlaneAngleMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPositiveRatioMeasure as() const { return express::Base::as(); } + // IfcPositiveRatioMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcRatioMeasure as() const { return express::Base::as(); } + // IfcRatioMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSolidAngleMeasure as() const { return express::Base::as(); } + // IfcSolidAngleMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcThermodynamicTemperatureMeasure as() const { return express::Base::as(); } + // IfcThermodynamicTemperatureMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcTimeMeasure as() const { return express::Base::as(); } + // IfcTimeMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcVolumeMeasure as() const { return express::Base::as(); } + // IfcVolumeMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSimpleValue as() const { return express::Base::as(); } + // IfcSimpleValue as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcBinary as() const { return express::Base::as(); } + // IfcBinary as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcBoolean as() const { return express::Base::as(); } + // IfcBoolean as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcDate as() const { return express::Base::as(); } + // IfcDate as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcDateTime as() const { return express::Base::as(); } + // IfcDateTime as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcDuration as() const { return express::Base::as(); } + // IfcDuration as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcIdentifier as() const { return express::Base::as(); } + // IfcIdentifier as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcInteger as() const { return express::Base::as(); } + // IfcInteger as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLabel as() const { return express::Base::as(); } + // IfcLabel as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLogical as() const { return express::Base::as(); } + // IfcLogical as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPositiveInteger as() const { return express::Base::as(); } + // IfcPositiveInteger as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcReal as() const { return express::Base::as(); } + // IfcReal as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcText as() const { return express::Base::as(); } + // IfcText as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcTime as() const { return express::Base::as(); } + // IfcTime as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcTimeStamp as() const { return express::Base::as(); } + // IfcTimeStamp as() const { return express::base::as(); } - IfcValue(const IfcDerivedMeasureValue& c) : express::Select(c) {}; + IfcValue(const IfcDerivedMeasureValue& c) : express::select(c) {}; - IfcValue(const IfcAbsorbedDoseMeasure& c) : express::Select(c) {}; + IfcValue(const IfcAbsorbedDoseMeasure& c) : express::select(c) {}; - IfcValue(const IfcAccelerationMeasure& c) : express::Select(c) {}; + IfcValue(const IfcAccelerationMeasure& c) : express::select(c) {}; - IfcValue(const IfcAngularVelocityMeasure& c) : express::Select(c) {}; + IfcValue(const IfcAngularVelocityMeasure& c) : express::select(c) {}; - IfcValue(const IfcAreaDensityMeasure& c) : express::Select(c) {}; + IfcValue(const IfcAreaDensityMeasure& c) : express::select(c) {}; - IfcValue(const IfcCompoundPlaneAngleMeasure& c) : express::Select(c) {}; + IfcValue(const IfcCompoundPlaneAngleMeasure& c) : express::select(c) {}; - IfcValue(const IfcCurvatureMeasure& c) : express::Select(c) {}; + IfcValue(const IfcCurvatureMeasure& c) : express::select(c) {}; - IfcValue(const IfcDoseEquivalentMeasure& c) : express::Select(c) {}; + IfcValue(const IfcDoseEquivalentMeasure& c) : express::select(c) {}; - IfcValue(const IfcDynamicViscosityMeasure& c) : express::Select(c) {}; + IfcValue(const IfcDynamicViscosityMeasure& c) : express::select(c) {}; - IfcValue(const IfcElectricCapacitanceMeasure& c) : express::Select(c) {}; + IfcValue(const IfcElectricCapacitanceMeasure& c) : express::select(c) {}; - IfcValue(const IfcElectricChargeMeasure& c) : express::Select(c) {}; + IfcValue(const IfcElectricChargeMeasure& c) : express::select(c) {}; - IfcValue(const IfcElectricConductanceMeasure& c) : express::Select(c) {}; + IfcValue(const IfcElectricConductanceMeasure& c) : express::select(c) {}; - IfcValue(const IfcElectricResistanceMeasure& c) : express::Select(c) {}; + IfcValue(const IfcElectricResistanceMeasure& c) : express::select(c) {}; - IfcValue(const IfcElectricVoltageMeasure& c) : express::Select(c) {}; + IfcValue(const IfcElectricVoltageMeasure& c) : express::select(c) {}; - IfcValue(const IfcEnergyMeasure& c) : express::Select(c) {}; + IfcValue(const IfcEnergyMeasure& c) : express::select(c) {}; - IfcValue(const IfcForceMeasure& c) : express::Select(c) {}; + IfcValue(const IfcForceMeasure& c) : express::select(c) {}; - IfcValue(const IfcFrequencyMeasure& c) : express::Select(c) {}; + IfcValue(const IfcFrequencyMeasure& c) : express::select(c) {}; - IfcValue(const IfcHeatFluxDensityMeasure& c) : express::Select(c) {}; + IfcValue(const IfcHeatFluxDensityMeasure& c) : express::select(c) {}; - IfcValue(const IfcHeatingValueMeasure& c) : express::Select(c) {}; + IfcValue(const IfcHeatingValueMeasure& c) : express::select(c) {}; - IfcValue(const IfcIlluminanceMeasure& c) : express::Select(c) {}; + IfcValue(const IfcIlluminanceMeasure& c) : express::select(c) {}; - IfcValue(const IfcInductanceMeasure& c) : express::Select(c) {}; + IfcValue(const IfcInductanceMeasure& c) : express::select(c) {}; - IfcValue(const IfcIntegerCountRateMeasure& c) : express::Select(c) {}; + IfcValue(const IfcIntegerCountRateMeasure& c) : express::select(c) {}; - IfcValue(const IfcIonConcentrationMeasure& c) : express::Select(c) {}; + IfcValue(const IfcIonConcentrationMeasure& c) : express::select(c) {}; - IfcValue(const IfcIsothermalMoistureCapacityMeasure& c) : express::Select(c) {}; + IfcValue(const IfcIsothermalMoistureCapacityMeasure& c) : express::select(c) {}; - IfcValue(const IfcKinematicViscosityMeasure& c) : express::Select(c) {}; + IfcValue(const IfcKinematicViscosityMeasure& c) : express::select(c) {}; - IfcValue(const IfcLinearForceMeasure& c) : express::Select(c) {}; + IfcValue(const IfcLinearForceMeasure& c) : express::select(c) {}; - IfcValue(const IfcLinearMomentMeasure& c) : express::Select(c) {}; + IfcValue(const IfcLinearMomentMeasure& c) : express::select(c) {}; - IfcValue(const IfcLinearStiffnessMeasure& c) : express::Select(c) {}; + IfcValue(const IfcLinearStiffnessMeasure& c) : express::select(c) {}; - IfcValue(const IfcLinearVelocityMeasure& c) : express::Select(c) {}; + IfcValue(const IfcLinearVelocityMeasure& c) : express::select(c) {}; - IfcValue(const IfcLuminousFluxMeasure& c) : express::Select(c) {}; + IfcValue(const IfcLuminousFluxMeasure& c) : express::select(c) {}; - IfcValue(const IfcLuminousIntensityDistributionMeasure& c) : express::Select(c) {}; + IfcValue(const IfcLuminousIntensityDistributionMeasure& c) : express::select(c) {}; - IfcValue(const IfcMagneticFluxDensityMeasure& c) : express::Select(c) {}; + IfcValue(const IfcMagneticFluxDensityMeasure& c) : express::select(c) {}; - IfcValue(const IfcMagneticFluxMeasure& c) : express::Select(c) {}; + IfcValue(const IfcMagneticFluxMeasure& c) : express::select(c) {}; - IfcValue(const IfcMassDensityMeasure& c) : express::Select(c) {}; + IfcValue(const IfcMassDensityMeasure& c) : express::select(c) {}; - IfcValue(const IfcMassFlowRateMeasure& c) : express::Select(c) {}; + IfcValue(const IfcMassFlowRateMeasure& c) : express::select(c) {}; - IfcValue(const IfcMassPerLengthMeasure& c) : express::Select(c) {}; + IfcValue(const IfcMassPerLengthMeasure& c) : express::select(c) {}; - IfcValue(const IfcModulusOfElasticityMeasure& c) : express::Select(c) {}; + IfcValue(const IfcModulusOfElasticityMeasure& c) : express::select(c) {}; - IfcValue(const IfcModulusOfLinearSubgradeReactionMeasure& c) : express::Select(c) {}; + IfcValue(const IfcModulusOfLinearSubgradeReactionMeasure& c) : express::select(c) {}; - IfcValue(const IfcModulusOfRotationalSubgradeReactionMeasure& c) : express::Select(c) {}; + IfcValue(const IfcModulusOfRotationalSubgradeReactionMeasure& c) : express::select(c) {}; - IfcValue(const IfcModulusOfSubgradeReactionMeasure& c) : express::Select(c) {}; + IfcValue(const IfcModulusOfSubgradeReactionMeasure& c) : express::select(c) {}; - IfcValue(const IfcMoistureDiffusivityMeasure& c) : express::Select(c) {}; + IfcValue(const IfcMoistureDiffusivityMeasure& c) : express::select(c) {}; - IfcValue(const IfcMolecularWeightMeasure& c) : express::Select(c) {}; + IfcValue(const IfcMolecularWeightMeasure& c) : express::select(c) {}; - IfcValue(const IfcMomentOfInertiaMeasure& c) : express::Select(c) {}; + IfcValue(const IfcMomentOfInertiaMeasure& c) : express::select(c) {}; - IfcValue(const IfcMonetaryMeasure& c) : express::Select(c) {}; + IfcValue(const IfcMonetaryMeasure& c) : express::select(c) {}; - IfcValue(const IfcPHMeasure& c) : express::Select(c) {}; + IfcValue(const IfcPHMeasure& c) : express::select(c) {}; - IfcValue(const IfcPlanarForceMeasure& c) : express::Select(c) {}; + IfcValue(const IfcPlanarForceMeasure& c) : express::select(c) {}; - IfcValue(const IfcPowerMeasure& c) : express::Select(c) {}; + IfcValue(const IfcPowerMeasure& c) : express::select(c) {}; - IfcValue(const IfcPressureMeasure& c) : express::Select(c) {}; + IfcValue(const IfcPressureMeasure& c) : express::select(c) {}; - IfcValue(const IfcRadioActivityMeasure& c) : express::Select(c) {}; + IfcValue(const IfcRadioActivityMeasure& c) : express::select(c) {}; - IfcValue(const IfcRotationalFrequencyMeasure& c) : express::Select(c) {}; + IfcValue(const IfcRotationalFrequencyMeasure& c) : express::select(c) {}; - IfcValue(const IfcRotationalMassMeasure& c) : express::Select(c) {}; + IfcValue(const IfcRotationalMassMeasure& c) : express::select(c) {}; - IfcValue(const IfcRotationalStiffnessMeasure& c) : express::Select(c) {}; + IfcValue(const IfcRotationalStiffnessMeasure& c) : express::select(c) {}; - IfcValue(const IfcSectionModulusMeasure& c) : express::Select(c) {}; + IfcValue(const IfcSectionModulusMeasure& c) : express::select(c) {}; - IfcValue(const IfcSectionalAreaIntegralMeasure& c) : express::Select(c) {}; + IfcValue(const IfcSectionalAreaIntegralMeasure& c) : express::select(c) {}; - IfcValue(const IfcShearModulusMeasure& c) : express::Select(c) {}; + IfcValue(const IfcShearModulusMeasure& c) : express::select(c) {}; - IfcValue(const IfcSoundPowerLevelMeasure& c) : express::Select(c) {}; + IfcValue(const IfcSoundPowerLevelMeasure& c) : express::select(c) {}; - IfcValue(const IfcSoundPowerMeasure& c) : express::Select(c) {}; + IfcValue(const IfcSoundPowerMeasure& c) : express::select(c) {}; - IfcValue(const IfcSoundPressureLevelMeasure& c) : express::Select(c) {}; + IfcValue(const IfcSoundPressureLevelMeasure& c) : express::select(c) {}; - IfcValue(const IfcSoundPressureMeasure& c) : express::Select(c) {}; + IfcValue(const IfcSoundPressureMeasure& c) : express::select(c) {}; - IfcValue(const IfcSpecificHeatCapacityMeasure& c) : express::Select(c) {}; + IfcValue(const IfcSpecificHeatCapacityMeasure& c) : express::select(c) {}; - IfcValue(const IfcTemperatureGradientMeasure& c) : express::Select(c) {}; + IfcValue(const IfcTemperatureGradientMeasure& c) : express::select(c) {}; - IfcValue(const IfcTemperatureRateOfChangeMeasure& c) : express::Select(c) {}; + IfcValue(const IfcTemperatureRateOfChangeMeasure& c) : express::select(c) {}; - IfcValue(const IfcThermalAdmittanceMeasure& c) : express::Select(c) {}; + IfcValue(const IfcThermalAdmittanceMeasure& c) : express::select(c) {}; - IfcValue(const IfcThermalConductivityMeasure& c) : express::Select(c) {}; + IfcValue(const IfcThermalConductivityMeasure& c) : express::select(c) {}; - IfcValue(const IfcThermalExpansionCoefficientMeasure& c) : express::Select(c) {}; + IfcValue(const IfcThermalExpansionCoefficientMeasure& c) : express::select(c) {}; - IfcValue(const IfcThermalResistanceMeasure& c) : express::Select(c) {}; + IfcValue(const IfcThermalResistanceMeasure& c) : express::select(c) {}; - IfcValue(const IfcThermalTransmittanceMeasure& c) : express::Select(c) {}; + IfcValue(const IfcThermalTransmittanceMeasure& c) : express::select(c) {}; - IfcValue(const IfcTorqueMeasure& c) : express::Select(c) {}; + IfcValue(const IfcTorqueMeasure& c) : express::select(c) {}; - IfcValue(const IfcVaporPermeabilityMeasure& c) : express::Select(c) {}; + IfcValue(const IfcVaporPermeabilityMeasure& c) : express::select(c) {}; - IfcValue(const IfcVolumetricFlowRateMeasure& c) : express::Select(c) {}; + IfcValue(const IfcVolumetricFlowRateMeasure& c) : express::select(c) {}; - IfcValue(const IfcWarpingConstantMeasure& c) : express::Select(c) {}; + IfcValue(const IfcWarpingConstantMeasure& c) : express::select(c) {}; - IfcValue(const IfcWarpingMomentMeasure& c) : express::Select(c) {}; + IfcValue(const IfcWarpingMomentMeasure& c) : express::select(c) {}; - IfcValue(const IfcMeasureValue& c) : express::Select(c) {}; + IfcValue(const IfcMeasureValue& c) : express::select(c) {}; - IfcValue(const IfcAmountOfSubstanceMeasure& c) : express::Select(c) {}; + IfcValue(const IfcAmountOfSubstanceMeasure& c) : express::select(c) {}; - IfcValue(const IfcAreaMeasure& c) : express::Select(c) {}; + IfcValue(const IfcAreaMeasure& c) : express::select(c) {}; - IfcValue(const IfcComplexNumber& c) : express::Select(c) {}; + IfcValue(const IfcComplexNumber& c) : express::select(c) {}; - IfcValue(const IfcContextDependentMeasure& c) : express::Select(c) {}; + IfcValue(const IfcContextDependentMeasure& c) : express::select(c) {}; - IfcValue(const IfcCountMeasure& c) : express::Select(c) {}; + IfcValue(const IfcCountMeasure& c) : express::select(c) {}; - IfcValue(const IfcDescriptiveMeasure& c) : express::Select(c) {}; + IfcValue(const IfcDescriptiveMeasure& c) : express::select(c) {}; - IfcValue(const IfcElectricCurrentMeasure& c) : express::Select(c) {}; + IfcValue(const IfcElectricCurrentMeasure& c) : express::select(c) {}; - IfcValue(const IfcLengthMeasure& c) : express::Select(c) {}; + IfcValue(const IfcLengthMeasure& c) : express::select(c) {}; - IfcValue(const IfcLuminousIntensityMeasure& c) : express::Select(c) {}; + IfcValue(const IfcLuminousIntensityMeasure& c) : express::select(c) {}; - IfcValue(const IfcMassMeasure& c) : express::Select(c) {}; + IfcValue(const IfcMassMeasure& c) : express::select(c) {}; - IfcValue(const IfcNonNegativeLengthMeasure& c) : express::Select(c) {}; + IfcValue(const IfcNonNegativeLengthMeasure& c) : express::select(c) {}; - IfcValue(const IfcNormalisedRatioMeasure& c) : express::Select(c) {}; + IfcValue(const IfcNormalisedRatioMeasure& c) : express::select(c) {}; - IfcValue(const IfcNumericMeasure& c) : express::Select(c) {}; + IfcValue(const IfcNumericMeasure& c) : express::select(c) {}; - IfcValue(const IfcParameterValue& c) : express::Select(c) {}; + IfcValue(const IfcParameterValue& c) : express::select(c) {}; - IfcValue(const IfcPlaneAngleMeasure& c) : express::Select(c) {}; + IfcValue(const IfcPlaneAngleMeasure& c) : express::select(c) {}; - IfcValue(const IfcPositiveLengthMeasure& c) : express::Select(c) {}; + IfcValue(const IfcPositiveLengthMeasure& c) : express::select(c) {}; - IfcValue(const IfcPositivePlaneAngleMeasure& c) : express::Select(c) {}; + IfcValue(const IfcPositivePlaneAngleMeasure& c) : express::select(c) {}; - IfcValue(const IfcPositiveRatioMeasure& c) : express::Select(c) {}; + IfcValue(const IfcPositiveRatioMeasure& c) : express::select(c) {}; - IfcValue(const IfcRatioMeasure& c) : express::Select(c) {}; + IfcValue(const IfcRatioMeasure& c) : express::select(c) {}; - IfcValue(const IfcSolidAngleMeasure& c) : express::Select(c) {}; + IfcValue(const IfcSolidAngleMeasure& c) : express::select(c) {}; - IfcValue(const IfcThermodynamicTemperatureMeasure& c) : express::Select(c) {}; + IfcValue(const IfcThermodynamicTemperatureMeasure& c) : express::select(c) {}; - IfcValue(const IfcTimeMeasure& c) : express::Select(c) {}; + IfcValue(const IfcTimeMeasure& c) : express::select(c) {}; - IfcValue(const IfcVolumeMeasure& c) : express::Select(c) {}; + IfcValue(const IfcVolumeMeasure& c) : express::select(c) {}; - IfcValue(const IfcSimpleValue& c) : express::Select(c) {}; + IfcValue(const IfcSimpleValue& c) : express::select(c) {}; - IfcValue(const IfcBinary& c) : express::Select(c) {}; + IfcValue(const IfcBinary& c) : express::select(c) {}; - IfcValue(const IfcBoolean& c) : express::Select(c) {}; + IfcValue(const IfcBoolean& c) : express::select(c) {}; - IfcValue(const IfcDate& c) : express::Select(c) {}; + IfcValue(const IfcDate& c) : express::select(c) {}; - IfcValue(const IfcDateTime& c) : express::Select(c) {}; + IfcValue(const IfcDateTime& c) : express::select(c) {}; - IfcValue(const IfcDuration& c) : express::Select(c) {}; + IfcValue(const IfcDuration& c) : express::select(c) {}; - IfcValue(const IfcIdentifier& c) : express::Select(c) {}; + IfcValue(const IfcIdentifier& c) : express::select(c) {}; - IfcValue(const IfcInteger& c) : express::Select(c) {}; + IfcValue(const IfcInteger& c) : express::select(c) {}; - IfcValue(const IfcLabel& c) : express::Select(c) {}; + IfcValue(const IfcLabel& c) : express::select(c) {}; - IfcValue(const IfcLogical& c) : express::Select(c) {}; + IfcValue(const IfcLogical& c) : express::select(c) {}; - IfcValue(const IfcPositiveInteger& c) : express::Select(c) {}; + IfcValue(const IfcPositiveInteger& c) : express::select(c) {}; - IfcValue(const IfcReal& c) : express::Select(c) {}; + IfcValue(const IfcReal& c) : express::select(c) {}; - IfcValue(const IfcText& c) : express::Select(c) {}; + IfcValue(const IfcText& c) : express::select(c) {}; - IfcValue(const IfcTime& c) : express::Select(c) {}; + IfcValue(const IfcTime& c) : express::select(c) {}; - IfcValue(const IfcTimeStamp& c) : express::Select(c) {}; + IfcValue(const IfcTimeStamp& c) : express::select(c) {}; }; /// Definition from ISO/CD 10303-42:1992: This type is used to @@ -4516,43 +4516,43 @@ public: /// definition of the formal standard. /// HISTORY New Type in IFC Release /// 1.5 -class IFC_SCHEMA_API IfcVectorOrDirection : public express::Select { +class IFC_SCHEMA_API IfcVectorOrDirection : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcDirection as() const { return express::Base::as(); } + // IfcDirection as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcVector as() const { return express::Base::as(); } + // IfcVector as() const { return express::base::as(); } - IfcVectorOrDirection(const IfcDirection& c) : express::Select(c) {}; + IfcVectorOrDirection(const IfcDirection& c) : express::select(c) {}; - IfcVectorOrDirection(const IfcVector& c) : express::Select(c) {}; + IfcVectorOrDirection(const IfcVector& c) : express::select(c) {}; }; /// Definition from IAI: A measure of warping stiffness. TRUE denotes infinite stiffness (rigidity). FALSE denotes no stiffness (a release). A numeric value denotes finite linear-elastic stiffness. /// /// HISTORY: New type in IFC 2x4. -class IFC_SCHEMA_API IfcWarpingStiffnessSelect : public express::Select { +class IFC_SCHEMA_API IfcWarpingStiffnessSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcBoolean as() const { return express::Base::as(); } + // IfcBoolean as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcWarpingMomentMeasure as() const { return express::Base::as(); } + // IfcWarpingMomentMeasure as() const { return express::base::as(); } - IfcWarpingStiffnessSelect(const IfcBoolean& c) : express::Select(c) {}; + IfcWarpingStiffnessSelect(const IfcBoolean& c) : express::select(c) {}; - IfcWarpingStiffnessSelect(const IfcWarpingMomentMeasure& c) : express::Select(c) {}; + IfcWarpingStiffnessSelect(const IfcWarpingMomentMeasure& c) : express::select(c) {}; }; /// IfcActionRequestTypeEnum defines the types of sources through which a request can be made. @@ -4566,9 +4566,9 @@ public: /// VERBAL: Request was made verbally in person. /// USERDEFINED: User-defined type. /// NOTDEFINED: Undefined type. -class IFC_SCHEMA_API IfcActionRequestTypeEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcActionRequestTypeEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcActionRequestType_EMAIL, IfcActionRequestType_FAX, IfcActionRequestType_PHONE, IfcActionRequestType_POST, IfcActionRequestType_VERBAL, IfcActionRequestType_USERDEFINED, IfcActionRequestType_NOTDEFINED} Value; static const char* ToString(Value v); @@ -4584,9 +4584,9 @@ public: /// /// HISTORY: New type in Release IFC2x /// Edition 2. -class IFC_SCHEMA_API IfcActionSourceTypeEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcActionSourceTypeEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcActionSourceType_BRAKES, IfcActionSourceType_BUOYANCY, IfcActionSourceType_COMPLETION_G1, IfcActionSourceType_CREEP, IfcActionSourceType_CURRENT, IfcActionSourceType_DEAD_LOAD_G, IfcActionSourceType_EARTHQUAKE_E, IfcActionSourceType_ERECTION, IfcActionSourceType_FIRE, IfcActionSourceType_ICE, IfcActionSourceType_IMPACT, IfcActionSourceType_IMPULSE, IfcActionSourceType_LACK_OF_FIT, IfcActionSourceType_LIVE_LOAD_Q, IfcActionSourceType_PRESTRESSING_P, IfcActionSourceType_PROPPING, IfcActionSourceType_RAIN, IfcActionSourceType_SETTLEMENT_U, IfcActionSourceType_SHRINKAGE, IfcActionSourceType_SNOW_S, IfcActionSourceType_SYSTEM_IMPERFECTION, IfcActionSourceType_TEMPERATURE_T, IfcActionSourceType_TRANSPORT, IfcActionSourceType_WAVE, IfcActionSourceType_WIND_W, IfcActionSourceType_USERDEFINED, IfcActionSourceType_NOTDEFINED} Value; static const char* ToString(Value v); @@ -4604,9 +4604,9 @@ public: /// /// HISTORY: New type in Release IFC2x /// Edition 2. -class IFC_SCHEMA_API IfcActionTypeEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcActionTypeEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcActionType_EXTRAORDINARY_A, IfcActionType_PERMANENT_G, IfcActionType_VARIABLE_Q, IfcActionType_USERDEFINED, IfcActionType_NOTDEFINED} Value; static const char* ToString(Value v); @@ -4633,9 +4633,9 @@ public: /// /// See property set of actuator common attributes for specification of /// properties for hand operated actuators. -class IFC_SCHEMA_API IfcActuatorTypeEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcActuatorTypeEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcActuatorType_ELECTRICACTUATOR, IfcActuatorType_HANDOPERATEDACTUATOR, IfcActuatorType_HYDRAULICACTUATOR, IfcActuatorType_PNEUMATICACTUATOR, IfcActuatorType_THERMOSTATICACTUATOR, IfcActuatorType_USERDEFINED, IfcActuatorType_NOTDEFINED} Value; static const char* ToString(Value v); @@ -4657,9 +4657,9 @@ public: /// HOME A home address. /// DISTRIBUTIONPOINT A postal distribution point address. /// USERDEFINED A user defined address type to be provided. -class IFC_SCHEMA_API IfcAddressTypeEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcAddressTypeEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcAddressType_DISTRIBUTIONPOINT, IfcAddressType_HOME, IfcAddressType_OFFICE, IfcAddressType_SITE, IfcAddressType_USERDEFINED} Value; static const char* ToString(Value v); @@ -4681,9 +4681,9 @@ public: /// NOTDEFINED: Undefined terminal box. /// /// HISTORY: New enumeration in IFC R2.0 -class IFC_SCHEMA_API IfcAirTerminalBoxTypeEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcAirTerminalBoxTypeEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcAirTerminalBoxType_CONSTANTFLOW, IfcAirTerminalBoxType_VARIABLEFLOWPRESSUREDEPENDANT, IfcAirTerminalBoxType_VARIABLEFLOWPRESSUREINDEPENDANT, IfcAirTerminalBoxType_USERDEFINED, IfcAirTerminalBoxType_NOTDEFINED} Value; static const char* ToString(Value v); @@ -4707,9 +4707,9 @@ public: /// NOTE: Architectural louvres within doors or windows are defined by IfcPermeableCoveringProperties. /// /// HISTORY: New enumeration in IFC R2x2. Modified in IFC R2x4 to add LOUVRE and remove EYEBALL, IRIS, LINEARGRILLE, LINEARDIFFUSER -class IFC_SCHEMA_API IfcAirTerminalTypeEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcAirTerminalTypeEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcAirTerminalType_DIFFUSER, IfcAirTerminalType_GRILLE, IfcAirTerminalType_LOUVRE, IfcAirTerminalType_REGISTER, IfcAirTerminalType_USERDEFINED, IfcAirTerminalType_NOTDEFINED} Value; static const char* ToString(Value v); @@ -4736,9 +4736,9 @@ public: /// NOTDEFINED: Undefined air to air heat recovery type. /// /// HISTORY: New enumeration in IFC R2x. -class IFC_SCHEMA_API IfcAirToAirHeatRecoveryTypeEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcAirToAirHeatRecoveryTypeEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcAirToAirHeatRecoveryType_FIXEDPLATECOUNTERFLOWEXCHANGER, IfcAirToAirHeatRecoveryType_FIXEDPLATECROSSFLOWEXCHANGER, IfcAirToAirHeatRecoveryType_FIXEDPLATEPARALLELFLOWEXCHANGER, IfcAirToAirHeatRecoveryType_HEATPIPE, IfcAirToAirHeatRecoveryType_ROTARYWHEEL, IfcAirToAirHeatRecoveryType_RUNAROUNDCOILLOOP, IfcAirToAirHeatRecoveryType_THERMOSIPHONCOILTYPEHEATEXCHANGERS, IfcAirToAirHeatRecoveryType_THERMOSIPHONSEALEDTUBEHEATEXCHANGERS, IfcAirToAirHeatRecoveryType_TWINTOWERENTHALPYRECOVERYLOOPS, IfcAirToAirHeatRecoveryType_USERDEFINED, IfcAirToAirHeatRecoveryType_NOTDEFINED} Value; static const char* ToString(Value v); @@ -4763,9 +4763,9 @@ public: /// WHISTLE: An audible alarm. /// USERDEFINED: User-defined type. /// NOTDEFINED: Undefined type. -class IFC_SCHEMA_API IfcAlarmTypeEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcAlarmTypeEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcAlarmType_BELL, IfcAlarmType_BREAKGLASSBUTTON, IfcAlarmType_LIGHT, IfcAlarmType_MANUALPULLBOX, IfcAlarmType_RAILWAYCROCODILE, IfcAlarmType_RAILWAYDETONATOR, IfcAlarmType_SIREN, IfcAlarmType_WHISTLE, IfcAlarmType_USERDEFINED, IfcAlarmType_NOTDEFINED} Value; static const char* ToString(Value v); @@ -4777,9 +4777,9 @@ public: operator Value() const; }; -class IFC_SCHEMA_API IfcAlignmentCantSegmentTypeEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcAlignmentCantSegmentTypeEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcAlignmentCantSegmentType_BLOSSCURVE, IfcAlignmentCantSegmentType_CONSTANTCANT, IfcAlignmentCantSegmentType_COSINECURVE, IfcAlignmentCantSegmentType_HELMERTCURVE, IfcAlignmentCantSegmentType_LINEARTRANSITION, IfcAlignmentCantSegmentType_SINECURVE, IfcAlignmentCantSegmentType_VIENNESEBEND} Value; static const char* ToString(Value v); @@ -4791,9 +4791,9 @@ public: operator Value() const; }; -class IFC_SCHEMA_API IfcAlignmentHorizontalSegmentTypeEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcAlignmentHorizontalSegmentTypeEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcAlignmentHorizontalSegmentType_BLOSSCURVE, IfcAlignmentHorizontalSegmentType_CIRCULARARC, IfcAlignmentHorizontalSegmentType_CLOTHOID, IfcAlignmentHorizontalSegmentType_COSINECURVE, IfcAlignmentHorizontalSegmentType_CUBIC, IfcAlignmentHorizontalSegmentType_HELMERTCURVE, IfcAlignmentHorizontalSegmentType_LINE, IfcAlignmentHorizontalSegmentType_SINECURVE, IfcAlignmentHorizontalSegmentType_VIENNESEBEND} Value; static const char* ToString(Value v); @@ -4805,9 +4805,9 @@ public: operator Value() const; }; -class IFC_SCHEMA_API IfcAlignmentTypeEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcAlignmentTypeEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcAlignmentType_USERDEFINED, IfcAlignmentType_NOTDEFINED} Value; static const char* ToString(Value v); @@ -4819,9 +4819,9 @@ public: operator Value() const; }; -class IFC_SCHEMA_API IfcAlignmentVerticalSegmentTypeEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcAlignmentVerticalSegmentTypeEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcAlignmentVerticalSegmentType_CIRCULARARC, IfcAlignmentVerticalSegmentType_CLOTHOID, IfcAlignmentVerticalSegmentType_CONSTANTGRADIENT, IfcAlignmentVerticalSegmentType_PARABOLICARC} Value; static const char* ToString(Value v); @@ -4838,9 +4838,9 @@ public: /// /// HISTORY: New type in Release IFC2x /// Edition 2. -class IFC_SCHEMA_API IfcAnalysisModelTypeEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcAnalysisModelTypeEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcAnalysisModelType_IN_PLANE_LOADING_2D, IfcAnalysisModelType_LOADING_3D, IfcAnalysisModelType_OUT_PLANE_LOADING_2D, IfcAnalysisModelType_USERDEFINED, IfcAnalysisModelType_NOTDEFINED} Value; static const char* ToString(Value v); @@ -4858,9 +4858,9 @@ public: /// /// HISTORY: New type in Release IFC2x /// Edition 2. -class IFC_SCHEMA_API IfcAnalysisTheoryTypeEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcAnalysisTheoryTypeEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcAnalysisTheoryType_FIRST_ORDER_THEORY, IfcAnalysisTheoryType_FULL_NONLINEAR_THEORY, IfcAnalysisTheoryType_SECOND_ORDER_THEORY, IfcAnalysisTheoryType_THIRD_ORDER_THEORY, IfcAnalysisTheoryType_USERDEFINED, IfcAnalysisTheoryType_NOTDEFINED} Value; static const char* ToString(Value v); @@ -4872,9 +4872,9 @@ public: operator Value() const; }; -class IFC_SCHEMA_API IfcAnnotationTypeEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcAnnotationTypeEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcAnnotationType_ASBUILTAREA, IfcAnnotationType_ASBUILTLINE, IfcAnnotationType_ASBUILTPOINT, IfcAnnotationType_ASSUMEDAREA, IfcAnnotationType_ASSUMEDLINE, IfcAnnotationType_ASSUMEDPOINT, IfcAnnotationType_NON_PHYSICAL_SIGNAL, IfcAnnotationType_SUPERELEVATIONEVENT, IfcAnnotationType_WIDTHEVENT, IfcAnnotationType_USERDEFINED, IfcAnnotationType_NOTDEFINED} Value; static const char* ToString(Value v); @@ -4897,9 +4897,9 @@ public: /// /// Use definitions /// There can be only one arithmetic operator for each applied value relationship. This is to enforce arithmetic consistency. Given this consistency, the cardinality of the IfcAppliedValueRelationship.Components attribute is a set of one to many applied values that are components of an applied value. -class IFC_SCHEMA_API IfcArithmeticOperatorEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcArithmeticOperatorEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcArithmeticOperator_ADD, IfcArithmeticOperator_DIVIDE, IfcArithmeticOperator_MULTIPLY, IfcArithmeticOperator_SUBTRACT} Value; static const char* ToString(Value v); @@ -4922,9 +4922,9 @@ public: /// SITE - this assembly is assembled at site /// /// FACTORY - this assembly is assembled in a factory -class IFC_SCHEMA_API IfcAssemblyPlaceEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcAssemblyPlaceEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcAssemblyPlace_FACTORY, IfcAssemblyPlace_SITE, IfcAssemblyPlace_NOTDEFINED} Value; static const char* ToString(Value v); @@ -4949,9 +4949,9 @@ public: /// SWITCHER: A device that receives audio and/or video signals, switches sources, and transmits signals to downstream devices. /// TELEPHONE: A telecommunications device that is used to transmit and receive sound, and optionally video. /// TUNER: An electronic receiver that detects, demodulates, and amplifies transmitted signals. -class IFC_SCHEMA_API IfcAudioVisualApplianceTypeEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcAudioVisualApplianceTypeEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcAudioVisualApplianceType_AMPLIFIER, IfcAudioVisualApplianceType_CAMERA, IfcAudioVisualApplianceType_COMMUNICATIONTERMINAL, IfcAudioVisualApplianceType_DISPLAY, IfcAudioVisualApplianceType_MICROPHONE, IfcAudioVisualApplianceType_PLAYER, IfcAudioVisualApplianceType_PROJECTOR, IfcAudioVisualApplianceType_RECEIVER, IfcAudioVisualApplianceType_RECORDINGEQUIPMENT, IfcAudioVisualApplianceType_SPEAKER, IfcAudioVisualApplianceType_SWITCHER, IfcAudioVisualApplianceType_TELEPHONE, IfcAudioVisualApplianceType_TUNER, IfcAudioVisualApplianceType_USERDEFINED, IfcAudioVisualApplianceType_NOTDEFINED} Value; static const char* ToString(Value v); @@ -4976,9 +4976,9 @@ public: /// NOTE Corresponding ISO 10303 type: b_spline_curve_form. Please refer to ISO/IS 10303-42:1994, p. 15 for the final definition of the formal standard. /// /// HISTORY New type in Release IFC2x2. -class IFC_SCHEMA_API IfcBSplineCurveForm : public express::DeclaredType { +class IFC_SCHEMA_API IfcBSplineCurveForm : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcBSplineCurveForm_CIRCULAR_ARC, IfcBSplineCurveForm_ELLIPTIC_ARC, IfcBSplineCurveForm_HYPERBOLIC_ARC, IfcBSplineCurveForm_PARABOLIC_ARC, IfcBSplineCurveForm_POLYLINE_FORM, IfcBSplineCurveForm_UNSPECIFIED} Value; static const char* ToString(Value v); @@ -4990,9 +4990,9 @@ public: operator Value() const; }; -class IFC_SCHEMA_API IfcBSplineSurfaceForm : public express::DeclaredType { +class IFC_SCHEMA_API IfcBSplineSurfaceForm : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcBSplineSurfaceForm_CONICAL_SURF, IfcBSplineSurfaceForm_CYLINDRICAL_SURF, IfcBSplineSurfaceForm_GENERALISED_CONE, IfcBSplineSurfaceForm_PLANE_SURF, IfcBSplineSurfaceForm_QUADRIC_SURF, IfcBSplineSurfaceForm_RULED_SURF, IfcBSplineSurfaceForm_SPHERICAL_SURF, IfcBSplineSurfaceForm_SURF_OF_LINEAR_EXTRUSION, IfcBSplineSurfaceForm_SURF_OF_REVOLUTION, IfcBSplineSurfaceForm_TOROIDAL_SURF, IfcBSplineSurfaceForm_UNSPECIFIED} Value; static const char* ToString(Value v); @@ -5042,9 +5042,9 @@ public: /// IFC2x4 CHANGE The enumerators /// HOLLOWCORE and SPANDREL have been /// added. -class IFC_SCHEMA_API IfcBeamTypeEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcBeamTypeEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcBeamType_BEAM, IfcBeamType_CORNICE, IfcBeamType_DIAPHRAGM, IfcBeamType_EDGEBEAM, IfcBeamType_GIRDER_SEGMENT, IfcBeamType_HATSTONE, IfcBeamType_HOLLOWCORE, IfcBeamType_JOIST, IfcBeamType_LINTEL, IfcBeamType_PIERCAP, IfcBeamType_SPANDREL, IfcBeamType_T_BEAM, IfcBeamType_USERDEFINED, IfcBeamType_NOTDEFINED} Value; static const char* ToString(Value v); @@ -5056,9 +5056,9 @@ public: operator Value() const; }; -class IFC_SCHEMA_API IfcBearingTypeDisplacementEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcBearingTypeDisplacementEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcBearingTypeDisplacement_FIXED_MOVEMENT, IfcBearingTypeDisplacement_FREE_MOVEMENT, IfcBearingTypeDisplacement_GUIDED_LONGITUDINAL, IfcBearingTypeDisplacement_GUIDED_TRANSVERSAL, IfcBearingTypeDisplacement_NOTDEFINED} Value; static const char* ToString(Value v); @@ -5070,9 +5070,9 @@ public: operator Value() const; }; -class IFC_SCHEMA_API IfcBearingTypeEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcBearingTypeEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcBearingType_CYLINDRICAL, IfcBearingType_DISK, IfcBearingType_ELASTOMERIC, IfcBearingType_GUIDE, IfcBearingType_POT, IfcBearingType_ROCKER, IfcBearingType_ROLLER, IfcBearingType_SPHERICAL, IfcBearingType_USERDEFINED, IfcBearingType_NOTDEFINED} Value; static const char* ToString(Value v); @@ -5123,9 +5123,9 @@ public: /// /// NOTINCLUDEDIN /// Identifies that a value (individual item) must not be included (i.e. must be excluded) in the aggregation (set, list or table) set by the constraint. -class IFC_SCHEMA_API IfcBenchmarkEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcBenchmarkEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcBenchmark_EQUALTO, IfcBenchmark_GREATERTHAN, IfcBenchmark_GREATERTHANOREQUALTO, IfcBenchmark_INCLUDEDIN, IfcBenchmark_INCLUDES, IfcBenchmark_LESSTHAN, IfcBenchmark_LESSTHANOREQUALTO, IfcBenchmark_NOTEQUALTO, IfcBenchmark_NOTINCLUDEDIN, IfcBenchmark_NOTINCLUDES} Value; static const char* ToString(Value v); @@ -5145,9 +5145,9 @@ public: /// NOTDEFINED: Undefined Boiler type. /// /// HISTORY: New enumeration in IFC R2x. -class IFC_SCHEMA_API IfcBoilerTypeEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcBoilerTypeEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcBoilerType_STEAM, IfcBoilerType_WATER, IfcBoilerType_USERDEFINED, IfcBoilerType_NOTDEFINED} Value; static const char* ToString(Value v); @@ -5167,9 +5167,9 @@ public: /// NOTE Corresponding STEP type: boolean_operator, please refer to ISO/IS 10303-42:1994, p.167 for the final definition of the formal standard. /// /// HISTORY New Type in IFC Release 1.5.1. -class IFC_SCHEMA_API IfcBooleanOperator : public express::DeclaredType { +class IFC_SCHEMA_API IfcBooleanOperator : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcBooleanOperator_DIFFERENCE, IfcBooleanOperator_INTERSECTION, IfcBooleanOperator_UNION} Value; static const char* ToString(Value v); @@ -5181,9 +5181,9 @@ public: operator Value() const; }; -class IFC_SCHEMA_API IfcBridgePartTypeEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcBridgePartTypeEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcBridgePartType_ABUTMENT, IfcBridgePartType_DECK, IfcBridgePartType_DECK_SEGMENT, IfcBridgePartType_FOUNDATION, IfcBridgePartType_PIER, IfcBridgePartType_PIER_SEGMENT, IfcBridgePartType_PYLON, IfcBridgePartType_SUBSTRUCTURE, IfcBridgePartType_SUPERSTRUCTURE, IfcBridgePartType_SURFACESTRUCTURE, IfcBridgePartType_USERDEFINED, IfcBridgePartType_NOTDEFINED} Value; static const char* ToString(Value v); @@ -5195,9 +5195,9 @@ public: operator Value() const; }; -class IFC_SCHEMA_API IfcBridgeTypeEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcBridgeTypeEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcBridgeType_ARCHED, IfcBridgeType_CABLE_STAYED, IfcBridgeType_CANTILEVER, IfcBridgeType_CULVERT, IfcBridgeType_FRAMEWORK, IfcBridgeType_GIRDER, IfcBridgeType_SUSPENSION, IfcBridgeType_TRUSS, IfcBridgeType_USERDEFINED, IfcBridgeType_NOTDEFINED} Value; static const char* ToString(Value v); @@ -5216,9 +5216,9 @@ public: /// NOTDEFINED: Undefined accessory /// /// HISTORY New Enumeration in IFC 2x4. -class IFC_SCHEMA_API IfcBuildingElementPartTypeEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcBuildingElementPartTypeEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcBuildingElementPartType_APRON, IfcBuildingElementPartType_ARMOURUNIT, IfcBuildingElementPartType_INSULATION, IfcBuildingElementPartType_PRECASTPANEL, IfcBuildingElementPartType_SAFETYCAGE, IfcBuildingElementPartType_USERDEFINED, IfcBuildingElementPartType_NOTDEFINED} Value; static const char* ToString(Value v); @@ -5240,9 +5240,9 @@ public: /// USERDEFINED /// /// NOTDEFINED -class IFC_SCHEMA_API IfcBuildingElementProxyTypeEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcBuildingElementProxyTypeEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcBuildingElementProxyType_COMPLEX, IfcBuildingElementProxyType_ELEMENT, IfcBuildingElementProxyType_PARTIAL, IfcBuildingElementProxyType_USERDEFINED, IfcBuildingElementProxyType_NOTDEFINED} Value; static const char* ToString(Value v); @@ -5267,9 +5267,9 @@ public: /// natural sun light, /// TRANSPORT: System of all transport elements in a /// building that enables the transport of people or goods. -class IFC_SCHEMA_API IfcBuildingSystemTypeEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcBuildingSystemTypeEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcBuildingSystemType_EROSIONPREVENTION, IfcBuildingSystemType_FENESTRATION, IfcBuildingSystemType_FOUNDATION, IfcBuildingSystemType_LOADBEARING, IfcBuildingSystemType_OUTERSHELL, IfcBuildingSystemType_PRESTRESSING, IfcBuildingSystemType_REINFORCING, IfcBuildingSystemType_SHADING, IfcBuildingSystemType_TRANSPORT, IfcBuildingSystemType_USERDEFINED, IfcBuildingSystemType_NOTDEFINED} Value; static const char* ToString(Value v); @@ -5281,9 +5281,9 @@ public: operator Value() const; }; -class IFC_SCHEMA_API IfcBuiltSystemTypeEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcBuiltSystemTypeEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcBuiltSystemType_EROSIONPREVENTION, IfcBuiltSystemType_FENESTRATION, IfcBuiltSystemType_FOUNDATION, IfcBuiltSystemType_LOADBEARING, IfcBuiltSystemType_MOORING, IfcBuiltSystemType_OUTERSHELL, IfcBuiltSystemType_PRESTRESSING, IfcBuiltSystemType_RAILWAYLINE, IfcBuiltSystemType_RAILWAYTRACK, IfcBuiltSystemType_REINFORCING, IfcBuiltSystemType_SHADING, IfcBuiltSystemType_TRACKCIRCUIT, IfcBuiltSystemType_TRANSPORT, IfcBuiltSystemType_USERDEFINED, IfcBuiltSystemType_NOTDEFINED} Value; static const char* ToString(Value v); @@ -5301,9 +5301,9 @@ public: /// NOTDEFINED: Undefined burner type. /// /// HISTORY: New enumeration in IFC R2x4. -class IFC_SCHEMA_API IfcBurnerTypeEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcBurnerTypeEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcBurnerType_USERDEFINED, IfcBurnerType_NOTDEFINED} Value; static const char* ToString(Value v); @@ -5324,9 +5324,9 @@ public: /// TEE: A fitting at which a branch is taken from the main route of the cable carrier. /// USERDEFINED: User-defined type. /// NOTDEFINED: Undefined type. -class IFC_SCHEMA_API IfcCableCarrierFittingTypeEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcCableCarrierFittingTypeEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcCableCarrierFittingType_BEND, IfcCableCarrierFittingType_CONNECTOR, IfcCableCarrierFittingType_CROSS, IfcCableCarrierFittingType_JUNCTION, IfcCableCarrierFittingType_TEE, IfcCableCarrierFittingType_TRANSITION, IfcCableCarrierFittingType_USERDEFINED, IfcCableCarrierFittingType_NOTDEFINED} Value; static const char* ToString(Value v); @@ -5347,9 +5347,9 @@ public: /// CONDUITSEGMENT: An enclosed tubular carrier segment through which cables are pulled. /// USERDEFINED: User-defined type. /// NOTDEFINED: Undefined type. -class IFC_SCHEMA_API IfcCableCarrierSegmentTypeEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcCableCarrierSegmentTypeEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcCableCarrierSegmentType_CABLEBRACKET, IfcCableCarrierSegmentType_CABLELADDERSEGMENT, IfcCableCarrierSegmentType_CABLETRAYSEGMENT, IfcCableCarrierSegmentType_CABLETRUNKINGSEGMENT, IfcCableCarrierSegmentType_CATENARYWIRE, IfcCableCarrierSegmentType_CONDUITSEGMENT, IfcCableCarrierSegmentType_DROPPER, IfcCableCarrierSegmentType_USERDEFINED, IfcCableCarrierSegmentType_NOTDEFINED} Value; static const char* ToString(Value v); @@ -5371,9 +5371,9 @@ public: /// TRANSITION: A fitting that joins two cable segments of different connector types. /// USERDEFINED: User-defined type. /// NOTDEFINED: Undefined type. -class IFC_SCHEMA_API IfcCableFittingTypeEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcCableFittingTypeEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcCableFittingType_CONNECTOR, IfcCableFittingType_ENTRY, IfcCableFittingType_EXIT, IfcCableFittingType_FANOUT, IfcCableFittingType_JUNCTION, IfcCableFittingType_TRANSITION, IfcCableFittingType_USERDEFINED, IfcCableFittingType_NOTDEFINED} Value; static const char* ToString(Value v); @@ -5396,9 +5396,9 @@ public: /// CORESEGMENT: A self contained element of a cable that comprises one or more conductors and sheathing.The core of one lead is normally single wired or multiwired which are intertwined. /// USERDEFINED: User-defined type. /// NOTDEFINED: Undefined type. -class IFC_SCHEMA_API IfcCableSegmentTypeEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcCableSegmentTypeEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcCableSegmentType_BUSBARSEGMENT, IfcCableSegmentType_CABLESEGMENT, IfcCableSegmentType_CONDUCTORSEGMENT, IfcCableSegmentType_CONTACTWIRESEGMENT, IfcCableSegmentType_CORESEGMENT, IfcCableSegmentType_FIBERSEGMENT, IfcCableSegmentType_FIBERTUBE, IfcCableSegmentType_OPTICALCABLESEGMENT, IfcCableSegmentType_STITCHWIRE, IfcCableSegmentType_WIREPAIRSEGMENT, IfcCableSegmentType_USERDEFINED, IfcCableSegmentType_NOTDEFINED} Value; static const char* ToString(Value v); @@ -5410,9 +5410,9 @@ public: operator Value() const; }; -class IFC_SCHEMA_API IfcCaissonFoundationTypeEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcCaissonFoundationTypeEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcCaissonFoundationType_CAISSON, IfcCaissonFoundationType_WELL, IfcCaissonFoundationType_USERDEFINED, IfcCaissonFoundationType_NOTDEFINED} Value; static const char* ToString(Value v); @@ -5434,9 +5434,9 @@ public: /// Consider Application A will create an IFC dataset that it wants to publish to others for modification and have the ability to subsequently merge these changes back into the original model. Before publication, it may want to set the IfcChangeActionEnum to NOCHANGE to establish a baseline so that other application changes can be easily identified. Application B then receives this IFC dataset and adds a new object and sets IfcChangeActionEnum to ADDED with Application B defined as the OwningApplication. Application B then modifies an existing object and (re)defines the LastModifiedDate to the time of the modification, LastModifyingUser to the IfcPersonAndOrganization making the change, and sets the LastModifyingApplication to Application B. When Application A receives this modified dataset, it can determine which objects have been added and modified by Application B and either merge or reject these changes as necessary. Consequently, the intent is that an application only modifies the value of IfcChangeActionEnum when it does something to the object, with the further intent that a model server is responsible for clearing the IfcChangeActionEnum back to NOCHANGE when it is ready to be republished. /// /// HISTORY: New enumeration in IFC R2.0. Modified in IFC2x4. -class IFC_SCHEMA_API IfcChangeActionEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcChangeActionEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcChangeAction_ADDED, IfcChangeAction_DELETED, IfcChangeAction_MODIFIED, IfcChangeAction_NOCHANGE, IfcChangeAction_NOTDEFINED} Value; static const char* ToString(Value v); @@ -5457,9 +5457,9 @@ public: /// NOTDEFINED: Undefined chiller type. /// /// HISTORY: New enumeration in IFC R2x. -class IFC_SCHEMA_API IfcChillerTypeEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcChillerTypeEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcChillerType_AIRCOOLED, IfcChillerType_HEATRECOVERY, IfcChillerType_WATERCOOLED, IfcChillerType_USERDEFINED, IfcChillerType_NOTDEFINED} Value; static const char* ToString(Value v); @@ -5480,9 +5480,9 @@ public: /// NOTE Currently there are no specific enumerators /// defined, the IfcChimneyTypeEnum has been added /// for future extensions. -class IFC_SCHEMA_API IfcChimneyTypeEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcChimneyTypeEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcChimneyType_USERDEFINED, IfcChimneyType_NOTDEFINED} Value; static const char* ToString(Value v); @@ -5515,9 +5515,9 @@ public: /// NOTDEFINED: Undefined coil type. /// /// HISTORY: New enumeration in IFC R2x. -class IFC_SCHEMA_API IfcCoilTypeEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcCoilTypeEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcCoilType_DXCOOLINGCOIL, IfcCoilType_ELECTRICHEATINGCOIL, IfcCoilType_GASHEATINGCOIL, IfcCoilType_HYDRONICCOIL, IfcCoilType_STEAMHEATINGCOIL, IfcCoilType_WATERCOOLINGCOIL, IfcCoilType_WATERHEATINGCOIL, IfcCoilType_USERDEFINED, IfcCoilType_NOTDEFINED} Value; static const char* ToString(Value v); @@ -5542,9 +5542,9 @@ public: /// future releases of IFC. /// HISTORY New Enumeration /// in Release IFC2x Edition 2. -class IFC_SCHEMA_API IfcColumnTypeEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcColumnTypeEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcColumnType_COLUMN, IfcColumnType_PIERSTEM, IfcColumnType_PIERSTEM_SEGMENT, IfcColumnType_PILASTER, IfcColumnType_STANDCOLUMN, IfcColumnType_USERDEFINED, IfcColumnType_NOTDEFINED} Value; static const char* ToString(Value v); @@ -5571,9 +5571,9 @@ public: /// REPEATER: A repeater is an electronic device that receives a signal and retransmits it at a higher level and/or higher power, or onto the other side of an obstruction, so that the signal can cover longer distances without degradation. /// ROUTER: A router is a networking device whose software and hardware are usually tailored to the tasks of routing and forwarding information. For example, on the Internet, information is directed to various paths by routers. /// SCANNER: A machine that has the primary function of scanning the content of printed matter and converting it to digital format that can be stored in a computer. -class IFC_SCHEMA_API IfcCommunicationsApplianceTypeEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcCommunicationsApplianceTypeEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcCommunicationsApplianceType_ANTENNA, IfcCommunicationsApplianceType_AUTOMATON, IfcCommunicationsApplianceType_COMPUTER, IfcCommunicationsApplianceType_FAX, IfcCommunicationsApplianceType_GATEWAY, IfcCommunicationsApplianceType_INTELLIGENTPERIPHERAL, IfcCommunicationsApplianceType_IPNETWORKEQUIPMENT, IfcCommunicationsApplianceType_LINESIDEELECTRONICUNIT, IfcCommunicationsApplianceType_MODEM, IfcCommunicationsApplianceType_NETWORKAPPLIANCE, IfcCommunicationsApplianceType_NETWORKBRIDGE, IfcCommunicationsApplianceType_NETWORKHUB, IfcCommunicationsApplianceType_OPTICALLINETERMINAL, IfcCommunicationsApplianceType_OPTICALNETWORKUNIT, IfcCommunicationsApplianceType_PRINTER, IfcCommunicationsApplianceType_RADIOBLOCKCENTER, IfcCommunicationsApplianceType_REPEATER, IfcCommunicationsApplianceType_ROUTER, IfcCommunicationsApplianceType_SCANNER, IfcCommunicationsApplianceType_TELECOMMAND, IfcCommunicationsApplianceType_TELEPHONYEXCHANGE, IfcCommunicationsApplianceType_TRANSITIONCOMPONENT, IfcCommunicationsApplianceType_TRANSPONDER, IfcCommunicationsApplianceType_TRANSPORTEQUIPMENT, IfcCommunicationsApplianceType_USERDEFINED, IfcCommunicationsApplianceType_NOTDEFINED} Value; static const char* ToString(Value v); @@ -5592,9 +5592,9 @@ public: /// /// P_COMPLEX: the properties defined by this IfcComplexPropertyTemplate are of type IfcComplexProperty. /// Q_COMPLEX: the properties defined by this IfcComplexPropertyTemplate are of type IfcPhysicalComplexQuantity. -class IFC_SCHEMA_API IfcComplexPropertyTemplateTypeEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcComplexPropertyTemplateTypeEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcComplexPropertyTemplateType_P_COMPLEX, IfcComplexPropertyTemplateType_Q_COMPLEX} Value; static const char* ToString(Value v); @@ -5627,9 +5627,9 @@ public: /// NOTDEFINED: Undefined compressor type. /// /// HISTORY: New enumeration in IFC R2x. -class IFC_SCHEMA_API IfcCompressorTypeEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcCompressorTypeEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcCompressorType_BOOSTER, IfcCompressorType_DYNAMIC, IfcCompressorType_HERMETIC, IfcCompressorType_OPENTYPE, IfcCompressorType_RECIPROCATING, IfcCompressorType_ROLLINGPISTON, IfcCompressorType_ROTARY, IfcCompressorType_ROTARYVANE, IfcCompressorType_SCROLL, IfcCompressorType_SEMIHERMETIC, IfcCompressorType_SINGLESCREW, IfcCompressorType_SINGLESTAGE, IfcCompressorType_TROCHOIDAL, IfcCompressorType_TWINSCREW, IfcCompressorType_WELDEDSHELLHERMETIC, IfcCompressorType_USERDEFINED, IfcCompressorType_NOTDEFINED} Value; static const char* ToString(Value v); @@ -5653,9 +5653,9 @@ public: /// NOTDEFINED: Undefined condenser type. /// /// HISTORY: New enumeration in IFC 2x2. WATERCOOLED added in IFC 2x4. -class IFC_SCHEMA_API IfcCondenserTypeEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcCondenserTypeEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcCondenserType_AIRCOOLED, IfcCondenserType_EVAPORATIVECOOLED, IfcCondenserType_WATERCOOLED, IfcCondenserType_WATERCOOLEDBRAZEDPLATE, IfcCondenserType_WATERCOOLEDSHELLCOIL, IfcCondenserType_WATERCOOLEDSHELLTUBE, IfcCondenserType_WATERCOOLEDTUBEINTUBE, IfcCondenserType_USERDEFINED, IfcCondenserType_NOTDEFINED} Value; static const char* ToString(Value v); @@ -5686,9 +5686,9 @@ public: /// RelatedConnectionType: AtStart /// /// Figure 65 — Connection types /*[3:3]*/ v); operator std::vector< int64_t > /*[3:3]*/() const; }; -class IFC_SCHEMA_API IfcAreaDensityMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcAreaDensityMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcAreaDensityMeasure initialize(double v); @@ -11938,18 +11938,18 @@ public: /// NOTE Corresponding ISO 10303 name: area_measure, please refer to ISO/IS 10303-41 for the final definition of the formal standard. /// /// HISTORY New type in IFC Release 1.5.1. -class IFC_SCHEMA_API IfcAreaMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcAreaMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcAreaMeasure initialize(double v); operator double() const; }; -class IFC_SCHEMA_API IfcBinary : public express::DeclaredType { +class IFC_SCHEMA_API IfcBinary : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcBinary initialize(boost::dynamic_bitset<> v); @@ -11960,9 +11960,9 @@ public: /// Type: BOOLEAN /// /// HISTORY New type in IFC Release 1.5.1. -class IFC_SCHEMA_API IfcBoolean : public express::DeclaredType { +class IFC_SCHEMA_API IfcBoolean : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcBoolean initialize(bool v); @@ -12011,9 +12011,9 @@ public: /// Figure 284 illustrates an example extrusion shape with arbitrary profile (IfcArbitraryClosedProfileDef), aligned "mid-depth right" on the member axis. The line of sight follows the extrusion direction Z which points into the drawing plane of above illustration. Hence, "left" is in the positive X direction of the IfcProfileDef. "Top" is in the positive Y direction of the IfcProfileDef. /// /// Figure 284 — Cardinal point extrusion -class IFC_SCHEMA_API IfcCardinalPointReference : public express::DeclaredType { +class IFC_SCHEMA_API IfcCardinalPointReference : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcCardinalPointReference initialize(int64_t v); @@ -12030,9 +12030,9 @@ public: /// Type: ARRAY [1:2] OF REAL /// /// HISTORY New type in IFC Release 2x2. -class IFC_SCHEMA_API IfcComplexNumber : public express::DeclaredType { +class IFC_SCHEMA_API IfcComplexNumber : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcComplexNumber initialize(std::vector< double > /*[1:2]*/ v); @@ -12086,9 +12086,9 @@ public: ///      + FORMAT(ABS(c[4]), '##');  -- -50° 58' 33" 110400 /// /// Another often encountered display format of latitudes and longitudes is to omit the signs and print N, S, E, W indicators instead, for example, 50°58'33"S. When stored as IfcCompoundPlaneAngleMeasure however, a compound plane angle measure is always signed, with same sign of all components. -class IFC_SCHEMA_API IfcCompoundPlaneAngleMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcCompoundPlaneAngleMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcCompoundPlaneAngleMeasure initialize(std::vector< int64_t > /*[3:4]*/ v); @@ -12100,9 +12100,9 @@ public: /// NOTE Corresponding ISO 10303 name: context_dependent_measure, please refer to ISO/IS 10303-41 for the final definition of the formal standard. /// /// HISTORY New type in IFC Release 1.5.1. -class IFC_SCHEMA_API IfcContextDependentMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcContextDependentMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcContextDependentMeasure initialize(double v); @@ -12114,9 +12114,9 @@ public: /// NOTE Corresponding ISO 10303 name: count_measure, please refer to ISO/IS 10303-41 for the final definition of the formal standard. /// /// HISTORY New type in IFC Release 1.5.1. -class IFC_SCHEMA_API IfcCountMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcCountMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcCountMeasure initialize(int64_t v); @@ -12129,9 +12129,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC2x2. -class IFC_SCHEMA_API IfcCurvatureMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcCurvatureMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcCurvatureMeasure initialize(double v); @@ -12143,9 +12143,9 @@ public: /// /// Use definitions /// All given values should be provided in context and converted into a Gregorian date context and be shall be processable by a receiving application. -class IFC_SCHEMA_API IfcDate : public express::DeclaredType { +class IFC_SCHEMA_API IfcDate : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcDate initialize(std::string v); @@ -12169,9 +12169,9 @@ public: /// otherwise they are forbidden. The year 0000 is prohibited. /// /// HISTORY: New type in IFC2x4 -class IFC_SCHEMA_API IfcDateTime : public express::DeclaredType { +class IFC_SCHEMA_API IfcDateTime : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcDateTime initialize(std::string v); @@ -12189,9 +12189,9 @@ public: /// Release 1.5.1. /// IFC2x4 CHANGE Where rule /// ValidRange added. -class IFC_SCHEMA_API IfcDayInMonthNumber : public express::DeclaredType { +class IFC_SCHEMA_API IfcDayInMonthNumber : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcDayInMonthNumber initialize(int64_t v); @@ -12231,9 +12231,9 @@ public: /// Type: INTEGER /// HISTORY New type in /// IFC2x4. -class IFC_SCHEMA_API IfcDayInWeekNumber : public express::DeclaredType { +class IFC_SCHEMA_API IfcDayInWeekNumber : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcDayInWeekNumber initialize(int64_t v); @@ -12245,9 +12245,9 @@ public: /// NOTE Corresponding ISO 10303 name:descriptive_measure, please refer to ISO/IS 10303-41 for the final definition of the formal standard. /// /// HISTORY New type in IFC Release 1.5.1. -class IFC_SCHEMA_API IfcDescriptiveMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcDescriptiveMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcDescriptiveMeasure initialize(std::string v); @@ -12260,9 +12260,9 @@ public: /// NOTE Corresponding ISO 10303 type: dimension_count, please refer to ISO/IS 10303-42:1994, p. 14 for the final definition of the formal standard. /// /// HISTORY New Type in IFC Release 1.5 -class IFC_SCHEMA_API IfcDimensionCount : public express::DeclaredType { +class IFC_SCHEMA_API IfcDimensionCount : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcDimensionCount initialize(int64_t v); @@ -12273,9 +12273,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2x. -class IFC_SCHEMA_API IfcDoseEquivalentMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcDoseEquivalentMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcDoseEquivalentMeasure initialize(double v); @@ -12286,9 +12286,9 @@ public: /// EXAMPLE: P0002-10-15T10:30:20 (duration of two years, 10 months, 15 days, 10 hours, 30 minutes and 20 seconds). /// /// HISTORY: New type in IFC2x4 -class IFC_SCHEMA_API IfcDuration : public express::DeclaredType { +class IFC_SCHEMA_API IfcDuration : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcDuration initialize(std::string v); @@ -12300,9 +12300,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2.0. -class IFC_SCHEMA_API IfcDynamicViscosityMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcDynamicViscosityMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcDynamicViscosityMeasure initialize(double v); @@ -12313,9 +12313,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2x. -class IFC_SCHEMA_API IfcElectricCapacitanceMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcElectricCapacitanceMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcElectricCapacitanceMeasure initialize(double v); @@ -12326,9 +12326,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2x. -class IFC_SCHEMA_API IfcElectricChargeMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcElectricChargeMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcElectricChargeMeasure initialize(double v); @@ -12339,9 +12339,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2x. -class IFC_SCHEMA_API IfcElectricConductanceMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcElectricConductanceMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcElectricConductanceMeasure initialize(double v); @@ -12354,9 +12354,9 @@ public: /// NOTE Corresponding ISO 10303 name: electric_current_measure, please refer to ISO/IS 10303-41 for the final definition of the formal standard. /// /// HISTORY New type in IFC Release 1.5.1. -class IFC_SCHEMA_API IfcElectricCurrentMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcElectricCurrentMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcElectricCurrentMeasure initialize(double v); @@ -12367,9 +12367,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2x. -class IFC_SCHEMA_API IfcElectricResistanceMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcElectricResistanceMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcElectricResistanceMeasure initialize(double v); @@ -12380,9 +12380,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2.0. -class IFC_SCHEMA_API IfcElectricVoltageMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcElectricVoltageMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcElectricVoltageMeasure initialize(double v); @@ -12393,9 +12393,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2.0. -class IFC_SCHEMA_API IfcEnergyMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcEnergyMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcEnergyMeasure initialize(double v); @@ -12415,9 +12415,9 @@ public: /// NOTE  Corresponding CSS1 definitions is font-style. /// /// HISTORY  New type in IFC2x3. -class IFC_SCHEMA_API IfcFontStyle : public express::DeclaredType { +class IFC_SCHEMA_API IfcFontStyle : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcFontStyle initialize(std::string v); @@ -12435,9 +12435,9 @@ public: /// NOTE  Corresponding CSS1 definitions is font-variant. /// /// HISTORY  New type in IFC2x3. -class IFC_SCHEMA_API IfcFontVariant : public express::DeclaredType { +class IFC_SCHEMA_API IfcFontVariant : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcFontVariant initialize(std::string v); @@ -12466,9 +12466,9 @@ public: /// NOTE  Corresponding CSS1 definitions is font-weight. /// /// HISTORY  New type in IFC2x2 Addendum 2. -class IFC_SCHEMA_API IfcFontWeight : public express::DeclaredType { +class IFC_SCHEMA_API IfcFontWeight : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcFontWeight initialize(std::string v); @@ -12479,9 +12479,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2x. -class IFC_SCHEMA_API IfcForceMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcForceMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcForceMeasure initialize(double v); @@ -12492,9 +12492,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2.0. -class IFC_SCHEMA_API IfcFrequencyMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcFrequencyMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcFrequencyMeasure initialize(double v); @@ -12513,9 +12513,9 @@ public: /// Refer to the BuildingSMART website (www.buildingsmart-tech.org) for more information and sample encoding algorithms. /// /// HISTORY  New type in IFC R1.5.1. -class IFC_SCHEMA_API IfcGloballyUniqueId : public express::DeclaredType { +class IFC_SCHEMA_API IfcGloballyUniqueId : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcGloballyUniqueId initialize(std::string v); @@ -12526,9 +12526,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2.0. -class IFC_SCHEMA_API IfcHeatFluxDensityMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcHeatFluxDensityMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcHeatFluxDensityMeasure initialize(double v); @@ -12537,9 +12537,9 @@ public: /// IfcHeatingValueMeasure defines the amount of energy released (usually in MJ/kg) when a fuel is burned. /// /// HISTORY: This is new type in IFC2x2. -class IFC_SCHEMA_API IfcHeatingValueMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcHeatingValueMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcHeatingValueMeasure initialize(double v); @@ -12559,9 +12559,9 @@ public: /// Per ISO 10303-11, the set of characters that may appear in STRINGs is defined in ISO 10646. The encoding of characters in case of file-based exchange is defined in ISO 10303-21 (STEP physical files) and ISO 10303-28 (XML files). Among else, these specifications define the encoding of 8-bit characters from ISO 8859-1...-16 and of 2-byte Unicode characters. /// /// Note that while IfcIdentifier is restricted to 255 characters, the size in exchange files after encoding may be considerably larger than 255 octets, depending on the particular encoding and on the contents of the identifier. -class IFC_SCHEMA_API IfcIdentifier : public express::DeclaredType { +class IFC_SCHEMA_API IfcIdentifier : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcIdentifier initialize(std::string v); @@ -12572,9 +12572,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2x. -class IFC_SCHEMA_API IfcIlluminanceMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcIlluminanceMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcIlluminanceMeasure initialize(double v); @@ -12585,9 +12585,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2x. -class IFC_SCHEMA_API IfcInductanceMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcInductanceMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcInductanceMeasure initialize(double v); @@ -12600,9 +12600,9 @@ public: /// Type: INTEGER /// /// HISTORY New type in IFC Release 1.5.1. -class IFC_SCHEMA_API IfcInteger : public express::DeclaredType { +class IFC_SCHEMA_API IfcInteger : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcInteger initialize(int64_t v); @@ -12615,9 +12615,9 @@ public: /// Type: INTEGER /// /// HISTORY New type in IFC Release 2.0. -class IFC_SCHEMA_API IfcIntegerCountRateMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcIntegerCountRateMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcIntegerCountRateMeasure initialize(int64_t v); @@ -12626,9 +12626,9 @@ public: /// IfcIonConcentrationMeasure is a measure of particular ion concentration in a liquid, given in mg/L. /// /// HISTORY: New type in IFC2x2. -class IFC_SCHEMA_API IfcIonConcentrationMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcIonConcentrationMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcIonConcentrationMeasure initialize(double v); @@ -12639,9 +12639,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2x. -class IFC_SCHEMA_API IfcIsothermalMoistureCapacityMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcIsothermalMoistureCapacityMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcIsothermalMoistureCapacityMeasure initialize(double v); @@ -12652,9 +12652,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2.0. -class IFC_SCHEMA_API IfcKinematicViscosityMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcKinematicViscosityMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcKinematicViscosityMeasure initialize(double v); @@ -12674,9 +12674,9 @@ public: /// Per ISO 10303-11, the set of characters that may appear in STRINGs is defined in ISO 10646. The encoding of characters in case of file-based exchange is defined in ISO 10303-21 (STEP physical files) and ISO 10303-28 (XML files). Among else, these specifications define the encoding of 8-bit characters from ISO 8859-1...-16 and of 2-byte Unicode characters. /// /// Note that while IfcLabel is restricted to 255 characters, the size in exchange files after encoding may be considerably larger than 255 octets, depending on the particular encoding and on the contents of the label. -class IFC_SCHEMA_API IfcLabel : public express::DeclaredType { +class IFC_SCHEMA_API IfcLabel : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcLabel initialize(std::string v); @@ -12707,18 +12707,18 @@ public: /// NOTE Corresponding ISO 10303 name: length_measure, please refer to ISO/IS 10303-41 for the final definition of the formal standard. /// /// HISTORY New type in IFC Release 1.5.1. -class IFC_SCHEMA_API IfcLengthMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcLengthMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcLengthMeasure initialize(double v); operator double() const; }; -class IFC_SCHEMA_API IfcLineIndex : public express::DeclaredType { +class IFC_SCHEMA_API IfcLineIndex : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcLineIndex initialize(std::vector< int64_t > /*[2:?]*/ v); @@ -12729,9 +12729,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2x. -class IFC_SCHEMA_API IfcLinearForceMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcLinearForceMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcLinearForceMeasure initialize(double v); @@ -12742,9 +12742,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2x. -class IFC_SCHEMA_API IfcLinearMomentMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcLinearMomentMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcLinearMomentMeasure initialize(double v); @@ -12755,9 +12755,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2x. -class IFC_SCHEMA_API IfcLinearStiffnessMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcLinearStiffnessMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcLinearStiffnessMeasure initialize(double v); @@ -12768,9 +12768,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2.0. -class IFC_SCHEMA_API IfcLinearVelocityMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcLinearVelocityMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcLinearVelocityMeasure initialize(double v); @@ -12781,9 +12781,9 @@ public: /// Type: LOGICAL /// /// HISTORY New type in IFC Release 2x. -class IFC_SCHEMA_API IfcLogical : public express::DeclaredType { +class IFC_SCHEMA_API IfcLogical : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcLogical initialize(boost::logic::tribool v); @@ -12794,9 +12794,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2x. -class IFC_SCHEMA_API IfcLuminousFluxMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcLuminousFluxMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcLuminousFluxMeasure initialize(double v); @@ -12809,9 +12809,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC2x2. -class IFC_SCHEMA_API IfcLuminousIntensityDistributionMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcLuminousIntensityDistributionMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcLuminousIntensityDistributionMeasure initialize(double v); @@ -12824,9 +12824,9 @@ public: /// NOTE Corresponding ISO 10303 name: luminous_intensity_measure, please refer to ISO/IS 10303-41 for the final definition of the formal standard. /// /// HISTORY New type in IFC Release 1.5.1. -class IFC_SCHEMA_API IfcLuminousIntensityMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcLuminousIntensityMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcLuminousIntensityMeasure initialize(double v); @@ -12837,9 +12837,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2x. -class IFC_SCHEMA_API IfcMagneticFluxDensityMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcMagneticFluxDensityMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcMagneticFluxDensityMeasure initialize(double v); @@ -12850,9 +12850,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2x. -class IFC_SCHEMA_API IfcMagneticFluxMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcMagneticFluxMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcMagneticFluxMeasure initialize(double v); @@ -12863,9 +12863,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2.0. -class IFC_SCHEMA_API IfcMassDensityMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcMassDensityMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcMassDensityMeasure initialize(double v); @@ -12876,9 +12876,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2.0. -class IFC_SCHEMA_API IfcMassFlowRateMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcMassFlowRateMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcMassFlowRateMeasure initialize(double v); @@ -12891,9 +12891,9 @@ public: /// NOTE Corresponding ISO 10303 name: mass_measure, please refer to ISO/IS 10303-41 for the final definition of the formal standard. /// /// HISTORY New type in IFC Release 1.5.1. -class IFC_SCHEMA_API IfcMassMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcMassMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcMassMeasure initialize(double v); @@ -12906,9 +12906,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC2x2. -class IFC_SCHEMA_API IfcMassPerLengthMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcMassPerLengthMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcMassPerLengthMeasure initialize(double v); @@ -12919,9 +12919,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2x. -class IFC_SCHEMA_API IfcModulusOfElasticityMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcModulusOfElasticityMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcModulusOfElasticityMeasure initialize(double v); @@ -12932,9 +12932,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2x2. -class IFC_SCHEMA_API IfcModulusOfLinearSubgradeReactionMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcModulusOfLinearSubgradeReactionMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcModulusOfLinearSubgradeReactionMeasure initialize(double v); @@ -12945,9 +12945,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC2x2. -class IFC_SCHEMA_API IfcModulusOfRotationalSubgradeReactionMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcModulusOfRotationalSubgradeReactionMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcModulusOfRotationalSubgradeReactionMeasure initialize(double v); @@ -12962,9 +12962,9 @@ public: /// Figure 290 illustrates elastic support of a planar member. /// /// Figure 290 — Modulus of subgrade reaction measure -class IFC_SCHEMA_API IfcModulusOfSubgradeReactionMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcModulusOfSubgradeReactionMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcModulusOfSubgradeReactionMeasure initialize(double v); @@ -12975,9 +12975,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2x. -class IFC_SCHEMA_API IfcMoistureDiffusivityMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcMoistureDiffusivityMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcMoistureDiffusivityMeasure initialize(double v); @@ -12988,9 +12988,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2x. -class IFC_SCHEMA_API IfcMolecularWeightMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcMolecularWeightMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcMolecularWeightMeasure initialize(double v); @@ -13001,9 +13001,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2x. -class IFC_SCHEMA_API IfcMomentOfInertiaMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcMomentOfInertiaMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcMomentOfInertiaMeasure initialize(double v); @@ -13013,9 +13013,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2.0. -class IFC_SCHEMA_API IfcMonetaryMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcMonetaryMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcMonetaryMeasure initialize(double v); @@ -13077,9 +13077,9 @@ public: /// standard. /// HISTORY New type in IFC /// Release 1.5.1. -class IFC_SCHEMA_API IfcMonthInYearNumber : public express::DeclaredType { +class IFC_SCHEMA_API IfcMonthInYearNumber : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcMonthInYearNumber initialize(int64_t v); @@ -13104,9 +13104,9 @@ public: /// NOTE Corresponding ISO 10303 name: numeric_measure, please refer to ISO/IS 10303-41 for the final definition of the formal standard. /// /// HISTORY New type in IFC Release 1.5.1. -class IFC_SCHEMA_API IfcNumericMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcNumericMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcNumericMeasure initialize(double v); @@ -13115,9 +13115,9 @@ public: /// IfcPHMeasure is a measure of the molar hydrogen ion concentration in a liquid (usually defined as the measure of acidity) in a range from 0 to 14. /// /// HISTORY: New type in IFC 2x2. -class IFC_SCHEMA_API IfcPHMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcPHMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcPHMeasure initialize(double v); @@ -13130,9 +13130,9 @@ public: /// NOTE Corresponding STEP name: parameter_value, please refer to ISO/IS 10303-41 for the final definition of the formal standard. /// /// HISTORY New type in IFC Release 1.5.1. -class IFC_SCHEMA_API IfcParameterValue : public express::DeclaredType { +class IFC_SCHEMA_API IfcParameterValue : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcParameterValue initialize(double v); @@ -13143,9 +13143,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2x. -class IFC_SCHEMA_API IfcPlanarForceMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcPlanarForceMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcPlanarForceMeasure initialize(double v); @@ -13162,9 +13162,9 @@ public: /// NOTE Corresponding ISO 10303 name: plane_angle_measure, please refer to ISO/IS 10303-41 for the final definition of the formal standard. /// /// HISTORY New type in IFC Release 1.5.1. -class IFC_SCHEMA_API IfcPlaneAngleMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcPlaneAngleMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcPlaneAngleMeasure initialize(double v); @@ -13212,9 +13212,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2.0. -class IFC_SCHEMA_API IfcPowerMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcPowerMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcPowerMeasure initialize(double v); @@ -13229,9 +13229,9 @@ public: /// NOTE  Corresponding ISO 10303 name: presentable_text. Please refer to ISO/IS 10303-46:1994, p. 133 for the final definition of the formal standard. /// /// HISTORY  New type in IFC2x2. -class IFC_SCHEMA_API IfcPresentableText : public express::DeclaredType { +class IFC_SCHEMA_API IfcPresentableText : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcPresentableText initialize(std::string v); @@ -13242,18 +13242,18 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2.0. -class IFC_SCHEMA_API IfcPressureMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcPressureMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcPressureMeasure initialize(double v); operator double() const; }; -class IFC_SCHEMA_API IfcPropertySetDefinitionSet : public express::DeclaredType { +class IFC_SCHEMA_API IfcPropertySetDefinitionSet : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcPropertySetDefinitionSet initialize(std::vector< ::Ifc4x3::IfcPropertySetDefinition > v); @@ -13264,9 +13264,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2x. -class IFC_SCHEMA_API IfcRadioActivityMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcRadioActivityMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcRadioActivityMeasure initialize(double v); @@ -13282,9 +13282,9 @@ public: /// NOTE Corresponding STEP name: ratio_measure, please refer to ISO/IS 10303-41 for the final definition of the formal standard. /// /// HISTORY New type in IFC Release 1.5.1. -class IFC_SCHEMA_API IfcRatioMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcRatioMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcRatioMeasure initialize(double v); @@ -13297,9 +13297,9 @@ public: /// Type: REAL /// /// HISTORY: New type in IFC Release 1.5.1. -class IFC_SCHEMA_API IfcReal : public express::DeclaredType { +class IFC_SCHEMA_API IfcReal : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcReal initialize(double v); @@ -13310,9 +13310,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2x. -class IFC_SCHEMA_API IfcRotationalFrequencyMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcRotationalFrequencyMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcRotationalFrequencyMeasure initialize(double v); @@ -13324,9 +13324,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC2x2. -class IFC_SCHEMA_API IfcRotationalMassMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcRotationalMassMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcRotationalMassMeasure initialize(double v); @@ -13337,9 +13337,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2x. -class IFC_SCHEMA_API IfcRotationalStiffnessMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcRotationalStiffnessMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcRotationalStiffnessMeasure initialize(double v); @@ -13350,9 +13350,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2x2. -class IFC_SCHEMA_API IfcSectionModulusMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcSectionModulusMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcSectionModulusMeasure initialize(double v); @@ -13363,9 +13363,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC2x2. -class IFC_SCHEMA_API IfcSectionalAreaIntegralMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcSectionalAreaIntegralMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcSectionalAreaIntegralMeasure initialize(double v); @@ -13376,9 +13376,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2x. -class IFC_SCHEMA_API IfcShearModulusMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcShearModulusMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcShearModulusMeasure initialize(double v); @@ -13391,18 +13391,18 @@ public: /// NOTE Corresponding ISO 10303 name: solid_angle_measure, please refer to ISO/IS 10303-41 for the final definition of the formal standard. /// /// HISTORY New type in IFC Release 1.5.1. -class IFC_SCHEMA_API IfcSolidAngleMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcSolidAngleMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcSolidAngleMeasure initialize(double v); operator double() const; }; -class IFC_SCHEMA_API IfcSoundPowerLevelMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcSoundPowerLevelMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcSoundPowerLevelMeasure initialize(double v); @@ -13413,18 +13413,18 @@ public: /// Type: REAL /// /// HISTORY New type in IFC2x2. -class IFC_SCHEMA_API IfcSoundPowerMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcSoundPowerMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcSoundPowerMeasure initialize(double v); operator double() const; }; -class IFC_SCHEMA_API IfcSoundPressureLevelMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcSoundPressureLevelMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcSoundPressureLevelMeasure initialize(double v); @@ -13435,9 +13435,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC2x2. -class IFC_SCHEMA_API IfcSoundPressureMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcSoundPressureMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcSoundPressureMeasure initialize(double v); @@ -13448,9 +13448,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2x. -class IFC_SCHEMA_API IfcSpecificHeatCapacityMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcSpecificHeatCapacityMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcSpecificHeatCapacityMeasure initialize(double v); @@ -13463,9 +13463,9 @@ public: /// NOTE: The datatype relates to the definition of specular_exponent in ISO 10303-46 entity surface_style_reflectance_ambient_diffuse_specular. /// /// HISTORY: New type in IFC2x2. -class IFC_SCHEMA_API IfcSpecularExponent : public express::DeclaredType { +class IFC_SCHEMA_API IfcSpecularExponent : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcSpecularExponent initialize(double v); @@ -13480,9 +13480,9 @@ public: /// NOTE: The datatype relates to the definition of "shiness" in VRML97, which is the reciprocate value to the specular roughness. /// /// HISTORY: New type in Release IFC2x2. -class IFC_SCHEMA_API IfcSpecularRoughness : public express::DeclaredType { +class IFC_SCHEMA_API IfcSpecularRoughness : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcSpecularRoughness initialize(double v); @@ -13493,9 +13493,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC2x2. -class IFC_SCHEMA_API IfcTemperatureGradientMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcTemperatureGradientMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcTemperatureGradientMeasure initialize(double v); @@ -13506,9 +13506,9 @@ public: /// Type: REAL /// /// HISTORY  New type in IFC2x4. -class IFC_SCHEMA_API IfcTemperatureRateOfChangeMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcTemperatureRateOfChangeMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcTemperatureRateOfChangeMeasure initialize(double v); @@ -13525,9 +13525,9 @@ public: /// Per ISO 10303-11, the set of characters that may appear in STRINGs is defined in ISO 10646. The encoding of characters in case of file-based exchange is defined in ISO 10303-21 (STEP physical files) and ISO 10303-28 (XML files). Among else, these specifications define the encoding of 8-bit characters from ISO 8859-1...-16 and of 2-byte Unicode characters. /// /// Note that while IfcText is not formally restricted in length, the size of a string in ISO 10303-21:2002 conforming exchange files must not exceed 32767 octets after encoding and escaping. -class IFC_SCHEMA_API IfcText : public express::DeclaredType { +class IFC_SCHEMA_API IfcText : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcText initialize(std::string v); @@ -13543,9 +13543,9 @@ public: /// NOTE  Corresponding CSS1 definition is text-align. /// /// HISTORY  New type in IFC2x3. -class IFC_SCHEMA_API IfcTextAlignment : public express::DeclaredType { +class IFC_SCHEMA_API IfcTextAlignment : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcTextAlignment initialize(std::string v); @@ -13564,9 +13564,9 @@ public: /// NOTE  Corresponding CSS1 definition is text-decoration. /// /// HISTORY  New type in IFC2x3. -class IFC_SCHEMA_API IfcTextDecoration : public express::DeclaredType { +class IFC_SCHEMA_API IfcTextDecoration : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcTextDecoration initialize(std::string v); @@ -13591,9 +13591,9 @@ public: /// HISTORY  New type in IFC2x2 Addendum 2. /// /// IFC2x2 Addendum 2 CHANGE: The IfcFontFamily has been added. -class IFC_SCHEMA_API IfcTextFontName : public express::DeclaredType { +class IFC_SCHEMA_API IfcTextFontName : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcTextFontName initialize(std::string v); @@ -13609,9 +13609,9 @@ public: /// NOTE  Corresponding CSS1 definition is text-transform. /// /// HISTORY  New type in IFC2x3. -class IFC_SCHEMA_API IfcTextTransformation : public express::DeclaredType { +class IFC_SCHEMA_API IfcTextTransformation : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcTextTransformation initialize(std::string v); @@ -13622,9 +13622,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2.0. -class IFC_SCHEMA_API IfcThermalAdmittanceMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcThermalAdmittanceMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcThermalAdmittanceMeasure initialize(double v); @@ -13635,9 +13635,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2x. -class IFC_SCHEMA_API IfcThermalConductivityMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcThermalConductivityMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcThermalConductivityMeasure initialize(double v); @@ -13647,9 +13647,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC2x2. -class IFC_SCHEMA_API IfcThermalExpansionCoefficientMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcThermalExpansionCoefficientMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcThermalExpansionCoefficientMeasure initialize(double v); @@ -13659,9 +13659,9 @@ public: /// Usually measured in m2 Kelvin/Watt. /// /// HISTORY New type in IFC Release 2.0. -class IFC_SCHEMA_API IfcThermalResistanceMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcThermalResistanceMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcThermalResistanceMeasure initialize(double v); @@ -13672,9 +13672,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2.0. -class IFC_SCHEMA_API IfcThermalTransmittanceMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcThermalTransmittanceMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcThermalTransmittanceMeasure initialize(double v); @@ -13687,9 +13687,9 @@ public: /// NOTE Corresponding ISO 10303 name: thermodynamic_temperature_measure, please refer to ISO/IS 10303-41 for the final definition of the formal standard. /// /// HISTORY New type in IFC Release 1.5.1. -class IFC_SCHEMA_API IfcThermodynamicTemperatureMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcThermodynamicTemperatureMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcThermodynamicTemperatureMeasure initialize(double v); @@ -13703,9 +13703,9 @@ public: /// 13:20:00-05:00. /// /// HISTORY: New type in IFC2x4 -class IFC_SCHEMA_API IfcTime : public express::DeclaredType { +class IFC_SCHEMA_API IfcTime : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcTime initialize(std::string v); @@ -13718,9 +13718,9 @@ public: /// NOTE Corresponding ISO 10303 name: time_measure, please refer to ISO/IS 10303-41 for the final definition of the formal standard. /// /// HISTORY New type in IFC Release 1.5.1. -class IFC_SCHEMA_API IfcTimeMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcTimeMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcTimeMeasure initialize(double v); @@ -13730,9 +13730,9 @@ public: /// Type: INTEGER /// /// HISTORY New type in IFC Release 1.5.1. -class IFC_SCHEMA_API IfcTimeStamp : public express::DeclaredType { +class IFC_SCHEMA_API IfcTimeStamp : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcTimeStamp initialize(int64_t v); @@ -13743,9 +13743,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2x. -class IFC_SCHEMA_API IfcTorqueMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcTorqueMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcTorqueMeasure initialize(double v); @@ -13758,9 +13758,9 @@ public: /// designed to make it easy to map other namespaces (that share the properties of URNs) into URN-space. /// /// HISTORY New defined datatype in IFC 2x4. -class IFC_SCHEMA_API IfcURIReference : public express::DeclaredType { +class IFC_SCHEMA_API IfcURIReference : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcURIReference initialize(std::string v); @@ -13771,9 +13771,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2x. -class IFC_SCHEMA_API IfcVaporPermeabilityMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcVaporPermeabilityMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcVaporPermeabilityMeasure initialize(double v); @@ -13786,9 +13786,9 @@ public: /// NOTE Corresponding ISO 10303 name: volume_measure, please refer to ISO/IS 10303-41 for the final definition of the formal standard. /// /// HISTORY New type in IFC Release 1.5.1. -class IFC_SCHEMA_API IfcVolumeMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcVolumeMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcVolumeMeasure initialize(double v); @@ -13799,9 +13799,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2.0. -class IFC_SCHEMA_API IfcVolumetricFlowRateMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcVolumetricFlowRateMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcVolumetricFlowRateMeasure initialize(double v); @@ -13812,9 +13812,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC2x2. -class IFC_SCHEMA_API IfcWarpingConstantMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcWarpingConstantMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcWarpingConstantMeasure initialize(double v); @@ -13825,9 +13825,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC2x2. -class IFC_SCHEMA_API IfcWarpingMomentMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcWarpingMomentMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcWarpingMomentMeasure initialize(double v); @@ -13905,9 +13905,9 @@ public: /// Corresponds to the following entity in ISO-10303-41: organization_role and person_role. /// /// HISTORY New entity in IFC Release 1.5.1 -class IFC_SCHEMA_API IfcActorRole : public express::Entity { +class IFC_SCHEMA_API IfcActorRole : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// The name of the role played by an actor. If the Role has value USERDEFINED, then /// the user defined role shall be provided as a value of the attribute UserDefinedRole. @@ -13932,9 +13932,9 @@ public: /// NOTE Corresponds to the following entity in ISO-10303-41: address. /// /// HISTORY New entity in IFC Release 1.5.1. -class IFC_SCHEMA_API IfcAddress : public express::Entity { +class IFC_SCHEMA_API IfcAddress : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// Identifies the logical location of the address. std::optional< ::Ifc4x3::IfcAddressTypeEnum::Value > Purpose() const; @@ -13955,9 +13955,9 @@ public: IfcAddress initialize(std::optional< ::Ifc4x3::IfcAddressTypeEnum::Value > v1_Purpose, std::optional< std::string > v2_Description, std::optional< std::string > v3_UserDefinedPurpose); }; -class IFC_SCHEMA_API IfcAlignmentParameterSegment : public express::Entity { +class IFC_SCHEMA_API IfcAlignmentParameterSegment : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; std::optional< std::string > StartTag() const; void setStartTag(const std::optional< std::string >& v); @@ -13993,9 +13993,9 @@ public: /// IfcApplication holds the information about an IFC compliant application developed by an application developer. The IfcApplication utilizes a short identifying name as provided by the application developer. /// /// HISTORY  New entity in IFC R1.5. -class IFC_SCHEMA_API IfcApplication : public express::Entity { +class IFC_SCHEMA_API IfcApplication : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// Name of the application developer, being requested to be member of the IAI. ::Ifc4x3::IfcOrganization ApplicationDeveloper() const; @@ -14027,9 +14027,9 @@ public: /// An instance of IfcAppliedValue may have a unit basis asserted. This is defined as an IfcMeasureWithUnit that determines the extent of the unit value for application purposes. It is assumed that when this attribute is asserted, then the value given to IfcAppliedValue is that for unit quantity. This is not enforced within the IFC schema and thus needs to be controlled within an application. /// /// Applied values may be referenced from a document (such as a price list). The relationship between one or more occurrences of IfcAppliedValue (or its subtypes) is achieved through the use of the IfcExternalReferenceRelationship in which the document provides the IfcExternalReferenceRelationship.RelatingExtReference and the value occurrences are the IfcExternalReferenceRelationship.RelatedResourceObjects. -class IFC_SCHEMA_API IfcAppliedValue : public express::Entity { +class IFC_SCHEMA_API IfcAppliedValue : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// A name or additional clarification given to a cost value. std::optional< std::string > Name() const; @@ -14075,9 +14075,9 @@ public: /// HISTORY New Entity in IFC Release 2.0 /// /// IFC2x Edition 4 CHANGE  Attributes Identifier and Name made optional, where rule added to require at least one of them being asserted. Inverse attributes ApprovedObjects, ApprovedResources and HasExternalReferences added. Inverse attribute Properties deleted (more general relationship via inverse ApprovedResources to be used instead). -class IFC_SCHEMA_API IfcApproval : public express::Entity { +class IFC_SCHEMA_API IfcApproval : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// A computer interpretable identifier by which the approval is known. std::optional< std::string > Identifier() const; @@ -14136,9 +14136,9 @@ public: /// HISTORY: New entity /// in Release IFC2x Edition /// 2. -class IFC_SCHEMA_API IfcBoundaryCondition : public express::Entity { +class IFC_SCHEMA_API IfcBoundaryCondition : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// Optionally defines a name for this boundary condition. std::optional< std::string > Name() const; @@ -14280,9 +14280,9 @@ public: /// HISTORY  New entity in IFC Release 1.5. /// /// IFC2x Edition 3 CHANGE  The definition of the subtypes has been enhanced by allowing either geometric representation items (point | curve | surface) or topological representation items with associated geometry (vertex point | edge curve | face  surface). -class IFC_SCHEMA_API IfcConnectionGeometry : public express::Entity { +class IFC_SCHEMA_API IfcConnectionGeometry : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; static const ifcopenshell::entity& Class(); @@ -14372,9 +14372,9 @@ public: /// A constraint must have a name applied through the IfcConstraint.Name attribute and optionally, a description through IfcConstraint.Description. The grade of the constraint (hard, soft, advisory) must be specified through IfcConstraint.ConstraintGrade or IfcConstraint.UserDefinedGrade whilst the source, creating actor and time at which the constraint is created may be optionally asserted through IfcConstraint.ConstraintSource, IfcConstraint.CreatingActor and IfcConstraint.CreationTime. /// /// A constraint may also have additional external information (such as classification or document information) associated to it by IfcExternalReferenceRelationship, accessible through inverse attribute IfcConstraint.HasExternalReferences -class IFC_SCHEMA_API IfcConstraint : public express::Entity { +class IFC_SCHEMA_API IfcConstraint : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// A name to be used for the constraint (e.g., ChillerCoefficientOfPerformance). std::string Name() const; @@ -14452,9 +14452,9 @@ public: /// and any map or other coordinate reference system. /// /// HISTORY  New entity in IFC2x4. -class IFC_SCHEMA_API IfcCoordinateOperation : public express::Entity { +class IFC_SCHEMA_API IfcCoordinateOperation : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// Source coordinate reference system for the operation. ::Ifc4x3::IfcCoordinateReferenceSystemSelect SourceCRS() const; @@ -14488,9 +14488,9 @@ public: /// Specifications. /// /// HISTORY  New entity in IFC2x4. -class IFC_SCHEMA_API IfcCoordinateReferenceSystem : public express::Entity { +class IFC_SCHEMA_API IfcCoordinateReferenceSystem : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// Name by which the coordinate reference system is identified. /// Note  The name shall be taken from the list recognized by the European Petroleum Survey Group EPSG. @@ -14574,9 +14574,9 @@ public: /// NOTE: Corresponding ISO 10303 name: derived_unit, please refer to ISO/IS 10303-41 for the final definition of the formal standard. /// /// HISTORY: New entity in IFC Release 1.5.1. -class IFC_SCHEMA_API IfcDerivedUnit : public express::Entity { +class IFC_SCHEMA_API IfcDerivedUnit : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// The group of units and their exponents that define the derived unit. std::vector< ::Ifc4x3::IfcDerivedUnitElement > Elements() const; @@ -14601,9 +14601,9 @@ public: /// NOTE: Corresponding ISO 10303 name: derived_unit_element, please refer to ISO/IS 10303-41 for the final definition of the formal standard. /// /// HISTORY New entity in IFC Release 1.5.1. -class IFC_SCHEMA_API IfcDerivedUnitElement : public express::Entity { +class IFC_SCHEMA_API IfcDerivedUnitElement : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// The fixed quantity which is used as the mathematical factor. ::Ifc4x3::IfcNamedUnit Unit() const; @@ -14632,9 +14632,9 @@ public: /// for the final definition of the formal standard. /// /// HISTORY New entity in IFC Release 1.5.1. -class IFC_SCHEMA_API IfcDimensionalExponents : public express::Entity { +class IFC_SCHEMA_API IfcDimensionalExponents : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// The power of the length base quantity. int64_t LengthExponent() const; @@ -14667,9 +14667,9 @@ public: /// all external information entities. /// /// HISTORY New entity in IFC2x4. -class IFC_SCHEMA_API IfcExternalInformation : public express::Entity { +class IFC_SCHEMA_API IfcExternalInformation : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; static const ifcopenshell::entity& Class(); @@ -14684,9 +14684,9 @@ public: /// IfcExternalReference is an abstract supertype of all external reference entities. /// /// HISTORY New entity in IFC2x. -class IFC_SCHEMA_API IfcExternalReference : public express::Entity { +class IFC_SCHEMA_API IfcExternalReference : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// Location, where the external source (classification, document or library) can be accessed by electronic means. The electronic location is provided as an URI, and would normally be given as an URL location string. /// @@ -14781,9 +14781,9 @@ public: /// underlying AxisCurve supports this concept. /// /// Figure 242 — Grid axis -class IFC_SCHEMA_API IfcGridAxis : public express::Entity { +class IFC_SCHEMA_API IfcGridAxis : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// The tag or name for this grid axis. std::optional< std::string > AxisTag() const; @@ -14805,9 +14805,9 @@ public: /// The IfcIrregularTimeSeriesValue describes a value (or set of values) at a particular time point. /// /// HISTORY: New entity in IFC 2x2. -class IFC_SCHEMA_API IfcIrregularTimeSeriesValue : public express::Entity { +class IFC_SCHEMA_API IfcIrregularTimeSeriesValue : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// The specification of the time point. std::string TimeStamp() const; @@ -14902,9 +14902,9 @@ public: /// For each pair of MainPlaneAngle and SecondaryPlaneAngle the LuminousIntensity is provided (the unit is given by the IfcUnitAssignment referring to the LuminousIntensityDistributionUnit, normally cd/klm). /// /// HISTORY: New entity in IFC2x2. -class IFC_SCHEMA_API IfcLightDistributionData : public express::Entity { +class IFC_SCHEMA_API IfcLightDistributionData : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// The main plane angle (A, B or C angles, according to the light distribution curve chosen). double MainPlaneAngle() const; @@ -14924,9 +14924,9 @@ public: /// IfcLightIntensityDistribution defines the the luminous intensity of a light source that changes according to the direction of the ray. It is based on some standardized light distribution curves, which are defined by the LightDistributionCurve attribute. /// /// New entity in IFC2x2. -class IFC_SCHEMA_API IfcLightIntensityDistribution : public express::Entity { +class IFC_SCHEMA_API IfcLightIntensityDistribution : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// Standardized light distribution curve used to define the luminous intensity of the light in all directions. ::Ifc4x3::IfcLightDistributionCurveEnum::Value LightDistributionCurve() const; @@ -14991,9 +14991,9 @@ public: /// HISTORY New entity in IFC2x. /// /// IFC2x4 CHANGE The entity IfcMaterialClassificationRelationship is deprecated since IFC2x4 and shall no longer be used. Use IfcExternalReferenceRelationship instead. -class IFC_SCHEMA_API IfcMaterialClassificationRelationship : public express::Entity { +class IFC_SCHEMA_API IfcMaterialClassificationRelationship : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// The material classifications identifying the type of material. std::vector< ::Ifc4x3::IfcClassificationSelect > MaterialClassifications() const; @@ -15029,9 +15029,9 @@ public: /// IfcRelAssociatesMaterial. /// /// HISTORY New entity in IFC2x4 -class IFC_SCHEMA_API IfcMaterialDefinition : public express::Entity { +class IFC_SCHEMA_API IfcMaterialDefinition : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; std::vector< IfcRelAssociatesMaterial > AssociatedTo() const; // INVERSE IfcRelAssociatesMaterial::RelatingMaterial std::vector< IfcExternalReferenceRelationship > HasExternalReferences() const; // INVERSE IfcExternalReferenceRelationship::RelatedResourceObjects @@ -15227,9 +15227,9 @@ public: /// /// IFC2x4 CHANGE The entity IfcMaterialList is deprecated and shall no longer /// be used. Use IfcMaterialConstituentSet instead. -class IFC_SCHEMA_API IfcMaterialList : public express::Entity { +class IFC_SCHEMA_API IfcMaterialList : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// Materials used in a composition of substances. std::vector< ::Ifc4x3::IfcMaterial > Materials() const; @@ -15345,9 +15345,9 @@ public: /// IfcMaterialUsageDefinition to a subtype of /// IfcElementType, it shall only be assigned to an element /// occurrence. -class IFC_SCHEMA_API IfcMaterialUsageDefinition : public express::Entity { +class IFC_SCHEMA_API IfcMaterialUsageDefinition : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; std::vector< IfcRelAssociatesMaterial > AssociatedTo() const; // INVERSE IfcRelAssociatesMaterial::RelatingMaterial @@ -15364,9 +15364,9 @@ public: /// NOTE Corresponding ISO 10303 name: measure_with_unit, please refer to ISO/IS 10303-41 for the final definition of the formal standard. /// /// HISTORY New entity in IFC Release 1.5.1. -class IFC_SCHEMA_API IfcMeasureWithUnit : public express::Entity { +class IFC_SCHEMA_API IfcMeasureWithUnit : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// The value of the physical quantity when expressed in the specified units. ::Ifc4x3::IfcValue ValueComponent() const; @@ -15454,9 +15454,9 @@ public: /// HISTORY: New entity in IFC Release 2x. /// /// IFC2x4 CHANGE: Type of the attribute Currency changed. -class IFC_SCHEMA_API IfcMonetaryUnit : public express::Entity { +class IFC_SCHEMA_API IfcMonetaryUnit : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// Code or name of the currency. Permissible values are the three-letter alphabetic currency codes as per ISO 4217, for example CNY, EUR, GBP, JPY, USD. std::string Currency() const; @@ -15470,9 +15470,9 @@ public: /// NOTE Corresponding ISO 10303 name: named_unit, please refer to ISO/IS 10303-41 for the final definition of the formal standard. /// /// HISTORY New type in IFC Release 1.5.1. -class IFC_SCHEMA_API IfcNamedUnit : public express::Entity { +class IFC_SCHEMA_API IfcNamedUnit : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// The dimensional exponents of the SI base units by which the named unit is defined. ::Ifc4x3::IfcDimensionalExponents Dimensions() const; @@ -15495,9 +15495,9 @@ public: /// In any case the object placement has to unambiguously define the object coordinate system as either two-dimensional axis placement (IfcAxis2Placement2D) or three-dimensional axis placement (IfcAxis2Placement3D). The axis placement may have to be calculated. /// /// HISTORY New entity in IFC Release 2x. -class IFC_SCHEMA_API IfcObjectPlacement : public express::Entity { +class IFC_SCHEMA_API IfcObjectPlacement : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; ::Ifc4x3::IfcObjectPlacement PlacementRelTo() const; void setPlacementRelTo(const ::Ifc4x3::IfcObjectPlacement& v); @@ -15543,9 +15543,9 @@ public: /// /// HISTORY New entity in IFC Release 1.5.1. /// IFC 2x4 change: attribute Id renamed to Identification. -class IFC_SCHEMA_API IfcOrganization : public express::Entity { +class IFC_SCHEMA_API IfcOrganization : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// Identification of the organization. std::optional< std::string > Identification() const; @@ -15580,9 +15580,9 @@ public: /// /// If LastModifiedDate is defined but ChangeAction is not asserted, then the state of ChangeAction is assumed to be UNDEFINED. /// If both LastModifiedDate and ChangeAction are asserted, then the state of ChangeAction applies to the value asserted in LastModifiedDate. -class IFC_SCHEMA_API IfcOwnerHistory : public express::Entity { +class IFC_SCHEMA_API IfcOwnerHistory : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// Direct reference to the end user who currently "owns" this object. Note that IFC includes the concept of ownership transfer from one user to another and therefore distinguishes between the Owning User and Creating User. ::Ifc4x3::IfcPersonAndOrganization OwningUser() const; @@ -15621,9 +15621,9 @@ public: /// /// HISTORY New entity in IFC Release 1.5.1. /// IFC 2x4 change: attribute Id renamed to Identification. WHERE rule relaxed to allow omission of names if Identification is provided. -class IFC_SCHEMA_API IfcPerson : public express::Entity { +class IFC_SCHEMA_API IfcPerson : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// Identification of the person. std::optional< std::string > Identification() const; @@ -15665,9 +15665,9 @@ public: /// NOTE Corresponds to the following entity in ISO-10303-41: person_and_organization. /// /// HISTORY New entity in IFC Release 1.5.1 -class IFC_SCHEMA_API IfcPersonAndOrganization : public express::Entity { +class IFC_SCHEMA_API IfcPersonAndOrganization : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// The person who is related to the organization. ::Ifc4x3::IfcPerson ThePerson() const; @@ -15687,9 +15687,9 @@ public: /// The Name attribute defines the actual usage or kind of measure. The interpretation of the name label has to be established within the actual exchange context. In addition an informative text may be associated to each quantity by the Description attribute. /// /// HISTORY  New entity in IFC2x. It replaces the calcXxx attributes used in previous IFC Releases. -class IFC_SCHEMA_API IfcPhysicalQuantity : public express::Entity { +class IFC_SCHEMA_API IfcPhysicalQuantity : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// Name of the element quantity or measure. The name attribute has to be made recognizable by further agreements. std::string Name() const; @@ -15762,9 +15762,9 @@ public: IfcPostalAddress initialize(std::optional< ::Ifc4x3::IfcAddressTypeEnum::Value > v1_Purpose, std::optional< std::string > v2_Description, std::optional< std::string > v3_UserDefinedPurpose, std::optional< std::string > v4_InternalLocation, std::optional< std::vector< std::string > /*[1:?]*/ > v5_AddressLines, std::optional< std::string > v6_PostalBox, std::optional< std::string > v7_Town, std::optional< std::string > v8_Region, std::optional< std::string > v9_PostalCode, std::optional< std::string > v10_Country); }; -class IFC_SCHEMA_API IfcPresentationItem : public express::Entity { +class IFC_SCHEMA_API IfcPresentationItem : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; static const ifcopenshell::entity& Class(); @@ -15785,9 +15785,9 @@ public: /// Figure 305 illustrates assignment of items by shape representation or representation item. The set of AssignedItems can either include a whole shape representation, or individual geometric representation items. If both, the IfcShapeRepresentation has a layer assignment, and an individual geometric representation item in the set of IfcShapeRepresentation.Items, then the layer assignment of the IfcGeometricRepresentationItem overides the layer assignment of the IfcShapeRepresentation. /// /// Figure 305 — Presentation layer assignment -class IFC_SCHEMA_API IfcPresentationLayerAssignment : public express::Entity { +class IFC_SCHEMA_API IfcPresentationLayerAssignment : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// Name of the layer. std::string Name() const; @@ -15847,9 +15847,9 @@ public: /// Each subtype of  IfcPresentationStyle can be assigned to IfcGeometricRepresentationItem's via the IfcPresentationStyleAssignment through an intermediate IfcStyledItem or one of its subtypes. /// /// HISTORY  New entity in IFC2x3. -class IFC_SCHEMA_API IfcPresentationStyle : public express::Entity { +class IFC_SCHEMA_API IfcPresentationStyle : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// Name of the presentation style. std::optional< std::string > Name() const; @@ -15875,9 +15875,9 @@ public: /// IFC2x3 NOTE Users should not instantiate the entity from IFC2x Edition 3 onwards. /// /// IFC2x4 CHANGE  Entity made abstract. -class IFC_SCHEMA_API IfcProductRepresentation : public express::Entity { +class IFC_SCHEMA_API IfcProductRepresentation : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// The word or group of words by which the product representation is known. std::optional< std::string > Name() const; @@ -16062,9 +16062,9 @@ public: /// possible to directly instantiate IfcProfileDef and further specify /// the profile only by external reference or by profile properties. The latter /// are tracked by the inverse attribute HasProperties. -class IFC_SCHEMA_API IfcProfileDef : public express::Entity { +class IFC_SCHEMA_API IfcProfileDef : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// Defines the type of geometry into which this profile definition shall be resolved, either a curve or a surface area. In case of curve the profile should be referenced by a swept surface, in case of area the profile should be referenced by a swept area solid. ::Ifc4x3::IfcProfileTypeEnum::Value ProfileType() const; @@ -16126,9 +16126,9 @@ public: IfcProjectedCRS initialize(std::string v1_Name, std::optional< std::string > v2_Description, std::optional< std::string > v3_GeodeticDatum, std::optional< std::string > v4_VerticalDatum, std::optional< std::string > v5_MapProjection, std::optional< std::string > v6_MapZone, ::Ifc4x3::IfcNamedUnit v7_MapUnit); }; -class IFC_SCHEMA_API IfcPropertyAbstraction : public express::Entity { +class IFC_SCHEMA_API IfcPropertyAbstraction : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; std::vector< IfcExternalReferenceRelationship > HasExternalReferences() const; // INVERSE IfcExternalReferenceRelationship::RelatedResourceObjects @@ -16343,9 +16343,9 @@ public: /// /// Use definitions /// IfcRecurrencePattern supports various recurrence patterns that are differentiated by a type definition (IfcRecurrencePattern.RecurrenceType), which is required to provide the meaning of the given values. It can be further constrained by applicable times through specified IfcTimePeriod instances, thus enabling time periods such as between 7:00 and 12:00 and between 13:00 and 17:00 for each of the applicable days, weeks or months. -class IFC_SCHEMA_API IfcRecurrencePattern : public express::Entity { +class IFC_SCHEMA_API IfcRecurrencePattern : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// Defines the recurrence type that gives meaning to the used /// attributes and decides about possible attribute @@ -16389,9 +16389,9 @@ public: IfcRecurrencePattern initialize(::Ifc4x3::IfcRecurrenceTypeEnum::Value v1_RecurrenceType, std::optional< std::vector< int64_t > /*[1:?]*/ > v2_DayComponent, std::optional< std::vector< int64_t > /*[1:?]*/ > v3_WeekdayComponent, std::optional< std::vector< int64_t > /*[1:?]*/ > v4_MonthComponent, std::optional< int64_t > v5_Position, std::optional< int64_t > v6_Interval, std::optional< int64_t > v7_Occurrences, std::optional< std::vector< ::Ifc4x3::IfcTimePeriod > > v8_TimePeriods); }; -class IFC_SCHEMA_API IfcReference : public express::Entity { +class IFC_SCHEMA_API IfcReference : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; std::optional< std::string > TypeIdentifier() const; void setTypeIdentifier(const std::optional< std::string >& v); @@ -16453,9 +16453,9 @@ public: /// IFC2x4 CHANGE  Entity /// IfcRepresentation has been changed into an ABSTRACT /// supertype. -class IFC_SCHEMA_API IfcRepresentation : public express::Entity { +class IFC_SCHEMA_API IfcRepresentation : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// Definition of the representation context for which the different subtypes of representation are valid. ::Ifc4x3::IfcRepresentationContext ContextOfItems() const; @@ -16487,9 +16487,9 @@ public: /// /// IFC2x4 CHANGE Entity made abstract, had been deprecated from instantiation since /// IFC2x2. -class IFC_SCHEMA_API IfcRepresentationContext : public express::Entity { +class IFC_SCHEMA_API IfcRepresentationContext : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// The optional identifier of the representation context as used within a project. std::optional< std::string > ContextIdentifier() const; @@ -16534,9 +16534,9 @@ public: /// HISTORY  New entity in IFC Release 2x. /// /// IFC2x3 CHANGE  The inverse attributes StyledByItem and LayerAssignments have been added. Upward compatibility for file based exchange is guaranteed. -class IFC_SCHEMA_API IfcRepresentationItem : public express::Entity { +class IFC_SCHEMA_API IfcRepresentationItem : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; std::vector< IfcPresentationLayerAssignment > LayerAssignment() const; // INVERSE IfcPresentationLayerAssignment::AssignedItems std::vector< IfcStyledItem > StyledByItem() const; // INVERSE IfcStyledItem::Item @@ -16555,9 +16555,9 @@ public: /// NOTE  The definition of a mapping which is used to specify a new representation item comprises a representation map and a mapped item entity. Without both entities, the mapping is not fully defined. Two entities are specified to allow the same source representation to be mapped into multiple new representations. /// /// HISTORY  New entity in IFC Release 2x. -class IFC_SCHEMA_API IfcRepresentationMap : public express::Entity { +class IFC_SCHEMA_API IfcRepresentationMap : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// An axis2 placement that defines the position about which the mapped /// representation is mapped. @@ -16575,9 +16575,9 @@ public: /// IfcResourceLevelRelationship is an abstract base class for relationships between resource-level entities. /// /// HISTORY New Entity in IFC 2x4 -class IFC_SCHEMA_API IfcResourceLevelRelationship : public express::Entity { +class IFC_SCHEMA_API IfcResourceLevelRelationship : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// A name used to identify or qualify the relationship. std::optional< std::string > Name() const; @@ -16598,9 +16598,9 @@ public: /// HISTORY New entity in IFC Release 1.0 /// /// IFC2x4 CHANGE The attribute OwnerHistory has been made OPTIONAL. -class IFC_SCHEMA_API IfcRoot : public express::Entity { +class IFC_SCHEMA_API IfcRoot : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// Assignment of a globally unique identifier within the entire software world. std::string GlobalId() const; @@ -16648,9 +16648,9 @@ public: /// IfcSchedulingTime is the abstract supertype of entities that capture time-related information of processes. /// /// HISTORY: New entity in IFC2x4. -class IFC_SCHEMA_API IfcSchedulingTime : public express::Entity { +class IFC_SCHEMA_API IfcSchedulingTime : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// Optional name for the time definition. std::optional< std::string > Name() const; @@ -16703,9 +16703,9 @@ public: /// IfcRepresentationMap's that are used by an /// IfcTypeProduct through the /// RepresentationMaps attribute. -class IFC_SCHEMA_API IfcShapeAspect : public express::Entity { +class IFC_SCHEMA_API IfcShapeAspect : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// List of shape representations. Each member defines a valid representation of a particular type within a particular representation context as being an aspect (or part) of a product definition. /// IFC2x Edition 3 CHANGE  The data type has been changed from IfcShapeRepresentation to IfcShapeModel with upward compatibility @@ -16904,9 +16904,9 @@ public: /// Definition from IAI: Describe more rarely needed connection properties. /// /// HISTORY: New entity in IFC 2x2. -class IFC_SCHEMA_API IfcStructuralConnectionCondition : public express::Entity { +class IFC_SCHEMA_API IfcStructuralConnectionCondition : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// Optionally defines a name for this connection condition. std::optional< std::string > Name() const; @@ -16918,9 +16918,9 @@ public: /// Definition from IAI: The abstract entity IfcStructuralLoadOrResult is the supertype of all loads (actions or reactions) or of certain requirements resulting from structural analysis, or certain provisions which influence structural analysis. /// /// HISTORY: New entity in IFC 2x2. -class IFC_SCHEMA_API IfcStructuralLoad : public express::Entity { +class IFC_SCHEMA_API IfcStructuralLoad : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// Optionally defines a name for this load. std::optional< std::string > Name() const; @@ -17373,9 +17373,9 @@ public: /// HISTORY  New entity in IFC R1.5. /// /// IFC2x4 CHANGE  Columns attribute added. -class IFC_SCHEMA_API IfcTable : public express::Entity { +class IFC_SCHEMA_API IfcTable : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// A unique name which is intended to describe the usage of the Table. std::optional< std::string > Name() const; @@ -17395,9 +17395,9 @@ public: /// The use of IfcTableColumn supercedes the IsHeading flag associated with IfcTableRow. /// /// HISTORY  New entity in IFC2x4. -class IFC_SCHEMA_API IfcTableColumn : public express::Entity { +class IFC_SCHEMA_API IfcTableColumn : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// Table column identifier. std::optional< std::string > Identifier() const; @@ -17430,9 +17430,9 @@ public: /// Figure 338 — Table row use alternative /// /// HISTORY  New entity in IFC R1.5. -class IFC_SCHEMA_API IfcTableRow : public express::Entity { +class IFC_SCHEMA_API IfcTableRow : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// The data value of the table cell.. std::optional< std::vector< ::Ifc4x3::IfcValue > > RowCells() const; @@ -17806,9 +17806,9 @@ public: IfcTextureCoordinateGenerator initialize(std::vector< ::Ifc4x3::IfcSurfaceTexture > v1_Maps, std::string v2_Mode, std::optional< std::vector< double > /*[1:?]*/ > v3_Parameter); }; -class IFC_SCHEMA_API IfcTextureCoordinateIndices : public express::Entity { +class IFC_SCHEMA_API IfcTextureCoordinateIndices : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; std::vector< int64_t > /*[3:?]*/ TexCoordIndex() const; void setTexCoordIndex(const std::vector< int64_t > /*[3:?]*/& v); @@ -17951,9 +17951,9 @@ public: /// /// Use definitions /// A time period is defined by a start and an end time, which is defined by IfcTime. The given time period should be within reasonable values (for example, the start time must be before the end time). It is furthermore expected that both time definitions use the same time zone and, if given, the same daylight saving offset. -class IFC_SCHEMA_API IfcTimePeriod : public express::Entity { +class IFC_SCHEMA_API IfcTimePeriod : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// Start time of the time period. std::string StartTime() const; @@ -17970,9 +17970,9 @@ public: /// The modeling of buildings and their performance involves data that are generated and recorded over a period of time. Such data cover a large spectrum, from weather data to schedules of all kinds to status measurements to reporting to everything else that has a time related aspect. Their correct placement in time is essential for their proper understanding and use, and the IfcTimeSeries subtypes provide the appropriate data structures to accommodate these types of data. /// /// HISTORY: New entity in IFC 2x2. -class IFC_SCHEMA_API IfcTimeSeries : public express::Entity { +class IFC_SCHEMA_API IfcTimeSeries : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// An unique name for the time series. std::string Name() const; @@ -18012,9 +18012,9 @@ public: /// Figure 241 — Time series value /// /// HISTORY  New entity in IFC2x2. -class IFC_SCHEMA_API IfcTimeSeriesValue : public express::Entity { +class IFC_SCHEMA_API IfcTimeSeriesValue : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// A list of time-series values. At least one value is required. std::vector< ::Ifc4x3::IfcValue > ListValues() const; @@ -18083,9 +18083,9 @@ public: /// NOTE  A project (IfcProject) has a unit assignment which establishes a set of units which will be used globally within the project, if not otherwise defined. Other objects may have local unit assignments if there is a requirement for them to make use of units which do not fall within the project unit assignment. /// /// HISTORY  New entity in IFC Release 1.5.1. -class IFC_SCHEMA_API IfcUnitAssignment : public express::Entity { +class IFC_SCHEMA_API IfcUnitAssignment : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// Units to be included within a unit assignment. std::vector< ::Ifc4x3::IfcUnit > Units() const; @@ -18191,9 +18191,9 @@ public: /// OffsetDistances[1] is a negative length measure /// /// Figure 248 — Virtual grid intersection negative offset -class IFC_SCHEMA_API IfcVirtualGridIntersection : public express::Entity { +class IFC_SCHEMA_API IfcVirtualGridIntersection : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// Two grid axes which intersects at exactly one intersection (see also informal proposition at IfcGrid). If attribute OffsetDistances is omitted, the intersection defines the placement or ref direction of a grid placement directly. If OffsetDistances are given, the intersection is defined by the offset curves to the grid axes. std::vector< ::Ifc4x3::IfcGridAxis > IntersectingAxes() const; diff --git a/src/ifcparse/schemas/Ifc4x3_add1.cpp b/src/ifcparse/schemas/Ifc4x3_add1.cpp index 91ee2ed512..871644c50d 100644 --- a/src/ifcparse/schemas/Ifc4x3_add1.cpp +++ b/src/ifcparse/schemas/Ifc4x3_add1.cpp @@ -44,7 +44,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcActionRequestTypeEnum::Cla /* Ifc4x3_add1::IfcActionRequestTypeEnum::IfcActionRequestTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcActionRequestTypeEnum::IfcActionRequestTypeEnum(Value v) { @@ -73,7 +73,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcActionSourceTypeEnum::Clas /* Ifc4x3_add1::IfcActionSourceTypeEnum::IfcActionSourceTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcActionSourceTypeEnum::IfcActionSourceTypeEnum(Value v) { @@ -102,7 +102,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcActionTypeEnum::Class() { /* Ifc4x3_add1::IfcActionTypeEnum::IfcActionTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcActionTypeEnum::IfcActionTypeEnum(Value v) { @@ -131,7 +131,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcActuatorTypeEnum::Class() /* Ifc4x3_add1::IfcActuatorTypeEnum::IfcActuatorTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcActuatorTypeEnum::IfcActuatorTypeEnum(Value v) { @@ -160,7 +160,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcAddressTypeEnum::Class() { /* Ifc4x3_add1::IfcAddressTypeEnum::IfcAddressTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcAddressTypeEnum::IfcAddressTypeEnum(Value v) { @@ -189,7 +189,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcAirTerminalBoxTypeEnum::Cl /* Ifc4x3_add1::IfcAirTerminalBoxTypeEnum::IfcAirTerminalBoxTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcAirTerminalBoxTypeEnum::IfcAirTerminalBoxTypeEnum(Value v) { @@ -218,7 +218,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcAirTerminalTypeEnum::Class /* Ifc4x3_add1::IfcAirTerminalTypeEnum::IfcAirTerminalTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcAirTerminalTypeEnum::IfcAirTerminalTypeEnum(Value v) { @@ -247,7 +247,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcAirToAirHeatRecoveryTypeEn /* Ifc4x3_add1::IfcAirToAirHeatRecoveryTypeEnum::IfcAirToAirHeatRecoveryTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcAirToAirHeatRecoveryTypeEnum::IfcAirToAirHeatRecoveryTypeEnum(Value v) { @@ -276,7 +276,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcAlarmTypeEnum::Class() { r /* Ifc4x3_add1::IfcAlarmTypeEnum::IfcAlarmTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcAlarmTypeEnum::IfcAlarmTypeEnum(Value v) { @@ -305,7 +305,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcAlignmentCantSegmentTypeEn /* Ifc4x3_add1::IfcAlignmentCantSegmentTypeEnum::IfcAlignmentCantSegmentTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcAlignmentCantSegmentTypeEnum::IfcAlignmentCantSegmentTypeEnum(Value v) { @@ -334,7 +334,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcAlignmentHorizontalSegment /* Ifc4x3_add1::IfcAlignmentHorizontalSegmentTypeEnum::IfcAlignmentHorizontalSegmentTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcAlignmentHorizontalSegmentTypeEnum::IfcAlignmentHorizontalSegmentTypeEnum(Value v) { @@ -363,7 +363,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcAlignmentTypeEnum::Class() /* Ifc4x3_add1::IfcAlignmentTypeEnum::IfcAlignmentTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcAlignmentTypeEnum::IfcAlignmentTypeEnum(Value v) { @@ -392,7 +392,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcAlignmentVerticalSegmentTy /* Ifc4x3_add1::IfcAlignmentVerticalSegmentTypeEnum::IfcAlignmentVerticalSegmentTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcAlignmentVerticalSegmentTypeEnum::IfcAlignmentVerticalSegmentTypeEnum(Value v) { @@ -421,7 +421,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcAnalysisModelTypeEnum::Cla /* Ifc4x3_add1::IfcAnalysisModelTypeEnum::IfcAnalysisModelTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcAnalysisModelTypeEnum::IfcAnalysisModelTypeEnum(Value v) { @@ -450,7 +450,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcAnalysisTheoryTypeEnum::Cl /* Ifc4x3_add1::IfcAnalysisTheoryTypeEnum::IfcAnalysisTheoryTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcAnalysisTheoryTypeEnum::IfcAnalysisTheoryTypeEnum(Value v) { @@ -479,7 +479,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcAnnotationTypeEnum::Class( /* Ifc4x3_add1::IfcAnnotationTypeEnum::IfcAnnotationTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcAnnotationTypeEnum::IfcAnnotationTypeEnum(Value v) { @@ -508,7 +508,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcArithmeticOperatorEnum::Cl /* Ifc4x3_add1::IfcArithmeticOperatorEnum::IfcArithmeticOperatorEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcArithmeticOperatorEnum::IfcArithmeticOperatorEnum(Value v) { @@ -537,7 +537,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcAssemblyPlaceEnum::Class() /* Ifc4x3_add1::IfcAssemblyPlaceEnum::IfcAssemblyPlaceEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcAssemblyPlaceEnum::IfcAssemblyPlaceEnum(Value v) { @@ -566,7 +566,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcAudioVisualApplianceTypeEn /* Ifc4x3_add1::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceTypeEnum(Value v) { @@ -595,7 +595,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcBSplineCurveForm::Class() /* Ifc4x3_add1::IfcBSplineCurveForm::IfcBSplineCurveForm(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcBSplineCurveForm::IfcBSplineCurveForm(Value v) { @@ -624,7 +624,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcBSplineSurfaceForm::Class( /* Ifc4x3_add1::IfcBSplineSurfaceForm::IfcBSplineSurfaceForm(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcBSplineSurfaceForm::IfcBSplineSurfaceForm(Value v) { @@ -653,7 +653,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcBeamTypeEnum::Class() { re /* Ifc4x3_add1::IfcBeamTypeEnum::IfcBeamTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcBeamTypeEnum::IfcBeamTypeEnum(Value v) { @@ -682,7 +682,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcBearingTypeEnum::Class() { /* Ifc4x3_add1::IfcBearingTypeEnum::IfcBearingTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcBearingTypeEnum::IfcBearingTypeEnum(Value v) { @@ -711,7 +711,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcBenchmarkEnum::Class() { r /* Ifc4x3_add1::IfcBenchmarkEnum::IfcBenchmarkEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcBenchmarkEnum::IfcBenchmarkEnum(Value v) { @@ -740,7 +740,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcBoilerTypeEnum::Class() { /* Ifc4x3_add1::IfcBoilerTypeEnum::IfcBoilerTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcBoilerTypeEnum::IfcBoilerTypeEnum(Value v) { @@ -769,7 +769,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcBooleanOperator::Class() { /* Ifc4x3_add1::IfcBooleanOperator::IfcBooleanOperator(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcBooleanOperator::IfcBooleanOperator(Value v) { @@ -798,7 +798,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcBridgePartTypeEnum::Class( /* Ifc4x3_add1::IfcBridgePartTypeEnum::IfcBridgePartTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcBridgePartTypeEnum::IfcBridgePartTypeEnum(Value v) { @@ -827,7 +827,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcBridgeTypeEnum::Class() { /* Ifc4x3_add1::IfcBridgeTypeEnum::IfcBridgeTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcBridgeTypeEnum::IfcBridgeTypeEnum(Value v) { @@ -856,7 +856,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcBuildingElementPartTypeEnu /* Ifc4x3_add1::IfcBuildingElementPartTypeEnum::IfcBuildingElementPartTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcBuildingElementPartTypeEnum::IfcBuildingElementPartTypeEnum(Value v) { @@ -885,7 +885,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcBuildingElementProxyTypeEn /* Ifc4x3_add1::IfcBuildingElementProxyTypeEnum::IfcBuildingElementProxyTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcBuildingElementProxyTypeEnum::IfcBuildingElementProxyTypeEnum(Value v) { @@ -914,7 +914,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcBuildingSystemTypeEnum::Cl /* Ifc4x3_add1::IfcBuildingSystemTypeEnum::IfcBuildingSystemTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcBuildingSystemTypeEnum::IfcBuildingSystemTypeEnum(Value v) { @@ -943,7 +943,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcBuiltSystemTypeEnum::Class /* Ifc4x3_add1::IfcBuiltSystemTypeEnum::IfcBuiltSystemTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcBuiltSystemTypeEnum::IfcBuiltSystemTypeEnum(Value v) { @@ -972,7 +972,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcBurnerTypeEnum::Class() { /* Ifc4x3_add1::IfcBurnerTypeEnum::IfcBurnerTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcBurnerTypeEnum::IfcBurnerTypeEnum(Value v) { @@ -1001,7 +1001,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcCableCarrierFittingTypeEnu /* Ifc4x3_add1::IfcCableCarrierFittingTypeEnum::IfcCableCarrierFittingTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcCableCarrierFittingTypeEnum::IfcCableCarrierFittingTypeEnum(Value v) { @@ -1030,7 +1030,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcCableCarrierSegmentTypeEnu /* Ifc4x3_add1::IfcCableCarrierSegmentTypeEnum::IfcCableCarrierSegmentTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcCableCarrierSegmentTypeEnum::IfcCableCarrierSegmentTypeEnum(Value v) { @@ -1059,7 +1059,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcCableFittingTypeEnum::Clas /* Ifc4x3_add1::IfcCableFittingTypeEnum::IfcCableFittingTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcCableFittingTypeEnum::IfcCableFittingTypeEnum(Value v) { @@ -1088,7 +1088,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcCableSegmentTypeEnum::Clas /* Ifc4x3_add1::IfcCableSegmentTypeEnum::IfcCableSegmentTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcCableSegmentTypeEnum::IfcCableSegmentTypeEnum(Value v) { @@ -1117,7 +1117,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcCaissonFoundationTypeEnum: /* Ifc4x3_add1::IfcCaissonFoundationTypeEnum::IfcCaissonFoundationTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcCaissonFoundationTypeEnum::IfcCaissonFoundationTypeEnum(Value v) { @@ -1146,7 +1146,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcChangeActionEnum::Class() /* Ifc4x3_add1::IfcChangeActionEnum::IfcChangeActionEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcChangeActionEnum::IfcChangeActionEnum(Value v) { @@ -1175,7 +1175,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcChillerTypeEnum::Class() { /* Ifc4x3_add1::IfcChillerTypeEnum::IfcChillerTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcChillerTypeEnum::IfcChillerTypeEnum(Value v) { @@ -1204,7 +1204,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcChimneyTypeEnum::Class() { /* Ifc4x3_add1::IfcChimneyTypeEnum::IfcChimneyTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcChimneyTypeEnum::IfcChimneyTypeEnum(Value v) { @@ -1233,7 +1233,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcCoilTypeEnum::Class() { re /* Ifc4x3_add1::IfcCoilTypeEnum::IfcCoilTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcCoilTypeEnum::IfcCoilTypeEnum(Value v) { @@ -1262,7 +1262,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcColumnTypeEnum::Class() { /* Ifc4x3_add1::IfcColumnTypeEnum::IfcColumnTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcColumnTypeEnum::IfcColumnTypeEnum(Value v) { @@ -1291,7 +1291,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcCommunicationsApplianceTyp /* Ifc4x3_add1::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceTypeEnum(Value v) { @@ -1320,7 +1320,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcComplexPropertyTemplateTyp /* Ifc4x3_add1::IfcComplexPropertyTemplateTypeEnum::IfcComplexPropertyTemplateTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcComplexPropertyTemplateTypeEnum::IfcComplexPropertyTemplateTypeEnum(Value v) { @@ -1349,7 +1349,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcCompressorTypeEnum::Class( /* Ifc4x3_add1::IfcCompressorTypeEnum::IfcCompressorTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcCompressorTypeEnum::IfcCompressorTypeEnum(Value v) { @@ -1378,7 +1378,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcCondenserTypeEnum::Class() /* Ifc4x3_add1::IfcCondenserTypeEnum::IfcCondenserTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcCondenserTypeEnum::IfcCondenserTypeEnum(Value v) { @@ -1407,7 +1407,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcConnectionTypeEnum::Class( /* Ifc4x3_add1::IfcConnectionTypeEnum::IfcConnectionTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcConnectionTypeEnum::IfcConnectionTypeEnum(Value v) { @@ -1436,7 +1436,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcConstraintEnum::Class() { /* Ifc4x3_add1::IfcConstraintEnum::IfcConstraintEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcConstraintEnum::IfcConstraintEnum(Value v) { @@ -1465,7 +1465,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcConstructionEquipmentResou /* Ifc4x3_add1::IfcConstructionEquipmentResourceTypeEnum::IfcConstructionEquipmentResourceTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcConstructionEquipmentResourceTypeEnum::IfcConstructionEquipmentResourceTypeEnum(Value v) { @@ -1494,7 +1494,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcConstructionMaterialResour /* Ifc4x3_add1::IfcConstructionMaterialResourceTypeEnum::IfcConstructionMaterialResourceTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcConstructionMaterialResourceTypeEnum::IfcConstructionMaterialResourceTypeEnum(Value v) { @@ -1523,7 +1523,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcConstructionProductResourc /* Ifc4x3_add1::IfcConstructionProductResourceTypeEnum::IfcConstructionProductResourceTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcConstructionProductResourceTypeEnum::IfcConstructionProductResourceTypeEnum(Value v) { @@ -1552,7 +1552,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcControllerTypeEnum::Class( /* Ifc4x3_add1::IfcControllerTypeEnum::IfcControllerTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcControllerTypeEnum::IfcControllerTypeEnum(Value v) { @@ -1581,7 +1581,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcConveyorSegmentTypeEnum::C /* Ifc4x3_add1::IfcConveyorSegmentTypeEnum::IfcConveyorSegmentTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcConveyorSegmentTypeEnum::IfcConveyorSegmentTypeEnum(Value v) { @@ -1610,7 +1610,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcCooledBeamTypeEnum::Class( /* Ifc4x3_add1::IfcCooledBeamTypeEnum::IfcCooledBeamTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcCooledBeamTypeEnum::IfcCooledBeamTypeEnum(Value v) { @@ -1639,7 +1639,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcCoolingTowerTypeEnum::Clas /* Ifc4x3_add1::IfcCoolingTowerTypeEnum::IfcCoolingTowerTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcCoolingTowerTypeEnum::IfcCoolingTowerTypeEnum(Value v) { @@ -1668,7 +1668,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcCostItemTypeEnum::Class() /* Ifc4x3_add1::IfcCostItemTypeEnum::IfcCostItemTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcCostItemTypeEnum::IfcCostItemTypeEnum(Value v) { @@ -1697,7 +1697,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcCostScheduleTypeEnum::Clas /* Ifc4x3_add1::IfcCostScheduleTypeEnum::IfcCostScheduleTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcCostScheduleTypeEnum::IfcCostScheduleTypeEnum(Value v) { @@ -1726,7 +1726,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcCourseTypeEnum::Class() { /* Ifc4x3_add1::IfcCourseTypeEnum::IfcCourseTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcCourseTypeEnum::IfcCourseTypeEnum(Value v) { @@ -1755,7 +1755,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcCoveringTypeEnum::Class() /* Ifc4x3_add1::IfcCoveringTypeEnum::IfcCoveringTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcCoveringTypeEnum::IfcCoveringTypeEnum(Value v) { @@ -1784,7 +1784,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcCrewResourceTypeEnum::Clas /* Ifc4x3_add1::IfcCrewResourceTypeEnum::IfcCrewResourceTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcCrewResourceTypeEnum::IfcCrewResourceTypeEnum(Value v) { @@ -1813,7 +1813,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcCurtainWallTypeEnum::Class /* Ifc4x3_add1::IfcCurtainWallTypeEnum::IfcCurtainWallTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcCurtainWallTypeEnum::IfcCurtainWallTypeEnum(Value v) { @@ -1842,7 +1842,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcCurveInterpolationEnum::Cl /* Ifc4x3_add1::IfcCurveInterpolationEnum::IfcCurveInterpolationEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcCurveInterpolationEnum::IfcCurveInterpolationEnum(Value v) { @@ -1871,7 +1871,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcDamperTypeEnum::Class() { /* Ifc4x3_add1::IfcDamperTypeEnum::IfcDamperTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcDamperTypeEnum::IfcDamperTypeEnum(Value v) { @@ -1900,7 +1900,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcDataOriginEnum::Class() { /* Ifc4x3_add1::IfcDataOriginEnum::IfcDataOriginEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcDataOriginEnum::IfcDataOriginEnum(Value v) { @@ -1929,7 +1929,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcDerivedUnitEnum::Class() { /* Ifc4x3_add1::IfcDerivedUnitEnum::IfcDerivedUnitEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcDerivedUnitEnum::IfcDerivedUnitEnum(Value v) { @@ -1958,7 +1958,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcDirectionSenseEnum::Class( /* Ifc4x3_add1::IfcDirectionSenseEnum::IfcDirectionSenseEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcDirectionSenseEnum::IfcDirectionSenseEnum(Value v) { @@ -1987,7 +1987,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcDiscreteAccessoryTypeEnum: /* Ifc4x3_add1::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryTypeEnum(Value v) { @@ -2016,7 +2016,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcDistributionBoardTypeEnum: /* Ifc4x3_add1::IfcDistributionBoardTypeEnum::IfcDistributionBoardTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcDistributionBoardTypeEnum::IfcDistributionBoardTypeEnum(Value v) { @@ -2045,7 +2045,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcDistributionChamberElement /* Ifc4x3_add1::IfcDistributionChamberElementTypeEnum::IfcDistributionChamberElementTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcDistributionChamberElementTypeEnum::IfcDistributionChamberElementTypeEnum(Value v) { @@ -2074,7 +2074,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcDistributionPortTypeEnum:: /* Ifc4x3_add1::IfcDistributionPortTypeEnum::IfcDistributionPortTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcDistributionPortTypeEnum::IfcDistributionPortTypeEnum(Value v) { @@ -2103,7 +2103,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcDistributionSystemEnum::Cl /* Ifc4x3_add1::IfcDistributionSystemEnum::IfcDistributionSystemEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcDistributionSystemEnum::IfcDistributionSystemEnum(Value v) { @@ -2132,7 +2132,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcDocumentConfidentialityEnu /* Ifc4x3_add1::IfcDocumentConfidentialityEnum::IfcDocumentConfidentialityEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcDocumentConfidentialityEnum::IfcDocumentConfidentialityEnum(Value v) { @@ -2161,7 +2161,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcDocumentStatusEnum::Class( /* Ifc4x3_add1::IfcDocumentStatusEnum::IfcDocumentStatusEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcDocumentStatusEnum::IfcDocumentStatusEnum(Value v) { @@ -2190,7 +2190,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcDoorPanelOperationEnum::Cl /* Ifc4x3_add1::IfcDoorPanelOperationEnum::IfcDoorPanelOperationEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcDoorPanelOperationEnum::IfcDoorPanelOperationEnum(Value v) { @@ -2219,7 +2219,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcDoorPanelPositionEnum::Cla /* Ifc4x3_add1::IfcDoorPanelPositionEnum::IfcDoorPanelPositionEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcDoorPanelPositionEnum::IfcDoorPanelPositionEnum(Value v) { @@ -2248,7 +2248,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcDoorTypeEnum::Class() { re /* Ifc4x3_add1::IfcDoorTypeEnum::IfcDoorTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcDoorTypeEnum::IfcDoorTypeEnum(Value v) { @@ -2277,7 +2277,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcDoorTypeOperationEnum::Cla /* Ifc4x3_add1::IfcDoorTypeOperationEnum::IfcDoorTypeOperationEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcDoorTypeOperationEnum::IfcDoorTypeOperationEnum(Value v) { @@ -2306,7 +2306,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcDuctFittingTypeEnum::Class /* Ifc4x3_add1::IfcDuctFittingTypeEnum::IfcDuctFittingTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcDuctFittingTypeEnum::IfcDuctFittingTypeEnum(Value v) { @@ -2335,7 +2335,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcDuctSegmentTypeEnum::Class /* Ifc4x3_add1::IfcDuctSegmentTypeEnum::IfcDuctSegmentTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcDuctSegmentTypeEnum::IfcDuctSegmentTypeEnum(Value v) { @@ -2364,7 +2364,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcDuctSilencerTypeEnum::Clas /* Ifc4x3_add1::IfcDuctSilencerTypeEnum::IfcDuctSilencerTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcDuctSilencerTypeEnum::IfcDuctSilencerTypeEnum(Value v) { @@ -2393,7 +2393,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcEarthworksCutTypeEnum::Cla /* Ifc4x3_add1::IfcEarthworksCutTypeEnum::IfcEarthworksCutTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcEarthworksCutTypeEnum::IfcEarthworksCutTypeEnum(Value v) { @@ -2422,7 +2422,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcEarthworksFillTypeEnum::Cl /* Ifc4x3_add1::IfcEarthworksFillTypeEnum::IfcEarthworksFillTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcEarthworksFillTypeEnum::IfcEarthworksFillTypeEnum(Value v) { @@ -2451,7 +2451,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcElectricApplianceTypeEnum: /* Ifc4x3_add1::IfcElectricApplianceTypeEnum::IfcElectricApplianceTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcElectricApplianceTypeEnum::IfcElectricApplianceTypeEnum(Value v) { @@ -2480,7 +2480,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcElectricDistributionBoardT /* Ifc4x3_add1::IfcElectricDistributionBoardTypeEnum::IfcElectricDistributionBoardTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcElectricDistributionBoardTypeEnum::IfcElectricDistributionBoardTypeEnum(Value v) { @@ -2509,7 +2509,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcElectricFlowStorageDeviceT /* Ifc4x3_add1::IfcElectricFlowStorageDeviceTypeEnum::IfcElectricFlowStorageDeviceTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcElectricFlowStorageDeviceTypeEnum::IfcElectricFlowStorageDeviceTypeEnum(Value v) { @@ -2538,7 +2538,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcElectricFlowTreatmentDevic /* Ifc4x3_add1::IfcElectricFlowTreatmentDeviceTypeEnum::IfcElectricFlowTreatmentDeviceTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcElectricFlowTreatmentDeviceTypeEnum::IfcElectricFlowTreatmentDeviceTypeEnum(Value v) { @@ -2567,7 +2567,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcElectricGeneratorTypeEnum: /* Ifc4x3_add1::IfcElectricGeneratorTypeEnum::IfcElectricGeneratorTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcElectricGeneratorTypeEnum::IfcElectricGeneratorTypeEnum(Value v) { @@ -2596,7 +2596,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcElectricMotorTypeEnum::Cla /* Ifc4x3_add1::IfcElectricMotorTypeEnum::IfcElectricMotorTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcElectricMotorTypeEnum::IfcElectricMotorTypeEnum(Value v) { @@ -2625,7 +2625,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcElectricTimeControlTypeEnu /* Ifc4x3_add1::IfcElectricTimeControlTypeEnum::IfcElectricTimeControlTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcElectricTimeControlTypeEnum::IfcElectricTimeControlTypeEnum(Value v) { @@ -2654,7 +2654,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcElementAssemblyTypeEnum::C /* Ifc4x3_add1::IfcElementAssemblyTypeEnum::IfcElementAssemblyTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcElementAssemblyTypeEnum::IfcElementAssemblyTypeEnum(Value v) { @@ -2683,7 +2683,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcElementCompositionEnum::Cl /* Ifc4x3_add1::IfcElementCompositionEnum::IfcElementCompositionEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcElementCompositionEnum::IfcElementCompositionEnum(Value v) { @@ -2712,7 +2712,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcEngineTypeEnum::Class() { /* Ifc4x3_add1::IfcEngineTypeEnum::IfcEngineTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcEngineTypeEnum::IfcEngineTypeEnum(Value v) { @@ -2741,7 +2741,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcEvaporativeCoolerTypeEnum: /* Ifc4x3_add1::IfcEvaporativeCoolerTypeEnum::IfcEvaporativeCoolerTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcEvaporativeCoolerTypeEnum::IfcEvaporativeCoolerTypeEnum(Value v) { @@ -2770,7 +2770,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcEvaporatorTypeEnum::Class( /* Ifc4x3_add1::IfcEvaporatorTypeEnum::IfcEvaporatorTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcEvaporatorTypeEnum::IfcEvaporatorTypeEnum(Value v) { @@ -2799,7 +2799,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcEventTriggerTypeEnum::Clas /* Ifc4x3_add1::IfcEventTriggerTypeEnum::IfcEventTriggerTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcEventTriggerTypeEnum::IfcEventTriggerTypeEnum(Value v) { @@ -2828,7 +2828,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcEventTypeEnum::Class() { r /* Ifc4x3_add1::IfcEventTypeEnum::IfcEventTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcEventTypeEnum::IfcEventTypeEnum(Value v) { @@ -2857,7 +2857,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcExternalSpatialElementType /* Ifc4x3_add1::IfcExternalSpatialElementTypeEnum::IfcExternalSpatialElementTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcExternalSpatialElementTypeEnum::IfcExternalSpatialElementTypeEnum(Value v) { @@ -2886,7 +2886,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcFacilityPartCommonTypeEnum /* Ifc4x3_add1::IfcFacilityPartCommonTypeEnum::IfcFacilityPartCommonTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcFacilityPartCommonTypeEnum::IfcFacilityPartCommonTypeEnum(Value v) { @@ -2915,7 +2915,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcFacilityUsageEnum::Class() /* Ifc4x3_add1::IfcFacilityUsageEnum::IfcFacilityUsageEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcFacilityUsageEnum::IfcFacilityUsageEnum(Value v) { @@ -2944,7 +2944,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcFanTypeEnum::Class() { ret /* Ifc4x3_add1::IfcFanTypeEnum::IfcFanTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcFanTypeEnum::IfcFanTypeEnum(Value v) { @@ -2973,7 +2973,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcFastenerTypeEnum::Class() /* Ifc4x3_add1::IfcFastenerTypeEnum::IfcFastenerTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcFastenerTypeEnum::IfcFastenerTypeEnum(Value v) { @@ -3002,7 +3002,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcFilterTypeEnum::Class() { /* Ifc4x3_add1::IfcFilterTypeEnum::IfcFilterTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcFilterTypeEnum::IfcFilterTypeEnum(Value v) { @@ -3031,7 +3031,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcFireSuppressionTerminalTyp /* Ifc4x3_add1::IfcFireSuppressionTerminalTypeEnum::IfcFireSuppressionTerminalTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcFireSuppressionTerminalTypeEnum::IfcFireSuppressionTerminalTypeEnum(Value v) { @@ -3060,7 +3060,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcFlowDirectionEnum::Class() /* Ifc4x3_add1::IfcFlowDirectionEnum::IfcFlowDirectionEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcFlowDirectionEnum::IfcFlowDirectionEnum(Value v) { @@ -3089,7 +3089,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcFlowInstrumentTypeEnum::Cl /* Ifc4x3_add1::IfcFlowInstrumentTypeEnum::IfcFlowInstrumentTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcFlowInstrumentTypeEnum::IfcFlowInstrumentTypeEnum(Value v) { @@ -3118,7 +3118,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcFlowMeterTypeEnum::Class() /* Ifc4x3_add1::IfcFlowMeterTypeEnum::IfcFlowMeterTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcFlowMeterTypeEnum::IfcFlowMeterTypeEnum(Value v) { @@ -3147,7 +3147,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcFootingTypeEnum::Class() { /* Ifc4x3_add1::IfcFootingTypeEnum::IfcFootingTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcFootingTypeEnum::IfcFootingTypeEnum(Value v) { @@ -3176,7 +3176,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcFurnitureTypeEnum::Class() /* Ifc4x3_add1::IfcFurnitureTypeEnum::IfcFurnitureTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcFurnitureTypeEnum::IfcFurnitureTypeEnum(Value v) { @@ -3205,7 +3205,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcGeographicElementTypeEnum: /* Ifc4x3_add1::IfcGeographicElementTypeEnum::IfcGeographicElementTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcGeographicElementTypeEnum::IfcGeographicElementTypeEnum(Value v) { @@ -3234,7 +3234,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcGeometricProjectionEnum::C /* Ifc4x3_add1::IfcGeometricProjectionEnum::IfcGeometricProjectionEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcGeometricProjectionEnum::IfcGeometricProjectionEnum(Value v) { @@ -3263,7 +3263,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcGeotechnicalStratumTypeEnu /* Ifc4x3_add1::IfcGeotechnicalStratumTypeEnum::IfcGeotechnicalStratumTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcGeotechnicalStratumTypeEnum::IfcGeotechnicalStratumTypeEnum(Value v) { @@ -3292,7 +3292,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcGlobalOrLocalEnum::Class() /* Ifc4x3_add1::IfcGlobalOrLocalEnum::IfcGlobalOrLocalEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcGlobalOrLocalEnum::IfcGlobalOrLocalEnum(Value v) { @@ -3321,7 +3321,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcGridTypeEnum::Class() { re /* Ifc4x3_add1::IfcGridTypeEnum::IfcGridTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcGridTypeEnum::IfcGridTypeEnum(Value v) { @@ -3350,7 +3350,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcHeatExchangerTypeEnum::Cla /* Ifc4x3_add1::IfcHeatExchangerTypeEnum::IfcHeatExchangerTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcHeatExchangerTypeEnum::IfcHeatExchangerTypeEnum(Value v) { @@ -3379,7 +3379,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcHumidifierTypeEnum::Class( /* Ifc4x3_add1::IfcHumidifierTypeEnum::IfcHumidifierTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcHumidifierTypeEnum::IfcHumidifierTypeEnum(Value v) { @@ -3408,7 +3408,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcImpactProtectionDeviceType /* Ifc4x3_add1::IfcImpactProtectionDeviceTypeEnum::IfcImpactProtectionDeviceTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcImpactProtectionDeviceTypeEnum::IfcImpactProtectionDeviceTypeEnum(Value v) { @@ -3437,7 +3437,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcInterceptorTypeEnum::Class /* Ifc4x3_add1::IfcInterceptorTypeEnum::IfcInterceptorTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcInterceptorTypeEnum::IfcInterceptorTypeEnum(Value v) { @@ -3466,7 +3466,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcInternalOrExternalEnum::Cl /* Ifc4x3_add1::IfcInternalOrExternalEnum::IfcInternalOrExternalEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcInternalOrExternalEnum::IfcInternalOrExternalEnum(Value v) { @@ -3495,7 +3495,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcInventoryTypeEnum::Class() /* Ifc4x3_add1::IfcInventoryTypeEnum::IfcInventoryTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcInventoryTypeEnum::IfcInventoryTypeEnum(Value v) { @@ -3524,7 +3524,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcJunctionBoxTypeEnum::Class /* Ifc4x3_add1::IfcJunctionBoxTypeEnum::IfcJunctionBoxTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcJunctionBoxTypeEnum::IfcJunctionBoxTypeEnum(Value v) { @@ -3553,7 +3553,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcKerbTypeEnum::Class() { re /* Ifc4x3_add1::IfcKerbTypeEnum::IfcKerbTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcKerbTypeEnum::IfcKerbTypeEnum(Value v) { @@ -3582,7 +3582,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcKnotType::Class() { return /* Ifc4x3_add1::IfcKnotType::IfcKnotType(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcKnotType::IfcKnotType(Value v) { @@ -3611,7 +3611,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcLaborResourceTypeEnum::Cla /* Ifc4x3_add1::IfcLaborResourceTypeEnum::IfcLaborResourceTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcLaborResourceTypeEnum::IfcLaborResourceTypeEnum(Value v) { @@ -3640,7 +3640,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcLampTypeEnum::Class() { re /* Ifc4x3_add1::IfcLampTypeEnum::IfcLampTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcLampTypeEnum::IfcLampTypeEnum(Value v) { @@ -3669,7 +3669,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcLayerSetDirectionEnum::Cla /* Ifc4x3_add1::IfcLayerSetDirectionEnum::IfcLayerSetDirectionEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcLayerSetDirectionEnum::IfcLayerSetDirectionEnum(Value v) { @@ -3698,7 +3698,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcLightDistributionCurveEnum /* Ifc4x3_add1::IfcLightDistributionCurveEnum::IfcLightDistributionCurveEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcLightDistributionCurveEnum::IfcLightDistributionCurveEnum(Value v) { @@ -3727,7 +3727,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcLightEmissionSourceEnum::C /* Ifc4x3_add1::IfcLightEmissionSourceEnum::IfcLightEmissionSourceEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcLightEmissionSourceEnum::IfcLightEmissionSourceEnum(Value v) { @@ -3756,7 +3756,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcLightFixtureTypeEnum::Clas /* Ifc4x3_add1::IfcLightFixtureTypeEnum::IfcLightFixtureTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcLightFixtureTypeEnum::IfcLightFixtureTypeEnum(Value v) { @@ -3785,7 +3785,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcLiquidTerminalTypeEnum::Cl /* Ifc4x3_add1::IfcLiquidTerminalTypeEnum::IfcLiquidTerminalTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcLiquidTerminalTypeEnum::IfcLiquidTerminalTypeEnum(Value v) { @@ -3814,7 +3814,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcLoadGroupTypeEnum::Class() /* Ifc4x3_add1::IfcLoadGroupTypeEnum::IfcLoadGroupTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcLoadGroupTypeEnum::IfcLoadGroupTypeEnum(Value v) { @@ -3843,7 +3843,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcLogicalOperatorEnum::Class /* Ifc4x3_add1::IfcLogicalOperatorEnum::IfcLogicalOperatorEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcLogicalOperatorEnum::IfcLogicalOperatorEnum(Value v) { @@ -3872,7 +3872,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcMarineFacilityTypeEnum::Cl /* Ifc4x3_add1::IfcMarineFacilityTypeEnum::IfcMarineFacilityTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcMarineFacilityTypeEnum::IfcMarineFacilityTypeEnum(Value v) { @@ -3901,7 +3901,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcMarinePartTypeEnum::Class( /* Ifc4x3_add1::IfcMarinePartTypeEnum::IfcMarinePartTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcMarinePartTypeEnum::IfcMarinePartTypeEnum(Value v) { @@ -3930,7 +3930,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcMechanicalFastenerTypeEnum /* Ifc4x3_add1::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerTypeEnum(Value v) { @@ -3959,7 +3959,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcMedicalDeviceTypeEnum::Cla /* Ifc4x3_add1::IfcMedicalDeviceTypeEnum::IfcMedicalDeviceTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcMedicalDeviceTypeEnum::IfcMedicalDeviceTypeEnum(Value v) { @@ -3988,7 +3988,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcMemberTypeEnum::Class() { /* Ifc4x3_add1::IfcMemberTypeEnum::IfcMemberTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcMemberTypeEnum::IfcMemberTypeEnum(Value v) { @@ -4017,7 +4017,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcMobileTelecommunicationsAp /* Ifc4x3_add1::IfcMobileTelecommunicationsApplianceTypeEnum::IfcMobileTelecommunicationsApplianceTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcMobileTelecommunicationsApplianceTypeEnum::IfcMobileTelecommunicationsApplianceTypeEnum(Value v) { @@ -4046,7 +4046,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcMooringDeviceTypeEnum::Cla /* Ifc4x3_add1::IfcMooringDeviceTypeEnum::IfcMooringDeviceTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcMooringDeviceTypeEnum::IfcMooringDeviceTypeEnum(Value v) { @@ -4075,7 +4075,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcMotorConnectionTypeEnum::C /* Ifc4x3_add1::IfcMotorConnectionTypeEnum::IfcMotorConnectionTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcMotorConnectionTypeEnum::IfcMotorConnectionTypeEnum(Value v) { @@ -4104,7 +4104,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcNavigationElementTypeEnum: /* Ifc4x3_add1::IfcNavigationElementTypeEnum::IfcNavigationElementTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcNavigationElementTypeEnum::IfcNavigationElementTypeEnum(Value v) { @@ -4133,7 +4133,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcObjectiveEnum::Class() { r /* Ifc4x3_add1::IfcObjectiveEnum::IfcObjectiveEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcObjectiveEnum::IfcObjectiveEnum(Value v) { @@ -4162,7 +4162,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcOccupantTypeEnum::Class() /* Ifc4x3_add1::IfcOccupantTypeEnum::IfcOccupantTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcOccupantTypeEnum::IfcOccupantTypeEnum(Value v) { @@ -4191,7 +4191,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcOpeningElementTypeEnum::Cl /* Ifc4x3_add1::IfcOpeningElementTypeEnum::IfcOpeningElementTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcOpeningElementTypeEnum::IfcOpeningElementTypeEnum(Value v) { @@ -4220,7 +4220,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcOutletTypeEnum::Class() { /* Ifc4x3_add1::IfcOutletTypeEnum::IfcOutletTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcOutletTypeEnum::IfcOutletTypeEnum(Value v) { @@ -4249,7 +4249,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcPavementTypeEnum::Class() /* Ifc4x3_add1::IfcPavementTypeEnum::IfcPavementTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcPavementTypeEnum::IfcPavementTypeEnum(Value v) { @@ -4278,7 +4278,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcPerformanceHistoryTypeEnum /* Ifc4x3_add1::IfcPerformanceHistoryTypeEnum::IfcPerformanceHistoryTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcPerformanceHistoryTypeEnum::IfcPerformanceHistoryTypeEnum(Value v) { @@ -4307,7 +4307,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcPermeableCoveringOperation /* Ifc4x3_add1::IfcPermeableCoveringOperationEnum::IfcPermeableCoveringOperationEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcPermeableCoveringOperationEnum::IfcPermeableCoveringOperationEnum(Value v) { @@ -4336,7 +4336,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcPermitTypeEnum::Class() { /* Ifc4x3_add1::IfcPermitTypeEnum::IfcPermitTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcPermitTypeEnum::IfcPermitTypeEnum(Value v) { @@ -4365,7 +4365,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcPhysicalOrVirtualEnum::Cla /* Ifc4x3_add1::IfcPhysicalOrVirtualEnum::IfcPhysicalOrVirtualEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcPhysicalOrVirtualEnum::IfcPhysicalOrVirtualEnum(Value v) { @@ -4394,7 +4394,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcPileConstructionEnum::Clas /* Ifc4x3_add1::IfcPileConstructionEnum::IfcPileConstructionEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcPileConstructionEnum::IfcPileConstructionEnum(Value v) { @@ -4423,7 +4423,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcPileTypeEnum::Class() { re /* Ifc4x3_add1::IfcPileTypeEnum::IfcPileTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcPileTypeEnum::IfcPileTypeEnum(Value v) { @@ -4452,7 +4452,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcPipeFittingTypeEnum::Class /* Ifc4x3_add1::IfcPipeFittingTypeEnum::IfcPipeFittingTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcPipeFittingTypeEnum::IfcPipeFittingTypeEnum(Value v) { @@ -4481,7 +4481,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcPipeSegmentTypeEnum::Class /* Ifc4x3_add1::IfcPipeSegmentTypeEnum::IfcPipeSegmentTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcPipeSegmentTypeEnum::IfcPipeSegmentTypeEnum(Value v) { @@ -4510,7 +4510,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcPlateTypeEnum::Class() { r /* Ifc4x3_add1::IfcPlateTypeEnum::IfcPlateTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcPlateTypeEnum::IfcPlateTypeEnum(Value v) { @@ -4539,7 +4539,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcPreferredSurfaceCurveRepre /* Ifc4x3_add1::IfcPreferredSurfaceCurveRepresentation::IfcPreferredSurfaceCurveRepresentation(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcPreferredSurfaceCurveRepresentation::IfcPreferredSurfaceCurveRepresentation(Value v) { @@ -4568,7 +4568,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcProcedureTypeEnum::Class() /* Ifc4x3_add1::IfcProcedureTypeEnum::IfcProcedureTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcProcedureTypeEnum::IfcProcedureTypeEnum(Value v) { @@ -4597,7 +4597,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcProfileTypeEnum::Class() { /* Ifc4x3_add1::IfcProfileTypeEnum::IfcProfileTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcProfileTypeEnum::IfcProfileTypeEnum(Value v) { @@ -4626,7 +4626,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcProjectOrderTypeEnum::Clas /* Ifc4x3_add1::IfcProjectOrderTypeEnum::IfcProjectOrderTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcProjectOrderTypeEnum::IfcProjectOrderTypeEnum(Value v) { @@ -4655,7 +4655,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcProjectedOrTrueLengthEnum: /* Ifc4x3_add1::IfcProjectedOrTrueLengthEnum::IfcProjectedOrTrueLengthEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcProjectedOrTrueLengthEnum::IfcProjectedOrTrueLengthEnum(Value v) { @@ -4684,7 +4684,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcProjectionElementTypeEnum: /* Ifc4x3_add1::IfcProjectionElementTypeEnum::IfcProjectionElementTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcProjectionElementTypeEnum::IfcProjectionElementTypeEnum(Value v) { @@ -4713,7 +4713,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcPropertySetTemplateTypeEnu /* Ifc4x3_add1::IfcPropertySetTemplateTypeEnum::IfcPropertySetTemplateTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcPropertySetTemplateTypeEnum::IfcPropertySetTemplateTypeEnum(Value v) { @@ -4742,7 +4742,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcProtectiveDeviceTrippingUn /* Ifc4x3_add1::IfcProtectiveDeviceTrippingUnitTypeEnum::IfcProtectiveDeviceTrippingUnitTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcProtectiveDeviceTrippingUnitTypeEnum::IfcProtectiveDeviceTrippingUnitTypeEnum(Value v) { @@ -4771,7 +4771,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcProtectiveDeviceTypeEnum:: /* Ifc4x3_add1::IfcProtectiveDeviceTypeEnum::IfcProtectiveDeviceTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcProtectiveDeviceTypeEnum::IfcProtectiveDeviceTypeEnum(Value v) { @@ -4800,7 +4800,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcPumpTypeEnum::Class() { re /* Ifc4x3_add1::IfcPumpTypeEnum::IfcPumpTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcPumpTypeEnum::IfcPumpTypeEnum(Value v) { @@ -4829,7 +4829,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcRailTypeEnum::Class() { re /* Ifc4x3_add1::IfcRailTypeEnum::IfcRailTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcRailTypeEnum::IfcRailTypeEnum(Value v) { @@ -4858,7 +4858,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcRailingTypeEnum::Class() { /* Ifc4x3_add1::IfcRailingTypeEnum::IfcRailingTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcRailingTypeEnum::IfcRailingTypeEnum(Value v) { @@ -4887,7 +4887,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcRailwayPartTypeEnum::Class /* Ifc4x3_add1::IfcRailwayPartTypeEnum::IfcRailwayPartTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcRailwayPartTypeEnum::IfcRailwayPartTypeEnum(Value v) { @@ -4916,7 +4916,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcRailwayTypeEnum::Class() { /* Ifc4x3_add1::IfcRailwayTypeEnum::IfcRailwayTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcRailwayTypeEnum::IfcRailwayTypeEnum(Value v) { @@ -4945,7 +4945,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcRampFlightTypeEnum::Class( /* Ifc4x3_add1::IfcRampFlightTypeEnum::IfcRampFlightTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcRampFlightTypeEnum::IfcRampFlightTypeEnum(Value v) { @@ -4974,7 +4974,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcRampTypeEnum::Class() { re /* Ifc4x3_add1::IfcRampTypeEnum::IfcRampTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcRampTypeEnum::IfcRampTypeEnum(Value v) { @@ -5003,7 +5003,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcRecurrenceTypeEnum::Class( /* Ifc4x3_add1::IfcRecurrenceTypeEnum::IfcRecurrenceTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcRecurrenceTypeEnum::IfcRecurrenceTypeEnum(Value v) { @@ -5032,7 +5032,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcReferentTypeEnum::Class() /* Ifc4x3_add1::IfcReferentTypeEnum::IfcReferentTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcReferentTypeEnum::IfcReferentTypeEnum(Value v) { @@ -5061,7 +5061,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcReflectanceMethodEnum::Cla /* Ifc4x3_add1::IfcReflectanceMethodEnum::IfcReflectanceMethodEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcReflectanceMethodEnum::IfcReflectanceMethodEnum(Value v) { @@ -5090,7 +5090,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcReinforcedSoilTypeEnum::Cl /* Ifc4x3_add1::IfcReinforcedSoilTypeEnum::IfcReinforcedSoilTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcReinforcedSoilTypeEnum::IfcReinforcedSoilTypeEnum(Value v) { @@ -5119,7 +5119,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcReinforcingBarRoleEnum::Cl /* Ifc4x3_add1::IfcReinforcingBarRoleEnum::IfcReinforcingBarRoleEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcReinforcingBarRoleEnum::IfcReinforcingBarRoleEnum(Value v) { @@ -5148,7 +5148,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcReinforcingBarSurfaceEnum: /* Ifc4x3_add1::IfcReinforcingBarSurfaceEnum::IfcReinforcingBarSurfaceEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcReinforcingBarSurfaceEnum::IfcReinforcingBarSurfaceEnum(Value v) { @@ -5177,7 +5177,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcReinforcingBarTypeEnum::Cl /* Ifc4x3_add1::IfcReinforcingBarTypeEnum::IfcReinforcingBarTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcReinforcingBarTypeEnum::IfcReinforcingBarTypeEnum(Value v) { @@ -5206,7 +5206,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcReinforcingMeshTypeEnum::C /* Ifc4x3_add1::IfcReinforcingMeshTypeEnum::IfcReinforcingMeshTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcReinforcingMeshTypeEnum::IfcReinforcingMeshTypeEnum(Value v) { @@ -5235,7 +5235,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcRoadPartTypeEnum::Class() /* Ifc4x3_add1::IfcRoadPartTypeEnum::IfcRoadPartTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcRoadPartTypeEnum::IfcRoadPartTypeEnum(Value v) { @@ -5264,7 +5264,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcRoadTypeEnum::Class() { re /* Ifc4x3_add1::IfcRoadTypeEnum::IfcRoadTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcRoadTypeEnum::IfcRoadTypeEnum(Value v) { @@ -5293,7 +5293,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcRoleEnum::Class() { return /* Ifc4x3_add1::IfcRoleEnum::IfcRoleEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcRoleEnum::IfcRoleEnum(Value v) { @@ -5322,7 +5322,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcRoofTypeEnum::Class() { re /* Ifc4x3_add1::IfcRoofTypeEnum::IfcRoofTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcRoofTypeEnum::IfcRoofTypeEnum(Value v) { @@ -5351,7 +5351,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcSIPrefix::Class() { return /* Ifc4x3_add1::IfcSIPrefix::IfcSIPrefix(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcSIPrefix::IfcSIPrefix(Value v) { @@ -5380,7 +5380,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcSIUnitName::Class() { retu /* Ifc4x3_add1::IfcSIUnitName::IfcSIUnitName(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcSIUnitName::IfcSIUnitName(Value v) { @@ -5409,7 +5409,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcSanitaryTerminalTypeEnum:: /* Ifc4x3_add1::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalTypeEnum(Value v) { @@ -5438,7 +5438,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcSectionTypeEnum::Class() { /* Ifc4x3_add1::IfcSectionTypeEnum::IfcSectionTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcSectionTypeEnum::IfcSectionTypeEnum(Value v) { @@ -5467,7 +5467,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcSensorTypeEnum::Class() { /* Ifc4x3_add1::IfcSensorTypeEnum::IfcSensorTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcSensorTypeEnum::IfcSensorTypeEnum(Value v) { @@ -5496,7 +5496,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcSequenceEnum::Class() { re /* Ifc4x3_add1::IfcSequenceEnum::IfcSequenceEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcSequenceEnum::IfcSequenceEnum(Value v) { @@ -5525,7 +5525,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcShadingDeviceTypeEnum::Cla /* Ifc4x3_add1::IfcShadingDeviceTypeEnum::IfcShadingDeviceTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcShadingDeviceTypeEnum::IfcShadingDeviceTypeEnum(Value v) { @@ -5554,7 +5554,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcSignTypeEnum::Class() { re /* Ifc4x3_add1::IfcSignTypeEnum::IfcSignTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcSignTypeEnum::IfcSignTypeEnum(Value v) { @@ -5583,7 +5583,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcSignalTypeEnum::Class() { /* Ifc4x3_add1::IfcSignalTypeEnum::IfcSignalTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcSignalTypeEnum::IfcSignalTypeEnum(Value v) { @@ -5612,7 +5612,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcSimplePropertyTemplateType /* Ifc4x3_add1::IfcSimplePropertyTemplateTypeEnum::IfcSimplePropertyTemplateTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcSimplePropertyTemplateTypeEnum::IfcSimplePropertyTemplateTypeEnum(Value v) { @@ -5641,7 +5641,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcSlabTypeEnum::Class() { re /* Ifc4x3_add1::IfcSlabTypeEnum::IfcSlabTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcSlabTypeEnum::IfcSlabTypeEnum(Value v) { @@ -5670,7 +5670,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcSolarDeviceTypeEnum::Class /* Ifc4x3_add1::IfcSolarDeviceTypeEnum::IfcSolarDeviceTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcSolarDeviceTypeEnum::IfcSolarDeviceTypeEnum(Value v) { @@ -5699,7 +5699,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcSpaceHeaterTypeEnum::Class /* Ifc4x3_add1::IfcSpaceHeaterTypeEnum::IfcSpaceHeaterTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcSpaceHeaterTypeEnum::IfcSpaceHeaterTypeEnum(Value v) { @@ -5728,7 +5728,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcSpaceTypeEnum::Class() { r /* Ifc4x3_add1::IfcSpaceTypeEnum::IfcSpaceTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcSpaceTypeEnum::IfcSpaceTypeEnum(Value v) { @@ -5757,7 +5757,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcSpatialZoneTypeEnum::Class /* Ifc4x3_add1::IfcSpatialZoneTypeEnum::IfcSpatialZoneTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcSpatialZoneTypeEnum::IfcSpatialZoneTypeEnum(Value v) { @@ -5786,7 +5786,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcStackTerminalTypeEnum::Cla /* Ifc4x3_add1::IfcStackTerminalTypeEnum::IfcStackTerminalTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcStackTerminalTypeEnum::IfcStackTerminalTypeEnum(Value v) { @@ -5815,7 +5815,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcStairFlightTypeEnum::Class /* Ifc4x3_add1::IfcStairFlightTypeEnum::IfcStairFlightTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcStairFlightTypeEnum::IfcStairFlightTypeEnum(Value v) { @@ -5844,7 +5844,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcStairTypeEnum::Class() { r /* Ifc4x3_add1::IfcStairTypeEnum::IfcStairTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcStairTypeEnum::IfcStairTypeEnum(Value v) { @@ -5873,7 +5873,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcStateEnum::Class() { retur /* Ifc4x3_add1::IfcStateEnum::IfcStateEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcStateEnum::IfcStateEnum(Value v) { @@ -5902,7 +5902,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcStructuralCurveActivityTyp /* Ifc4x3_add1::IfcStructuralCurveActivityTypeEnum::IfcStructuralCurveActivityTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcStructuralCurveActivityTypeEnum::IfcStructuralCurveActivityTypeEnum(Value v) { @@ -5931,7 +5931,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcStructuralCurveMemberTypeE /* Ifc4x3_add1::IfcStructuralCurveMemberTypeEnum::IfcStructuralCurveMemberTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcStructuralCurveMemberTypeEnum::IfcStructuralCurveMemberTypeEnum(Value v) { @@ -5960,7 +5960,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcStructuralSurfaceActivityT /* Ifc4x3_add1::IfcStructuralSurfaceActivityTypeEnum::IfcStructuralSurfaceActivityTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcStructuralSurfaceActivityTypeEnum::IfcStructuralSurfaceActivityTypeEnum(Value v) { @@ -5989,7 +5989,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcStructuralSurfaceMemberTyp /* Ifc4x3_add1::IfcStructuralSurfaceMemberTypeEnum::IfcStructuralSurfaceMemberTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcStructuralSurfaceMemberTypeEnum::IfcStructuralSurfaceMemberTypeEnum(Value v) { @@ -6018,7 +6018,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcSubContractResourceTypeEnu /* Ifc4x3_add1::IfcSubContractResourceTypeEnum::IfcSubContractResourceTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcSubContractResourceTypeEnum::IfcSubContractResourceTypeEnum(Value v) { @@ -6047,7 +6047,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcSurfaceFeatureTypeEnum::Cl /* Ifc4x3_add1::IfcSurfaceFeatureTypeEnum::IfcSurfaceFeatureTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcSurfaceFeatureTypeEnum::IfcSurfaceFeatureTypeEnum(Value v) { @@ -6076,7 +6076,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcSurfaceSide::Class() { ret /* Ifc4x3_add1::IfcSurfaceSide::IfcSurfaceSide(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcSurfaceSide::IfcSurfaceSide(Value v) { @@ -6105,7 +6105,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcSwitchingDeviceTypeEnum::C /* Ifc4x3_add1::IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceTypeEnum(Value v) { @@ -6134,7 +6134,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcSystemFurnitureElementType /* Ifc4x3_add1::IfcSystemFurnitureElementTypeEnum::IfcSystemFurnitureElementTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcSystemFurnitureElementTypeEnum::IfcSystemFurnitureElementTypeEnum(Value v) { @@ -6163,7 +6163,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcTankTypeEnum::Class() { re /* Ifc4x3_add1::IfcTankTypeEnum::IfcTankTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcTankTypeEnum::IfcTankTypeEnum(Value v) { @@ -6192,7 +6192,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcTaskDurationEnum::Class() /* Ifc4x3_add1::IfcTaskDurationEnum::IfcTaskDurationEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcTaskDurationEnum::IfcTaskDurationEnum(Value v) { @@ -6221,7 +6221,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcTaskTypeEnum::Class() { re /* Ifc4x3_add1::IfcTaskTypeEnum::IfcTaskTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcTaskTypeEnum::IfcTaskTypeEnum(Value v) { @@ -6250,7 +6250,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcTendonAnchorTypeEnum::Clas /* Ifc4x3_add1::IfcTendonAnchorTypeEnum::IfcTendonAnchorTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcTendonAnchorTypeEnum::IfcTendonAnchorTypeEnum(Value v) { @@ -6279,7 +6279,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcTendonConduitTypeEnum::Cla /* Ifc4x3_add1::IfcTendonConduitTypeEnum::IfcTendonConduitTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcTendonConduitTypeEnum::IfcTendonConduitTypeEnum(Value v) { @@ -6308,7 +6308,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcTendonTypeEnum::Class() { /* Ifc4x3_add1::IfcTendonTypeEnum::IfcTendonTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcTendonTypeEnum::IfcTendonTypeEnum(Value v) { @@ -6337,7 +6337,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcTextPath::Class() { return /* Ifc4x3_add1::IfcTextPath::IfcTextPath(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcTextPath::IfcTextPath(Value v) { @@ -6366,7 +6366,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcTimeSeriesDataTypeEnum::Cl /* Ifc4x3_add1::IfcTimeSeriesDataTypeEnum::IfcTimeSeriesDataTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcTimeSeriesDataTypeEnum::IfcTimeSeriesDataTypeEnum(Value v) { @@ -6395,7 +6395,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcTrackElementTypeEnum::Clas /* Ifc4x3_add1::IfcTrackElementTypeEnum::IfcTrackElementTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcTrackElementTypeEnum::IfcTrackElementTypeEnum(Value v) { @@ -6424,7 +6424,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcTransformerTypeEnum::Class /* Ifc4x3_add1::IfcTransformerTypeEnum::IfcTransformerTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcTransformerTypeEnum::IfcTransformerTypeEnum(Value v) { @@ -6453,7 +6453,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcTransitionCode::Class() { /* Ifc4x3_add1::IfcTransitionCode::IfcTransitionCode(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcTransitionCode::IfcTransitionCode(Value v) { @@ -6482,7 +6482,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcTransportElementTypeEnum:: /* Ifc4x3_add1::IfcTransportElementTypeEnum::IfcTransportElementTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcTransportElementTypeEnum::IfcTransportElementTypeEnum(Value v) { @@ -6511,7 +6511,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcTrimmingPreference::Class( /* Ifc4x3_add1::IfcTrimmingPreference::IfcTrimmingPreference(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcTrimmingPreference::IfcTrimmingPreference(Value v) { @@ -6540,7 +6540,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcTubeBundleTypeEnum::Class( /* Ifc4x3_add1::IfcTubeBundleTypeEnum::IfcTubeBundleTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcTubeBundleTypeEnum::IfcTubeBundleTypeEnum(Value v) { @@ -6569,7 +6569,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcUnitEnum::Class() { return /* Ifc4x3_add1::IfcUnitEnum::IfcUnitEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcUnitEnum::IfcUnitEnum(Value v) { @@ -6598,7 +6598,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcUnitaryControlElementTypeE /* Ifc4x3_add1::IfcUnitaryControlElementTypeEnum::IfcUnitaryControlElementTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcUnitaryControlElementTypeEnum::IfcUnitaryControlElementTypeEnum(Value v) { @@ -6627,7 +6627,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcUnitaryEquipmentTypeEnum:: /* Ifc4x3_add1::IfcUnitaryEquipmentTypeEnum::IfcUnitaryEquipmentTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcUnitaryEquipmentTypeEnum::IfcUnitaryEquipmentTypeEnum(Value v) { @@ -6656,7 +6656,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcValveTypeEnum::Class() { r /* Ifc4x3_add1::IfcValveTypeEnum::IfcValveTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcValveTypeEnum::IfcValveTypeEnum(Value v) { @@ -6685,7 +6685,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcVehicleTypeEnum::Class() { /* Ifc4x3_add1::IfcVehicleTypeEnum::IfcVehicleTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcVehicleTypeEnum::IfcVehicleTypeEnum(Value v) { @@ -6714,7 +6714,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcVibrationDamperTypeEnum::C /* Ifc4x3_add1::IfcVibrationDamperTypeEnum::IfcVibrationDamperTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcVibrationDamperTypeEnum::IfcVibrationDamperTypeEnum(Value v) { @@ -6743,7 +6743,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcVibrationIsolatorTypeEnum: /* Ifc4x3_add1::IfcVibrationIsolatorTypeEnum::IfcVibrationIsolatorTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcVibrationIsolatorTypeEnum::IfcVibrationIsolatorTypeEnum(Value v) { @@ -6772,7 +6772,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcVirtualElementTypeEnum::Cl /* Ifc4x3_add1::IfcVirtualElementTypeEnum::IfcVirtualElementTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcVirtualElementTypeEnum::IfcVirtualElementTypeEnum(Value v) { @@ -6801,7 +6801,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcVoidingFeatureTypeEnum::Cl /* Ifc4x3_add1::IfcVoidingFeatureTypeEnum::IfcVoidingFeatureTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcVoidingFeatureTypeEnum::IfcVoidingFeatureTypeEnum(Value v) { @@ -6830,7 +6830,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcWallTypeEnum::Class() { re /* Ifc4x3_add1::IfcWallTypeEnum::IfcWallTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcWallTypeEnum::IfcWallTypeEnum(Value v) { @@ -6859,7 +6859,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcWasteTerminalTypeEnum::Cla /* Ifc4x3_add1::IfcWasteTerminalTypeEnum::IfcWasteTerminalTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcWasteTerminalTypeEnum::IfcWasteTerminalTypeEnum(Value v) { @@ -6888,7 +6888,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcWindowPanelOperationEnum:: /* Ifc4x3_add1::IfcWindowPanelOperationEnum::IfcWindowPanelOperationEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcWindowPanelOperationEnum::IfcWindowPanelOperationEnum(Value v) { @@ -6917,7 +6917,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcWindowPanelPositionEnum::C /* Ifc4x3_add1::IfcWindowPanelPositionEnum::IfcWindowPanelPositionEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcWindowPanelPositionEnum::IfcWindowPanelPositionEnum(Value v) { @@ -6946,7 +6946,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcWindowTypeEnum::Class() { /* Ifc4x3_add1::IfcWindowTypeEnum::IfcWindowTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcWindowTypeEnum::IfcWindowTypeEnum(Value v) { @@ -6975,7 +6975,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcWindowTypePartitioningEnum /* Ifc4x3_add1::IfcWindowTypePartitioningEnum::IfcWindowTypePartitioningEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcWindowTypePartitioningEnum::IfcWindowTypePartitioningEnum(Value v) { @@ -7004,7 +7004,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcWorkCalendarTypeEnum::Clas /* Ifc4x3_add1::IfcWorkCalendarTypeEnum::IfcWorkCalendarTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcWorkCalendarTypeEnum::IfcWorkCalendarTypeEnum(Value v) { @@ -7033,7 +7033,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcWorkPlanTypeEnum::Class() /* Ifc4x3_add1::IfcWorkPlanTypeEnum::IfcWorkPlanTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcWorkPlanTypeEnum::IfcWorkPlanTypeEnum(Value v) { @@ -7062,7 +7062,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_add1::IfcWorkScheduleTypeEnum::Clas /* Ifc4x3_add1::IfcWorkScheduleTypeEnum::IfcWorkScheduleTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_add1::IfcWorkScheduleTypeEnum::IfcWorkScheduleTypeEnum(Value v) { @@ -7656,8 +7656,8 @@ Ifc4x3_add1::IfcPressureMeasure::operator double() const { return get_attribute_ // Function implementations for IfcPropertySetDefinitionSet const ifcopenshell::type_declaration& Ifc4x3_add1::IfcPropertySetDefinitionSet::Class() { return *((ifcopenshell::type_declaration*)IFC4X3_ADD1_types[828]); } -Ifc4x3_add1::IfcPropertySetDefinitionSet Ifc4x3_add1::IfcPropertySetDefinitionSet::initialize(std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > v) { set_attribute_value(0, cast_vector(v));; return *this; } -Ifc4x3_add1::IfcPropertySetDefinitionSet::operator std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition >() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3_add1::IfcPropertySetDefinition>(es); } +Ifc4x3_add1::IfcPropertySetDefinitionSet Ifc4x3_add1::IfcPropertySetDefinitionSet::initialize(std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > v) { set_attribute_value(0, cast_vector(v));; return *this; } +Ifc4x3_add1::IfcPropertySetDefinitionSet::operator std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition >() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3_add1::IfcPropertySetDefinition>(es); } // Function implementations for IfcRadioActivityMeasure const ifcopenshell::type_declaration& Ifc4x3_add1::IfcRadioActivityMeasure::Class() { return *((ifcopenshell::type_declaration*)IFC4X3_ADD1_types[852]); } @@ -7883,7 +7883,7 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcActionRequest::Class() { return *((i Ifc4x3_add1::IfcActionRequest Ifc4x3_add1::IfcActionRequest::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, std::optional< std::string > v6_Identification, std::optional< ::Ifc4x3_add1::IfcActionRequestTypeEnum::Value > v7_PredefinedType, std::optional< std::string > v8_Status, std::optional< std::string > v9_LongDescription) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); } if (v6_Identification) {set_attribute_value(5, (*v6_Identification)); } if (v7_PredefinedType) {set_attribute_value(6, (enumeration_reference(&::Ifc4x3_add1::IfcActionRequestTypeEnum::Class(),(size_t)*v7_PredefinedType))); } if (v8_Status) {set_attribute_value(7, (*v8_Status)); } if (v9_LongDescription) {set_attribute_value(8, (*v9_LongDescription)); }; return *this; } // Function implementations for IfcActor -::Ifc4x3_add1::IfcActorSelect Ifc4x3_add1::IfcActor::TheActor() const { return ((express::Base)(get_attribute_value(5))).as<::Ifc4x3_add1::IfcActorSelect>(); } +::Ifc4x3_add1::IfcActorSelect Ifc4x3_add1::IfcActor::TheActor() const { return ((express::base)(get_attribute_value(5))).as<::Ifc4x3_add1::IfcActorSelect>(); } void Ifc4x3_add1::IfcActor::setTheActor(const ::Ifc4x3_add1::IfcActorSelect& v) { set_attribute_value(5, v);if constexpr (false)unset_attribute_value(5); } std::vector<::Ifc4x3_add1::IfcRelAssignsToActor> Ifc4x3_add1::IfcActor::IsActingUpon() const { return cast_vector(file()->get_inverse(data()->id(), IFC4X3_ADD1_types[901], 6)); } @@ -7918,7 +7918,7 @@ void Ifc4x3_add1::IfcActuatorType::setPredefinedType(const ::Ifc4x3_add1::IfcAct const ifcopenshell::entity& Ifc4x3_add1::IfcActuatorType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[10]); } -Ifc4x3_add1::IfcActuatorType Ifc4x3_add1::IfcActuatorType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcActuatorTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcActuatorTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_add1::IfcActuatorType Ifc4x3_add1::IfcActuatorType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcActuatorTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcActuatorTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcAddress std::optional< ::Ifc4x3_add1::IfcAddressTypeEnum::Value > Ifc4x3_add1::IfcAddress::Purpose() const { if(get_attribute_value(0).isNull()) { return std::nullopt; } return ::Ifc4x3_add1::IfcAddressTypeEnum::FromString(get_attribute_value(0)); } @@ -7941,18 +7941,18 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcAdvancedBrep::Class() { return *((if Ifc4x3_add1::IfcAdvancedBrep Ifc4x3_add1::IfcAdvancedBrep::initialize(::Ifc4x3_add1::IfcClosedShell v1_Outer) { set_attribute_value(0, (v1_Outer));; return *this; } // Function implementations for IfcAdvancedBrepWithVoids -std::vector< ::Ifc4x3_add1::IfcClosedShell > Ifc4x3_add1::IfcAdvancedBrepWithVoids::Voids() const { std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3_add1::IfcClosedShell>(es); } -void Ifc4x3_add1::IfcAdvancedBrepWithVoids::setVoids(const std::vector< ::Ifc4x3_add1::IfcClosedShell >& v) { set_attribute_value(1, cast_vector(v));if constexpr (false)unset_attribute_value(1); } +std::vector< ::Ifc4x3_add1::IfcClosedShell > Ifc4x3_add1::IfcAdvancedBrepWithVoids::Voids() const { std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3_add1::IfcClosedShell>(es); } +void Ifc4x3_add1::IfcAdvancedBrepWithVoids::setVoids(const std::vector< ::Ifc4x3_add1::IfcClosedShell >& v) { set_attribute_value(1, cast_vector(v));if constexpr (false)unset_attribute_value(1); } const ifcopenshell::entity& Ifc4x3_add1::IfcAdvancedBrepWithVoids::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[15]); } -Ifc4x3_add1::IfcAdvancedBrepWithVoids Ifc4x3_add1::IfcAdvancedBrepWithVoids::initialize(::Ifc4x3_add1::IfcClosedShell v1_Outer, std::vector< ::Ifc4x3_add1::IfcClosedShell > v2_Voids) { set_attribute_value(0, (v1_Outer));set_attribute_value(1, cast_vector(v2_Voids));; return *this; } +Ifc4x3_add1::IfcAdvancedBrepWithVoids Ifc4x3_add1::IfcAdvancedBrepWithVoids::initialize(::Ifc4x3_add1::IfcClosedShell v1_Outer, std::vector< ::Ifc4x3_add1::IfcClosedShell > v2_Voids) { set_attribute_value(0, (v1_Outer));set_attribute_value(1, cast_vector(v2_Voids));; return *this; } // Function implementations for IfcAdvancedFace const ifcopenshell::entity& Ifc4x3_add1::IfcAdvancedFace::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[16]); } -Ifc4x3_add1::IfcAdvancedFace Ifc4x3_add1::IfcAdvancedFace::initialize(std::vector< ::Ifc4x3_add1::IfcFaceBound > v1_Bounds, ::Ifc4x3_add1::IfcSurface v2_FaceSurface, bool v3_SameSense) { set_attribute_value(0, cast_vector(v1_Bounds));set_attribute_value(1, (v2_FaceSurface));set_attribute_value(2, (v3_SameSense));; return *this; } +Ifc4x3_add1::IfcAdvancedFace Ifc4x3_add1::IfcAdvancedFace::initialize(std::vector< ::Ifc4x3_add1::IfcFaceBound > v1_Bounds, ::Ifc4x3_add1::IfcSurface v2_FaceSurface, bool v3_SameSense) { set_attribute_value(0, cast_vector(v1_Bounds));set_attribute_value(1, (v2_FaceSurface));set_attribute_value(2, (v3_SameSense));; return *this; } // Function implementations for IfcAirTerminal std::optional< ::Ifc4x3_add1::IfcAirTerminalTypeEnum::Value > Ifc4x3_add1::IfcAirTerminal::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_add1::IfcAirTerminalTypeEnum::FromString(get_attribute_value(8)); } @@ -7976,7 +7976,7 @@ void Ifc4x3_add1::IfcAirTerminalBoxType::setPredefinedType(const ::Ifc4x3_add1:: const ifcopenshell::entity& Ifc4x3_add1::IfcAirTerminalBoxType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[19]); } -Ifc4x3_add1::IfcAirTerminalBoxType Ifc4x3_add1::IfcAirTerminalBoxType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcAirTerminalBoxTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcAirTerminalBoxTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_add1::IfcAirTerminalBoxType Ifc4x3_add1::IfcAirTerminalBoxType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcAirTerminalBoxTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcAirTerminalBoxTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcAirTerminalType ::Ifc4x3_add1::IfcAirTerminalTypeEnum::Value Ifc4x3_add1::IfcAirTerminalType::PredefinedType() const { return ::Ifc4x3_add1::IfcAirTerminalTypeEnum::FromString(get_attribute_value(9)); } @@ -7984,7 +7984,7 @@ void Ifc4x3_add1::IfcAirTerminalType::setPredefinedType(const ::Ifc4x3_add1::Ifc const ifcopenshell::entity& Ifc4x3_add1::IfcAirTerminalType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[21]); } -Ifc4x3_add1::IfcAirTerminalType Ifc4x3_add1::IfcAirTerminalType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcAirTerminalTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcAirTerminalTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_add1::IfcAirTerminalType Ifc4x3_add1::IfcAirTerminalType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcAirTerminalTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcAirTerminalTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcAirToAirHeatRecovery std::optional< ::Ifc4x3_add1::IfcAirToAirHeatRecoveryTypeEnum::Value > Ifc4x3_add1::IfcAirToAirHeatRecovery::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_add1::IfcAirToAirHeatRecoveryTypeEnum::FromString(get_attribute_value(8)); } @@ -8000,7 +8000,7 @@ void Ifc4x3_add1::IfcAirToAirHeatRecoveryType::setPredefinedType(const ::Ifc4x3_ const ifcopenshell::entity& Ifc4x3_add1::IfcAirToAirHeatRecoveryType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[24]); } -Ifc4x3_add1::IfcAirToAirHeatRecoveryType Ifc4x3_add1::IfcAirToAirHeatRecoveryType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcAirToAirHeatRecoveryTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcAirToAirHeatRecoveryTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_add1::IfcAirToAirHeatRecoveryType Ifc4x3_add1::IfcAirToAirHeatRecoveryType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcAirToAirHeatRecoveryTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcAirToAirHeatRecoveryTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcAlarm std::optional< ::Ifc4x3_add1::IfcAlarmTypeEnum::Value > Ifc4x3_add1::IfcAlarm::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_add1::IfcAlarmTypeEnum::FromString(get_attribute_value(8)); } @@ -8016,7 +8016,7 @@ void Ifc4x3_add1::IfcAlarmType::setPredefinedType(const ::Ifc4x3_add1::IfcAlarmT const ifcopenshell::entity& Ifc4x3_add1::IfcAlarmType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[27]); } -Ifc4x3_add1::IfcAlarmType Ifc4x3_add1::IfcAlarmType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcAlarmTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcAlarmTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_add1::IfcAlarmType Ifc4x3_add1::IfcAlarmType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcAlarmTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcAlarmTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcAlignment std::optional< ::Ifc4x3_add1::IfcAlignmentTypeEnum::Value > Ifc4x3_add1::IfcAlignment::PredefinedType() const { if(get_attribute_value(7).isNull()) { return std::nullopt; } return ::Ifc4x3_add1::IfcAlignmentTypeEnum::FromString(get_attribute_value(7)); } @@ -8061,7 +8061,7 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcAlignmentHorizontal::Class() { retur Ifc4x3_add1::IfcAlignmentHorizontal Ifc4x3_add1::IfcAlignmentHorizontal::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, ::Ifc4x3_add1::IfcObjectPlacement v6_ObjectPlacement, ::Ifc4x3_add1::IfcProductRepresentation v7_Representation) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); }set_attribute_value(5, (v6_ObjectPlacement));set_attribute_value(6, (v7_Representation));; return *this; } // Function implementations for IfcAlignmentHorizontalSegment -::Ifc4x3_add1::IfcCartesianPoint Ifc4x3_add1::IfcAlignmentHorizontalSegment::StartPoint() const { return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3_add1::IfcCartesianPoint>(); } +::Ifc4x3_add1::IfcCartesianPoint Ifc4x3_add1::IfcAlignmentHorizontalSegment::StartPoint() const { return ((express::base)(get_attribute_value(2))).as<::Ifc4x3_add1::IfcCartesianPoint>(); } void Ifc4x3_add1::IfcAlignmentHorizontalSegment::setStartPoint(const ::Ifc4x3_add1::IfcCartesianPoint& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } double Ifc4x3_add1::IfcAlignmentHorizontalSegment::StartDirection() const { double v = get_attribute_value(3); return v; } void Ifc4x3_add1::IfcAlignmentHorizontalSegment::setStartDirection(const double& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } @@ -8091,7 +8091,7 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcAlignmentParameterSegment::Class() { Ifc4x3_add1::IfcAlignmentParameterSegment Ifc4x3_add1::IfcAlignmentParameterSegment::initialize(std::optional< std::string > v1_StartTag, std::optional< std::string > v2_EndTag) { if (v1_StartTag) {set_attribute_value(0, (*v1_StartTag)); } if (v2_EndTag) {set_attribute_value(1, (*v2_EndTag)); }; return *this; } // Function implementations for IfcAlignmentSegment -::Ifc4x3_add1::IfcAlignmentParameterSegment Ifc4x3_add1::IfcAlignmentSegment::DesignParameters() const { return ((express::Base)(get_attribute_value(7))).as<::Ifc4x3_add1::IfcAlignmentParameterSegment>(); } +::Ifc4x3_add1::IfcAlignmentParameterSegment Ifc4x3_add1::IfcAlignmentSegment::DesignParameters() const { return ((express::base)(get_attribute_value(7))).as<::Ifc4x3_add1::IfcAlignmentParameterSegment>(); } void Ifc4x3_add1::IfcAlignmentSegment::setDesignParameters(const ::Ifc4x3_add1::IfcAlignmentParameterSegment& v) { set_attribute_value(7, v);if constexpr (false)unset_attribute_value(7); } @@ -8134,17 +8134,17 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcAnnotation::Class() { return *((ifco Ifc4x3_add1::IfcAnnotation Ifc4x3_add1::IfcAnnotation::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, ::Ifc4x3_add1::IfcObjectPlacement v6_ObjectPlacement, ::Ifc4x3_add1::IfcProductRepresentation v7_Representation, std::optional< ::Ifc4x3_add1::IfcAnnotationTypeEnum::Value > v8_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); }set_attribute_value(5, (v6_ObjectPlacement));set_attribute_value(6, (v7_Representation)); if (v8_PredefinedType) {set_attribute_value(7, (enumeration_reference(&::Ifc4x3_add1::IfcAnnotationTypeEnum::Class(),(size_t)*v8_PredefinedType))); }; return *this; } // Function implementations for IfcAnnotationFillArea -::Ifc4x3_add1::IfcCurve Ifc4x3_add1::IfcAnnotationFillArea::OuterBoundary() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcCurve>(); } +::Ifc4x3_add1::IfcCurve Ifc4x3_add1::IfcAnnotationFillArea::OuterBoundary() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcCurve>(); } void Ifc4x3_add1::IfcAnnotationFillArea::setOuterBoundary(const ::Ifc4x3_add1::IfcCurve& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } -std::optional< std::vector< ::Ifc4x3_add1::IfcCurve > > Ifc4x3_add1::IfcAnnotationFillArea::InnerBoundaries() const { if(get_attribute_value(1).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3_add1::IfcCurve>(es); } -void Ifc4x3_add1::IfcAnnotationFillArea::setInnerBoundaries(const std::optional< std::vector< ::Ifc4x3_add1::IfcCurve > >& v) { if (v) {set_attribute_value(1, cast_vector(*v));} else {unset_attribute_value(1);} } +std::optional< std::vector< ::Ifc4x3_add1::IfcCurve > > Ifc4x3_add1::IfcAnnotationFillArea::InnerBoundaries() const { if(get_attribute_value(1).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3_add1::IfcCurve>(es); } +void Ifc4x3_add1::IfcAnnotationFillArea::setInnerBoundaries(const std::optional< std::vector< ::Ifc4x3_add1::IfcCurve > >& v) { if (v) {set_attribute_value(1, cast_vector(*v));} else {unset_attribute_value(1);} } const ifcopenshell::entity& Ifc4x3_add1::IfcAnnotationFillArea::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[47]); } -Ifc4x3_add1::IfcAnnotationFillArea Ifc4x3_add1::IfcAnnotationFillArea::initialize(::Ifc4x3_add1::IfcCurve v1_OuterBoundary, std::optional< std::vector< ::Ifc4x3_add1::IfcCurve > > v2_InnerBoundaries) { set_attribute_value(0, (v1_OuterBoundary)); if (v2_InnerBoundaries) {set_attribute_value(1, cast_vector(*v2_InnerBoundaries)); }; return *this; } +Ifc4x3_add1::IfcAnnotationFillArea Ifc4x3_add1::IfcAnnotationFillArea::initialize(::Ifc4x3_add1::IfcCurve v1_OuterBoundary, std::optional< std::vector< ::Ifc4x3_add1::IfcCurve > > v2_InnerBoundaries) { set_attribute_value(0, (v1_OuterBoundary)); if (v2_InnerBoundaries) {set_attribute_value(1, cast_vector(*v2_InnerBoundaries)); }; return *this; } // Function implementations for IfcApplication -::Ifc4x3_add1::IfcOrganization Ifc4x3_add1::IfcApplication::ApplicationDeveloper() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcOrganization>(); } +::Ifc4x3_add1::IfcOrganization Ifc4x3_add1::IfcApplication::ApplicationDeveloper() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcOrganization>(); } void Ifc4x3_add1::IfcApplication::setApplicationDeveloper(const ::Ifc4x3_add1::IfcOrganization& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } std::string Ifc4x3_add1::IfcApplication::Version() const { std::string v = get_attribute_value(1); return v; } void Ifc4x3_add1::IfcApplication::setVersion(const std::string& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } @@ -8162,9 +8162,9 @@ std::optional< std::string > Ifc4x3_add1::IfcAppliedValue::Name() const { if(get void Ifc4x3_add1::IfcAppliedValue::setName(const std::optional< std::string >& v) { if (v) {set_attribute_value(0, *v);} else {unset_attribute_value(0);} } std::optional< std::string > Ifc4x3_add1::IfcAppliedValue::Description() const { if(get_attribute_value(1).isNull()) { return std::nullopt; } std::string v = get_attribute_value(1); return v; } void Ifc4x3_add1::IfcAppliedValue::setDescription(const std::optional< std::string >& v) { if (v) {set_attribute_value(1, *v);} else {unset_attribute_value(1);} } -::Ifc4x3_add1::IfcAppliedValueSelect Ifc4x3_add1::IfcAppliedValue::AppliedValue() const { if(get_attribute_value(2).isNull()) { return ::Ifc4x3_add1::IfcAppliedValueSelect{}; } return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3_add1::IfcAppliedValueSelect>(); } +::Ifc4x3_add1::IfcAppliedValueSelect Ifc4x3_add1::IfcAppliedValue::AppliedValue() const { if(get_attribute_value(2).isNull()) { return ::Ifc4x3_add1::IfcAppliedValueSelect{}; } return ((express::base)(get_attribute_value(2))).as<::Ifc4x3_add1::IfcAppliedValueSelect>(); } void Ifc4x3_add1::IfcAppliedValue::setAppliedValue(const ::Ifc4x3_add1::IfcAppliedValueSelect& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } -::Ifc4x3_add1::IfcMeasureWithUnit Ifc4x3_add1::IfcAppliedValue::UnitBasis() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3_add1::IfcMeasureWithUnit{}; } return ((express::Base)(get_attribute_value(3))).as<::Ifc4x3_add1::IfcMeasureWithUnit>(); } +::Ifc4x3_add1::IfcMeasureWithUnit Ifc4x3_add1::IfcAppliedValue::UnitBasis() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3_add1::IfcMeasureWithUnit{}; } return ((express::base)(get_attribute_value(3))).as<::Ifc4x3_add1::IfcMeasureWithUnit>(); } void Ifc4x3_add1::IfcAppliedValue::setUnitBasis(const ::Ifc4x3_add1::IfcMeasureWithUnit& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } std::optional< std::string > Ifc4x3_add1::IfcAppliedValue::ApplicableDate() const { if(get_attribute_value(4).isNull()) { return std::nullopt; } std::string v = get_attribute_value(4); return v; } void Ifc4x3_add1::IfcAppliedValue::setApplicableDate(const std::optional< std::string >& v) { if (v) {set_attribute_value(4, *v);} else {unset_attribute_value(4);} } @@ -8176,13 +8176,13 @@ std::optional< std::string > Ifc4x3_add1::IfcAppliedValue::Condition() const { i void Ifc4x3_add1::IfcAppliedValue::setCondition(const std::optional< std::string >& v) { if (v) {set_attribute_value(7, *v);} else {unset_attribute_value(7);} } std::optional< ::Ifc4x3_add1::IfcArithmeticOperatorEnum::Value > Ifc4x3_add1::IfcAppliedValue::ArithmeticOperator() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_add1::IfcArithmeticOperatorEnum::FromString(get_attribute_value(8)); } void Ifc4x3_add1::IfcAppliedValue::setArithmeticOperator(const std::optional< ::Ifc4x3_add1::IfcArithmeticOperatorEnum::Value >& v) { if (v) {set_attribute_value(8, enumeration_reference(&::Ifc4x3_add1::IfcArithmeticOperatorEnum::Class(), (size_t) *v));} else {unset_attribute_value(8);} } -std::optional< std::vector< ::Ifc4x3_add1::IfcAppliedValue > > Ifc4x3_add1::IfcAppliedValue::Components() const { if(get_attribute_value(9).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(9); return cast_vector<::Ifc4x3_add1::IfcAppliedValue>(es); } -void Ifc4x3_add1::IfcAppliedValue::setComponents(const std::optional< std::vector< ::Ifc4x3_add1::IfcAppliedValue > >& v) { if (v) {set_attribute_value(9, cast_vector(*v));} else {unset_attribute_value(9);} } +std::optional< std::vector< ::Ifc4x3_add1::IfcAppliedValue > > Ifc4x3_add1::IfcAppliedValue::Components() const { if(get_attribute_value(9).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(9); return cast_vector<::Ifc4x3_add1::IfcAppliedValue>(es); } +void Ifc4x3_add1::IfcAppliedValue::setComponents(const std::optional< std::vector< ::Ifc4x3_add1::IfcAppliedValue > >& v) { if (v) {set_attribute_value(9, cast_vector(*v));} else {unset_attribute_value(9);} } std::vector<::Ifc4x3_add1::IfcExternalReferenceRelationship> Ifc4x3_add1::IfcAppliedValue::HasExternalReference() const { return cast_vector(file()->get_inverse(data()->id(), IFC4X3_ADD1_types[427], 3)); } const ifcopenshell::entity& Ifc4x3_add1::IfcAppliedValue::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[50]); } -Ifc4x3_add1::IfcAppliedValue Ifc4x3_add1::IfcAppliedValue::initialize(std::optional< std::string > v1_Name, std::optional< std::string > v2_Description, ::Ifc4x3_add1::IfcAppliedValueSelect v3_AppliedValue, ::Ifc4x3_add1::IfcMeasureWithUnit v4_UnitBasis, std::optional< std::string > v5_ApplicableDate, std::optional< std::string > v6_FixedUntilDate, std::optional< std::string > v7_Category, std::optional< std::string > v8_Condition, std::optional< ::Ifc4x3_add1::IfcArithmeticOperatorEnum::Value > v9_ArithmeticOperator, std::optional< std::vector< ::Ifc4x3_add1::IfcAppliedValue > > v10_Components) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); } if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, (v3_AppliedValue));set_attribute_value(3, (v4_UnitBasis)); if (v5_ApplicableDate) {set_attribute_value(4, (*v5_ApplicableDate)); } if (v6_FixedUntilDate) {set_attribute_value(5, (*v6_FixedUntilDate)); } if (v7_Category) {set_attribute_value(6, (*v7_Category)); } if (v8_Condition) {set_attribute_value(7, (*v8_Condition)); } if (v9_ArithmeticOperator) {set_attribute_value(8, (enumeration_reference(&::Ifc4x3_add1::IfcArithmeticOperatorEnum::Class(),(size_t)*v9_ArithmeticOperator))); } if (v10_Components) {set_attribute_value(9, cast_vector(*v10_Components)); }; return *this; } +Ifc4x3_add1::IfcAppliedValue Ifc4x3_add1::IfcAppliedValue::initialize(std::optional< std::string > v1_Name, std::optional< std::string > v2_Description, ::Ifc4x3_add1::IfcAppliedValueSelect v3_AppliedValue, ::Ifc4x3_add1::IfcMeasureWithUnit v4_UnitBasis, std::optional< std::string > v5_ApplicableDate, std::optional< std::string > v6_FixedUntilDate, std::optional< std::string > v7_Category, std::optional< std::string > v8_Condition, std::optional< ::Ifc4x3_add1::IfcArithmeticOperatorEnum::Value > v9_ArithmeticOperator, std::optional< std::vector< ::Ifc4x3_add1::IfcAppliedValue > > v10_Components) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); } if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, (v3_AppliedValue));set_attribute_value(3, (v4_UnitBasis)); if (v5_ApplicableDate) {set_attribute_value(4, (*v5_ApplicableDate)); } if (v6_FixedUntilDate) {set_attribute_value(5, (*v6_FixedUntilDate)); } if (v7_Category) {set_attribute_value(6, (*v7_Category)); } if (v8_Condition) {set_attribute_value(7, (*v8_Condition)); } if (v9_ArithmeticOperator) {set_attribute_value(8, (enumeration_reference(&::Ifc4x3_add1::IfcArithmeticOperatorEnum::Class(),(size_t)*v9_ArithmeticOperator))); } if (v10_Components) {set_attribute_value(9, cast_vector(*v10_Components)); }; return *this; } // Function implementations for IfcApproval std::optional< std::string > Ifc4x3_add1::IfcApproval::Identifier() const { if(get_attribute_value(0).isNull()) { return std::nullopt; } std::string v = get_attribute_value(0); return v; } @@ -8199,9 +8199,9 @@ std::optional< std::string > Ifc4x3_add1::IfcApproval::Level() const { if(get_at void Ifc4x3_add1::IfcApproval::setLevel(const std::optional< std::string >& v) { if (v) {set_attribute_value(5, *v);} else {unset_attribute_value(5);} } std::optional< std::string > Ifc4x3_add1::IfcApproval::Qualifier() const { if(get_attribute_value(6).isNull()) { return std::nullopt; } std::string v = get_attribute_value(6); return v; } void Ifc4x3_add1::IfcApproval::setQualifier(const std::optional< std::string >& v) { if (v) {set_attribute_value(6, *v);} else {unset_attribute_value(6);} } -::Ifc4x3_add1::IfcActorSelect Ifc4x3_add1::IfcApproval::RequestingApproval() const { if(get_attribute_value(7).isNull()) { return ::Ifc4x3_add1::IfcActorSelect{}; } return ((express::Base)(get_attribute_value(7))).as<::Ifc4x3_add1::IfcActorSelect>(); } +::Ifc4x3_add1::IfcActorSelect Ifc4x3_add1::IfcApproval::RequestingApproval() const { if(get_attribute_value(7).isNull()) { return ::Ifc4x3_add1::IfcActorSelect{}; } return ((express::base)(get_attribute_value(7))).as<::Ifc4x3_add1::IfcActorSelect>(); } void Ifc4x3_add1::IfcApproval::setRequestingApproval(const ::Ifc4x3_add1::IfcActorSelect& v) { set_attribute_value(7, v);if constexpr (false)unset_attribute_value(7); } -::Ifc4x3_add1::IfcActorSelect Ifc4x3_add1::IfcApproval::GivingApproval() const { if(get_attribute_value(8).isNull()) { return ::Ifc4x3_add1::IfcActorSelect{}; } return ((express::Base)(get_attribute_value(8))).as<::Ifc4x3_add1::IfcActorSelect>(); } +::Ifc4x3_add1::IfcActorSelect Ifc4x3_add1::IfcApproval::GivingApproval() const { if(get_attribute_value(8).isNull()) { return ::Ifc4x3_add1::IfcActorSelect{}; } return ((express::base)(get_attribute_value(8))).as<::Ifc4x3_add1::IfcActorSelect>(); } void Ifc4x3_add1::IfcApproval::setGivingApproval(const ::Ifc4x3_add1::IfcActorSelect& v) { set_attribute_value(8, v);if constexpr (false)unset_attribute_value(8); } std::vector<::Ifc4x3_add1::IfcExternalReferenceRelationship> Ifc4x3_add1::IfcApproval::HasExternalReferences() const { return cast_vector(file()->get_inverse(data()->id(), IFC4X3_ADD1_types[427], 3)); } @@ -8214,17 +8214,17 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcApproval::Class() { return *((ifcope Ifc4x3_add1::IfcApproval Ifc4x3_add1::IfcApproval::initialize(std::optional< std::string > v1_Identifier, std::optional< std::string > v2_Name, std::optional< std::string > v3_Description, std::optional< std::string > v4_TimeOfApproval, std::optional< std::string > v5_Status, std::optional< std::string > v6_Level, std::optional< std::string > v7_Qualifier, ::Ifc4x3_add1::IfcActorSelect v8_RequestingApproval, ::Ifc4x3_add1::IfcActorSelect v9_GivingApproval) { if (v1_Identifier) {set_attribute_value(0, (*v1_Identifier)); } if (v2_Name) {set_attribute_value(1, (*v2_Name)); } if (v3_Description) {set_attribute_value(2, (*v3_Description)); } if (v4_TimeOfApproval) {set_attribute_value(3, (*v4_TimeOfApproval)); } if (v5_Status) {set_attribute_value(4, (*v5_Status)); } if (v6_Level) {set_attribute_value(5, (*v6_Level)); } if (v7_Qualifier) {set_attribute_value(6, (*v7_Qualifier)); }set_attribute_value(7, (v8_RequestingApproval));set_attribute_value(8, (v9_GivingApproval));; return *this; } // Function implementations for IfcApprovalRelationship -::Ifc4x3_add1::IfcApproval Ifc4x3_add1::IfcApprovalRelationship::RelatingApproval() const { return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3_add1::IfcApproval>(); } +::Ifc4x3_add1::IfcApproval Ifc4x3_add1::IfcApprovalRelationship::RelatingApproval() const { return ((express::base)(get_attribute_value(2))).as<::Ifc4x3_add1::IfcApproval>(); } void Ifc4x3_add1::IfcApprovalRelationship::setRelatingApproval(const ::Ifc4x3_add1::IfcApproval& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } -std::vector< ::Ifc4x3_add1::IfcApproval > Ifc4x3_add1::IfcApprovalRelationship::RelatedApprovals() const { std::vector es = get_attribute_value(3); return cast_vector<::Ifc4x3_add1::IfcApproval>(es); } -void Ifc4x3_add1::IfcApprovalRelationship::setRelatedApprovals(const std::vector< ::Ifc4x3_add1::IfcApproval >& v) { set_attribute_value(3, cast_vector(v));if constexpr (false)unset_attribute_value(3); } +std::vector< ::Ifc4x3_add1::IfcApproval > Ifc4x3_add1::IfcApprovalRelationship::RelatedApprovals() const { std::vector es = get_attribute_value(3); return cast_vector<::Ifc4x3_add1::IfcApproval>(es); } +void Ifc4x3_add1::IfcApprovalRelationship::setRelatedApprovals(const std::vector< ::Ifc4x3_add1::IfcApproval >& v) { set_attribute_value(3, cast_vector(v));if constexpr (false)unset_attribute_value(3); } const ifcopenshell::entity& Ifc4x3_add1::IfcApprovalRelationship::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[53]); } -Ifc4x3_add1::IfcApprovalRelationship Ifc4x3_add1::IfcApprovalRelationship::initialize(std::optional< std::string > v1_Name, std::optional< std::string > v2_Description, ::Ifc4x3_add1::IfcApproval v3_RelatingApproval, std::vector< ::Ifc4x3_add1::IfcApproval > v4_RelatedApprovals) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); } if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, (v3_RelatingApproval));set_attribute_value(3, cast_vector(v4_RelatedApprovals));; return *this; } +Ifc4x3_add1::IfcApprovalRelationship Ifc4x3_add1::IfcApprovalRelationship::initialize(std::optional< std::string > v1_Name, std::optional< std::string > v2_Description, ::Ifc4x3_add1::IfcApproval v3_RelatingApproval, std::vector< ::Ifc4x3_add1::IfcApproval > v4_RelatedApprovals) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); } if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, (v3_RelatingApproval));set_attribute_value(3, cast_vector(v4_RelatedApprovals));; return *this; } // Function implementations for IfcArbitraryClosedProfileDef -::Ifc4x3_add1::IfcCurve Ifc4x3_add1::IfcArbitraryClosedProfileDef::OuterCurve() const { return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3_add1::IfcCurve>(); } +::Ifc4x3_add1::IfcCurve Ifc4x3_add1::IfcArbitraryClosedProfileDef::OuterCurve() const { return ((express::base)(get_attribute_value(2))).as<::Ifc4x3_add1::IfcCurve>(); } void Ifc4x3_add1::IfcArbitraryClosedProfileDef::setOuterCurve(const ::Ifc4x3_add1::IfcCurve& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } @@ -8232,7 +8232,7 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcArbitraryClosedProfileDef::Class() { Ifc4x3_add1::IfcArbitraryClosedProfileDef Ifc4x3_add1::IfcArbitraryClosedProfileDef::initialize(::Ifc4x3_add1::IfcProfileTypeEnum::Value v1_ProfileType, std::optional< std::string > v2_ProfileName, ::Ifc4x3_add1::IfcCurve v3_OuterCurve) { set_attribute_value(0, (enumeration_reference(&::Ifc4x3_add1::IfcProfileTypeEnum::Class(),(size_t)v1_ProfileType))); if (v2_ProfileName) {set_attribute_value(1, (*v2_ProfileName)); }set_attribute_value(2, (v3_OuterCurve));; return *this; } // Function implementations for IfcArbitraryOpenProfileDef -::Ifc4x3_add1::IfcBoundedCurve Ifc4x3_add1::IfcArbitraryOpenProfileDef::Curve() const { return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3_add1::IfcBoundedCurve>(); } +::Ifc4x3_add1::IfcBoundedCurve Ifc4x3_add1::IfcArbitraryOpenProfileDef::Curve() const { return ((express::base)(get_attribute_value(2))).as<::Ifc4x3_add1::IfcBoundedCurve>(); } void Ifc4x3_add1::IfcArbitraryOpenProfileDef::setCurve(const ::Ifc4x3_add1::IfcBoundedCurve& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } @@ -8240,31 +8240,31 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcArbitraryOpenProfileDef::Class() { r Ifc4x3_add1::IfcArbitraryOpenProfileDef Ifc4x3_add1::IfcArbitraryOpenProfileDef::initialize(::Ifc4x3_add1::IfcProfileTypeEnum::Value v1_ProfileType, std::optional< std::string > v2_ProfileName, ::Ifc4x3_add1::IfcBoundedCurve v3_Curve) { set_attribute_value(0, (enumeration_reference(&::Ifc4x3_add1::IfcProfileTypeEnum::Class(),(size_t)v1_ProfileType))); if (v2_ProfileName) {set_attribute_value(1, (*v2_ProfileName)); }set_attribute_value(2, (v3_Curve));; return *this; } // Function implementations for IfcArbitraryProfileDefWithVoids -std::vector< ::Ifc4x3_add1::IfcCurve > Ifc4x3_add1::IfcArbitraryProfileDefWithVoids::InnerCurves() const { std::vector es = get_attribute_value(3); return cast_vector<::Ifc4x3_add1::IfcCurve>(es); } -void Ifc4x3_add1::IfcArbitraryProfileDefWithVoids::setInnerCurves(const std::vector< ::Ifc4x3_add1::IfcCurve >& v) { set_attribute_value(3, cast_vector(v));if constexpr (false)unset_attribute_value(3); } +std::vector< ::Ifc4x3_add1::IfcCurve > Ifc4x3_add1::IfcArbitraryProfileDefWithVoids::InnerCurves() const { std::vector es = get_attribute_value(3); return cast_vector<::Ifc4x3_add1::IfcCurve>(es); } +void Ifc4x3_add1::IfcArbitraryProfileDefWithVoids::setInnerCurves(const std::vector< ::Ifc4x3_add1::IfcCurve >& v) { set_attribute_value(3, cast_vector(v));if constexpr (false)unset_attribute_value(3); } const ifcopenshell::entity& Ifc4x3_add1::IfcArbitraryProfileDefWithVoids::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[56]); } -Ifc4x3_add1::IfcArbitraryProfileDefWithVoids Ifc4x3_add1::IfcArbitraryProfileDefWithVoids::initialize(::Ifc4x3_add1::IfcProfileTypeEnum::Value v1_ProfileType, std::optional< std::string > v2_ProfileName, ::Ifc4x3_add1::IfcCurve v3_OuterCurve, std::vector< ::Ifc4x3_add1::IfcCurve > v4_InnerCurves) { set_attribute_value(0, (enumeration_reference(&::Ifc4x3_add1::IfcProfileTypeEnum::Class(),(size_t)v1_ProfileType))); if (v2_ProfileName) {set_attribute_value(1, (*v2_ProfileName)); }set_attribute_value(2, (v3_OuterCurve));set_attribute_value(3, cast_vector(v4_InnerCurves));; return *this; } +Ifc4x3_add1::IfcArbitraryProfileDefWithVoids Ifc4x3_add1::IfcArbitraryProfileDefWithVoids::initialize(::Ifc4x3_add1::IfcProfileTypeEnum::Value v1_ProfileType, std::optional< std::string > v2_ProfileName, ::Ifc4x3_add1::IfcCurve v3_OuterCurve, std::vector< ::Ifc4x3_add1::IfcCurve > v4_InnerCurves) { set_attribute_value(0, (enumeration_reference(&::Ifc4x3_add1::IfcProfileTypeEnum::Class(),(size_t)v1_ProfileType))); if (v2_ProfileName) {set_attribute_value(1, (*v2_ProfileName)); }set_attribute_value(2, (v3_OuterCurve));set_attribute_value(3, cast_vector(v4_InnerCurves));; return *this; } // Function implementations for IfcAsset std::optional< std::string > Ifc4x3_add1::IfcAsset::Identification() const { if(get_attribute_value(5).isNull()) { return std::nullopt; } std::string v = get_attribute_value(5); return v; } void Ifc4x3_add1::IfcAsset::setIdentification(const std::optional< std::string >& v) { if (v) {set_attribute_value(5, *v);} else {unset_attribute_value(5);} } -::Ifc4x3_add1::IfcCostValue Ifc4x3_add1::IfcAsset::OriginalValue() const { if(get_attribute_value(6).isNull()) { return ::Ifc4x3_add1::IfcCostValue{}; } return ((express::Base)(get_attribute_value(6))).as<::Ifc4x3_add1::IfcCostValue>(); } +::Ifc4x3_add1::IfcCostValue Ifc4x3_add1::IfcAsset::OriginalValue() const { if(get_attribute_value(6).isNull()) { return ::Ifc4x3_add1::IfcCostValue{}; } return ((express::base)(get_attribute_value(6))).as<::Ifc4x3_add1::IfcCostValue>(); } void Ifc4x3_add1::IfcAsset::setOriginalValue(const ::Ifc4x3_add1::IfcCostValue& v) { set_attribute_value(6, v);if constexpr (false)unset_attribute_value(6); } -::Ifc4x3_add1::IfcCostValue Ifc4x3_add1::IfcAsset::CurrentValue() const { if(get_attribute_value(7).isNull()) { return ::Ifc4x3_add1::IfcCostValue{}; } return ((express::Base)(get_attribute_value(7))).as<::Ifc4x3_add1::IfcCostValue>(); } +::Ifc4x3_add1::IfcCostValue Ifc4x3_add1::IfcAsset::CurrentValue() const { if(get_attribute_value(7).isNull()) { return ::Ifc4x3_add1::IfcCostValue{}; } return ((express::base)(get_attribute_value(7))).as<::Ifc4x3_add1::IfcCostValue>(); } void Ifc4x3_add1::IfcAsset::setCurrentValue(const ::Ifc4x3_add1::IfcCostValue& v) { set_attribute_value(7, v);if constexpr (false)unset_attribute_value(7); } -::Ifc4x3_add1::IfcCostValue Ifc4x3_add1::IfcAsset::TotalReplacementCost() const { if(get_attribute_value(8).isNull()) { return ::Ifc4x3_add1::IfcCostValue{}; } return ((express::Base)(get_attribute_value(8))).as<::Ifc4x3_add1::IfcCostValue>(); } +::Ifc4x3_add1::IfcCostValue Ifc4x3_add1::IfcAsset::TotalReplacementCost() const { if(get_attribute_value(8).isNull()) { return ::Ifc4x3_add1::IfcCostValue{}; } return ((express::base)(get_attribute_value(8))).as<::Ifc4x3_add1::IfcCostValue>(); } void Ifc4x3_add1::IfcAsset::setTotalReplacementCost(const ::Ifc4x3_add1::IfcCostValue& v) { set_attribute_value(8, v);if constexpr (false)unset_attribute_value(8); } -::Ifc4x3_add1::IfcActorSelect Ifc4x3_add1::IfcAsset::Owner() const { if(get_attribute_value(9).isNull()) { return ::Ifc4x3_add1::IfcActorSelect{}; } return ((express::Base)(get_attribute_value(9))).as<::Ifc4x3_add1::IfcActorSelect>(); } +::Ifc4x3_add1::IfcActorSelect Ifc4x3_add1::IfcAsset::Owner() const { if(get_attribute_value(9).isNull()) { return ::Ifc4x3_add1::IfcActorSelect{}; } return ((express::base)(get_attribute_value(9))).as<::Ifc4x3_add1::IfcActorSelect>(); } void Ifc4x3_add1::IfcAsset::setOwner(const ::Ifc4x3_add1::IfcActorSelect& v) { set_attribute_value(9, v);if constexpr (false)unset_attribute_value(9); } -::Ifc4x3_add1::IfcActorSelect Ifc4x3_add1::IfcAsset::User() const { if(get_attribute_value(10).isNull()) { return ::Ifc4x3_add1::IfcActorSelect{}; } return ((express::Base)(get_attribute_value(10))).as<::Ifc4x3_add1::IfcActorSelect>(); } +::Ifc4x3_add1::IfcActorSelect Ifc4x3_add1::IfcAsset::User() const { if(get_attribute_value(10).isNull()) { return ::Ifc4x3_add1::IfcActorSelect{}; } return ((express::base)(get_attribute_value(10))).as<::Ifc4x3_add1::IfcActorSelect>(); } void Ifc4x3_add1::IfcAsset::setUser(const ::Ifc4x3_add1::IfcActorSelect& v) { set_attribute_value(10, v);if constexpr (false)unset_attribute_value(10); } -::Ifc4x3_add1::IfcPerson Ifc4x3_add1::IfcAsset::ResponsiblePerson() const { if(get_attribute_value(11).isNull()) { return ::Ifc4x3_add1::IfcPerson{}; } return ((express::Base)(get_attribute_value(11))).as<::Ifc4x3_add1::IfcPerson>(); } +::Ifc4x3_add1::IfcPerson Ifc4x3_add1::IfcAsset::ResponsiblePerson() const { if(get_attribute_value(11).isNull()) { return ::Ifc4x3_add1::IfcPerson{}; } return ((express::base)(get_attribute_value(11))).as<::Ifc4x3_add1::IfcPerson>(); } void Ifc4x3_add1::IfcAsset::setResponsiblePerson(const ::Ifc4x3_add1::IfcPerson& v) { set_attribute_value(11, v);if constexpr (false)unset_attribute_value(11); } std::optional< std::string > Ifc4x3_add1::IfcAsset::IncorporationDate() const { if(get_attribute_value(12).isNull()) { return std::nullopt; } std::string v = get_attribute_value(12); return v; } void Ifc4x3_add1::IfcAsset::setIncorporationDate(const std::optional< std::string >& v) { if (v) {set_attribute_value(12, *v);} else {unset_attribute_value(12);} } -::Ifc4x3_add1::IfcCostValue Ifc4x3_add1::IfcAsset::DepreciatedValue() const { if(get_attribute_value(13).isNull()) { return ::Ifc4x3_add1::IfcCostValue{}; } return ((express::Base)(get_attribute_value(13))).as<::Ifc4x3_add1::IfcCostValue>(); } +::Ifc4x3_add1::IfcCostValue Ifc4x3_add1::IfcAsset::DepreciatedValue() const { if(get_attribute_value(13).isNull()) { return ::Ifc4x3_add1::IfcCostValue{}; } return ((express::base)(get_attribute_value(13))).as<::Ifc4x3_add1::IfcCostValue>(); } void Ifc4x3_add1::IfcAsset::setDepreciatedValue(const ::Ifc4x3_add1::IfcCostValue& v) { set_attribute_value(13, v);if constexpr (false)unset_attribute_value(13); } @@ -8315,10 +8315,10 @@ void Ifc4x3_add1::IfcAudioVisualApplianceType::setPredefinedType(const ::Ifc4x3_ const ifcopenshell::entity& Ifc4x3_add1::IfcAudioVisualApplianceType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[65]); } -Ifc4x3_add1::IfcAudioVisualApplianceType Ifc4x3_add1::IfcAudioVisualApplianceType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcAudioVisualApplianceTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcAudioVisualApplianceTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_add1::IfcAudioVisualApplianceType Ifc4x3_add1::IfcAudioVisualApplianceType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcAudioVisualApplianceTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcAudioVisualApplianceTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcAxis1Placement -::Ifc4x3_add1::IfcDirection Ifc4x3_add1::IfcAxis1Placement::Axis() const { if(get_attribute_value(1).isNull()) { return ::Ifc4x3_add1::IfcDirection{}; } return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3_add1::IfcDirection>(); } +::Ifc4x3_add1::IfcDirection Ifc4x3_add1::IfcAxis1Placement::Axis() const { if(get_attribute_value(1).isNull()) { return ::Ifc4x3_add1::IfcDirection{}; } return ((express::base)(get_attribute_value(1))).as<::Ifc4x3_add1::IfcDirection>(); } void Ifc4x3_add1::IfcAxis1Placement::setAxis(const ::Ifc4x3_add1::IfcDirection& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } @@ -8326,7 +8326,7 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcAxis1Placement::Class() { return *(( Ifc4x3_add1::IfcAxis1Placement Ifc4x3_add1::IfcAxis1Placement::initialize(::Ifc4x3_add1::IfcPoint v1_Location, ::Ifc4x3_add1::IfcDirection v2_Axis) { set_attribute_value(0, (v1_Location));set_attribute_value(1, (v2_Axis));; return *this; } // Function implementations for IfcAxis2Placement2D -::Ifc4x3_add1::IfcDirection Ifc4x3_add1::IfcAxis2Placement2D::RefDirection() const { if(get_attribute_value(1).isNull()) { return ::Ifc4x3_add1::IfcDirection{}; } return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3_add1::IfcDirection>(); } +::Ifc4x3_add1::IfcDirection Ifc4x3_add1::IfcAxis2Placement2D::RefDirection() const { if(get_attribute_value(1).isNull()) { return ::Ifc4x3_add1::IfcDirection{}; } return ((express::base)(get_attribute_value(1))).as<::Ifc4x3_add1::IfcDirection>(); } void Ifc4x3_add1::IfcAxis2Placement2D::setRefDirection(const ::Ifc4x3_add1::IfcDirection& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } @@ -8334,9 +8334,9 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcAxis2Placement2D::Class() { return * Ifc4x3_add1::IfcAxis2Placement2D Ifc4x3_add1::IfcAxis2Placement2D::initialize(::Ifc4x3_add1::IfcPoint v1_Location, ::Ifc4x3_add1::IfcDirection v2_RefDirection) { set_attribute_value(0, (v1_Location));set_attribute_value(1, (v2_RefDirection));; return *this; } // Function implementations for IfcAxis2Placement3D -::Ifc4x3_add1::IfcDirection Ifc4x3_add1::IfcAxis2Placement3D::Axis() const { if(get_attribute_value(1).isNull()) { return ::Ifc4x3_add1::IfcDirection{}; } return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3_add1::IfcDirection>(); } +::Ifc4x3_add1::IfcDirection Ifc4x3_add1::IfcAxis2Placement3D::Axis() const { if(get_attribute_value(1).isNull()) { return ::Ifc4x3_add1::IfcDirection{}; } return ((express::base)(get_attribute_value(1))).as<::Ifc4x3_add1::IfcDirection>(); } void Ifc4x3_add1::IfcAxis2Placement3D::setAxis(const ::Ifc4x3_add1::IfcDirection& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } -::Ifc4x3_add1::IfcDirection Ifc4x3_add1::IfcAxis2Placement3D::RefDirection() const { if(get_attribute_value(2).isNull()) { return ::Ifc4x3_add1::IfcDirection{}; } return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3_add1::IfcDirection>(); } +::Ifc4x3_add1::IfcDirection Ifc4x3_add1::IfcAxis2Placement3D::RefDirection() const { if(get_attribute_value(2).isNull()) { return ::Ifc4x3_add1::IfcDirection{}; } return ((express::base)(get_attribute_value(2))).as<::Ifc4x3_add1::IfcDirection>(); } void Ifc4x3_add1::IfcAxis2Placement3D::setRefDirection(const ::Ifc4x3_add1::IfcDirection& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } @@ -8344,9 +8344,9 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcAxis2Placement3D::Class() { return * Ifc4x3_add1::IfcAxis2Placement3D Ifc4x3_add1::IfcAxis2Placement3D::initialize(::Ifc4x3_add1::IfcPoint v1_Location, ::Ifc4x3_add1::IfcDirection v2_Axis, ::Ifc4x3_add1::IfcDirection v3_RefDirection) { set_attribute_value(0, (v1_Location));set_attribute_value(1, (v2_Axis));set_attribute_value(2, (v3_RefDirection));; return *this; } // Function implementations for IfcAxis2PlacementLinear -::Ifc4x3_add1::IfcDirection Ifc4x3_add1::IfcAxis2PlacementLinear::Axis() const { if(get_attribute_value(1).isNull()) { return ::Ifc4x3_add1::IfcDirection{}; } return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3_add1::IfcDirection>(); } +::Ifc4x3_add1::IfcDirection Ifc4x3_add1::IfcAxis2PlacementLinear::Axis() const { if(get_attribute_value(1).isNull()) { return ::Ifc4x3_add1::IfcDirection{}; } return ((express::base)(get_attribute_value(1))).as<::Ifc4x3_add1::IfcDirection>(); } void Ifc4x3_add1::IfcAxis2PlacementLinear::setAxis(const ::Ifc4x3_add1::IfcDirection& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } -::Ifc4x3_add1::IfcDirection Ifc4x3_add1::IfcAxis2PlacementLinear::RefDirection() const { if(get_attribute_value(2).isNull()) { return ::Ifc4x3_add1::IfcDirection{}; } return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3_add1::IfcDirection>(); } +::Ifc4x3_add1::IfcDirection Ifc4x3_add1::IfcAxis2PlacementLinear::RefDirection() const { if(get_attribute_value(2).isNull()) { return ::Ifc4x3_add1::IfcDirection{}; } return ((express::base)(get_attribute_value(2))).as<::Ifc4x3_add1::IfcDirection>(); } void Ifc4x3_add1::IfcAxis2PlacementLinear::setRefDirection(const ::Ifc4x3_add1::IfcDirection& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } @@ -8356,8 +8356,8 @@ Ifc4x3_add1::IfcAxis2PlacementLinear Ifc4x3_add1::IfcAxis2PlacementLinear::initi // Function implementations for IfcBSplineCurve int64_t Ifc4x3_add1::IfcBSplineCurve::Degree() const { int64_t v = get_attribute_value(0); return v; } void Ifc4x3_add1::IfcBSplineCurve::setDegree(const int64_t& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } -std::vector< ::Ifc4x3_add1::IfcCartesianPoint > Ifc4x3_add1::IfcBSplineCurve::ControlPointsList() const { std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3_add1::IfcCartesianPoint>(es); } -void Ifc4x3_add1::IfcBSplineCurve::setControlPointsList(const std::vector< ::Ifc4x3_add1::IfcCartesianPoint >& v) { set_attribute_value(1, cast_vector(v));if constexpr (false)unset_attribute_value(1); } +std::vector< ::Ifc4x3_add1::IfcCartesianPoint > Ifc4x3_add1::IfcBSplineCurve::ControlPointsList() const { std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3_add1::IfcCartesianPoint>(es); } +void Ifc4x3_add1::IfcBSplineCurve::setControlPointsList(const std::vector< ::Ifc4x3_add1::IfcCartesianPoint >& v) { set_attribute_value(1, cast_vector(v));if constexpr (false)unset_attribute_value(1); } ::Ifc4x3_add1::IfcBSplineCurveForm::Value Ifc4x3_add1::IfcBSplineCurve::CurveForm() const { return ::Ifc4x3_add1::IfcBSplineCurveForm::FromString(get_attribute_value(2)); } void Ifc4x3_add1::IfcBSplineCurve::setCurveForm(const ::Ifc4x3_add1::IfcBSplineCurveForm::Value& v) { set_attribute_value(2, enumeration_reference(&::Ifc4x3_add1::IfcBSplineCurveForm::Class(), (size_t) v));if constexpr (false)unset_attribute_value(2); } boost::logic::tribool Ifc4x3_add1::IfcBSplineCurve::ClosedCurve() const { boost::logic::tribool v = get_attribute_value(3); return v; } @@ -8367,7 +8367,7 @@ void Ifc4x3_add1::IfcBSplineCurve::setSelfIntersect(const boost::logic::tribool& const ifcopenshell::entity& Ifc4x3_add1::IfcBSplineCurve::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[107]); } -Ifc4x3_add1::IfcBSplineCurve Ifc4x3_add1::IfcBSplineCurve::initialize(int64_t v1_Degree, std::vector< ::Ifc4x3_add1::IfcCartesianPoint > v2_ControlPointsList, ::Ifc4x3_add1::IfcBSplineCurveForm::Value v3_CurveForm, boost::logic::tribool v4_ClosedCurve, boost::logic::tribool v5_SelfIntersect) { set_attribute_value(0, (v1_Degree));set_attribute_value(1, cast_vector(v2_ControlPointsList));set_attribute_value(2, (enumeration_reference(&::Ifc4x3_add1::IfcBSplineCurveForm::Class(),(size_t)v3_CurveForm)));set_attribute_value(3, (v4_ClosedCurve));set_attribute_value(4, (v5_SelfIntersect));; return *this; } +Ifc4x3_add1::IfcBSplineCurve Ifc4x3_add1::IfcBSplineCurve::initialize(int64_t v1_Degree, std::vector< ::Ifc4x3_add1::IfcCartesianPoint > v2_ControlPointsList, ::Ifc4x3_add1::IfcBSplineCurveForm::Value v3_CurveForm, boost::logic::tribool v4_ClosedCurve, boost::logic::tribool v5_SelfIntersect) { set_attribute_value(0, (v1_Degree));set_attribute_value(1, cast_vector(v2_ControlPointsList));set_attribute_value(2, (enumeration_reference(&::Ifc4x3_add1::IfcBSplineCurveForm::Class(),(size_t)v3_CurveForm)));set_attribute_value(3, (v4_ClosedCurve));set_attribute_value(4, (v5_SelfIntersect));; return *this; } // Function implementations for IfcBSplineCurveWithKnots std::vector< int64_t > /*[2:?]*/ Ifc4x3_add1::IfcBSplineCurveWithKnots::KnotMultiplicities() const { std::vector< int64_t > /*[2:?]*/ v = get_attribute_value(5); return v; } @@ -8379,15 +8379,15 @@ void Ifc4x3_add1::IfcBSplineCurveWithKnots::setKnotSpec(const ::Ifc4x3_add1::Ifc const ifcopenshell::entity& Ifc4x3_add1::IfcBSplineCurveWithKnots::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[109]); } -Ifc4x3_add1::IfcBSplineCurveWithKnots Ifc4x3_add1::IfcBSplineCurveWithKnots::initialize(int64_t v1_Degree, std::vector< ::Ifc4x3_add1::IfcCartesianPoint > v2_ControlPointsList, ::Ifc4x3_add1::IfcBSplineCurveForm::Value v3_CurveForm, boost::logic::tribool v4_ClosedCurve, boost::logic::tribool v5_SelfIntersect, std::vector< int64_t > /*[2:?]*/ v6_KnotMultiplicities, std::vector< double > /*[2:?]*/ v7_Knots, ::Ifc4x3_add1::IfcKnotType::Value v8_KnotSpec) { set_attribute_value(0, (v1_Degree));set_attribute_value(1, cast_vector(v2_ControlPointsList));set_attribute_value(2, (enumeration_reference(&::Ifc4x3_add1::IfcBSplineCurveForm::Class(),(size_t)v3_CurveForm)));set_attribute_value(3, (v4_ClosedCurve));set_attribute_value(4, (v5_SelfIntersect));set_attribute_value(5, (v6_KnotMultiplicities));set_attribute_value(6, (v7_Knots));set_attribute_value(7, (enumeration_reference(&::Ifc4x3_add1::IfcKnotType::Class(),(size_t)v8_KnotSpec)));; return *this; } +Ifc4x3_add1::IfcBSplineCurveWithKnots Ifc4x3_add1::IfcBSplineCurveWithKnots::initialize(int64_t v1_Degree, std::vector< ::Ifc4x3_add1::IfcCartesianPoint > v2_ControlPointsList, ::Ifc4x3_add1::IfcBSplineCurveForm::Value v3_CurveForm, boost::logic::tribool v4_ClosedCurve, boost::logic::tribool v5_SelfIntersect, std::vector< int64_t > /*[2:?]*/ v6_KnotMultiplicities, std::vector< double > /*[2:?]*/ v7_Knots, ::Ifc4x3_add1::IfcKnotType::Value v8_KnotSpec) { set_attribute_value(0, (v1_Degree));set_attribute_value(1, cast_vector(v2_ControlPointsList));set_attribute_value(2, (enumeration_reference(&::Ifc4x3_add1::IfcBSplineCurveForm::Class(),(size_t)v3_CurveForm)));set_attribute_value(3, (v4_ClosedCurve));set_attribute_value(4, (v5_SelfIntersect));set_attribute_value(5, (v6_KnotMultiplicities));set_attribute_value(6, (v7_Knots));set_attribute_value(7, (enumeration_reference(&::Ifc4x3_add1::IfcKnotType::Class(),(size_t)v8_KnotSpec)));; return *this; } // Function implementations for IfcBSplineSurface int64_t Ifc4x3_add1::IfcBSplineSurface::UDegree() const { int64_t v = get_attribute_value(0); return v; } void Ifc4x3_add1::IfcBSplineSurface::setUDegree(const int64_t& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } int64_t Ifc4x3_add1::IfcBSplineSurface::VDegree() const { int64_t v = get_attribute_value(1); return v; } void Ifc4x3_add1::IfcBSplineSurface::setVDegree(const int64_t& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } -std::vector< std::vector< ::Ifc4x3_add1::IfcCartesianPoint > > Ifc4x3_add1::IfcBSplineSurface::ControlPointsList() const { std::vector> es = get_attribute_value(2); return cast_vector<::Ifc4x3_add1::IfcCartesianPoint>(es); } -void Ifc4x3_add1::IfcBSplineSurface::setControlPointsList(const std::vector< std::vector< ::Ifc4x3_add1::IfcCartesianPoint > >& v) { set_attribute_value(2, cast_vector(v));if constexpr (false)unset_attribute_value(2); } +std::vector< std::vector< ::Ifc4x3_add1::IfcCartesianPoint > > Ifc4x3_add1::IfcBSplineSurface::ControlPointsList() const { std::vector> es = get_attribute_value(2); return cast_vector<::Ifc4x3_add1::IfcCartesianPoint>(es); } +void Ifc4x3_add1::IfcBSplineSurface::setControlPointsList(const std::vector< std::vector< ::Ifc4x3_add1::IfcCartesianPoint > >& v) { set_attribute_value(2, cast_vector(v));if constexpr (false)unset_attribute_value(2); } ::Ifc4x3_add1::IfcBSplineSurfaceForm::Value Ifc4x3_add1::IfcBSplineSurface::SurfaceForm() const { return ::Ifc4x3_add1::IfcBSplineSurfaceForm::FromString(get_attribute_value(3)); } void Ifc4x3_add1::IfcBSplineSurface::setSurfaceForm(const ::Ifc4x3_add1::IfcBSplineSurfaceForm::Value& v) { set_attribute_value(3, enumeration_reference(&::Ifc4x3_add1::IfcBSplineSurfaceForm::Class(), (size_t) v));if constexpr (false)unset_attribute_value(3); } boost::logic::tribool Ifc4x3_add1::IfcBSplineSurface::UClosed() const { boost::logic::tribool v = get_attribute_value(4); return v; } @@ -8399,7 +8399,7 @@ void Ifc4x3_add1::IfcBSplineSurface::setSelfIntersect(const boost::logic::triboo const ifcopenshell::entity& Ifc4x3_add1::IfcBSplineSurface::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[110]); } -Ifc4x3_add1::IfcBSplineSurface Ifc4x3_add1::IfcBSplineSurface::initialize(int64_t v1_UDegree, int64_t v2_VDegree, std::vector< std::vector< ::Ifc4x3_add1::IfcCartesianPoint > > v3_ControlPointsList, ::Ifc4x3_add1::IfcBSplineSurfaceForm::Value v4_SurfaceForm, boost::logic::tribool v5_UClosed, boost::logic::tribool v6_VClosed, boost::logic::tribool v7_SelfIntersect) { set_attribute_value(0, (v1_UDegree));set_attribute_value(1, (v2_VDegree));set_attribute_value(2, cast_vector(v3_ControlPointsList));set_attribute_value(3, (enumeration_reference(&::Ifc4x3_add1::IfcBSplineSurfaceForm::Class(),(size_t)v4_SurfaceForm)));set_attribute_value(4, (v5_UClosed));set_attribute_value(5, (v6_VClosed));set_attribute_value(6, (v7_SelfIntersect));; return *this; } +Ifc4x3_add1::IfcBSplineSurface Ifc4x3_add1::IfcBSplineSurface::initialize(int64_t v1_UDegree, int64_t v2_VDegree, std::vector< std::vector< ::Ifc4x3_add1::IfcCartesianPoint > > v3_ControlPointsList, ::Ifc4x3_add1::IfcBSplineSurfaceForm::Value v4_SurfaceForm, boost::logic::tribool v5_UClosed, boost::logic::tribool v6_VClosed, boost::logic::tribool v7_SelfIntersect) { set_attribute_value(0, (v1_UDegree));set_attribute_value(1, (v2_VDegree));set_attribute_value(2, cast_vector(v3_ControlPointsList));set_attribute_value(3, (enumeration_reference(&::Ifc4x3_add1::IfcBSplineSurfaceForm::Class(),(size_t)v4_SurfaceForm)));set_attribute_value(4, (v5_UClosed));set_attribute_value(5, (v6_VClosed));set_attribute_value(6, (v7_SelfIntersect));; return *this; } // Function implementations for IfcBSplineSurfaceWithKnots std::vector< int64_t > /*[2:?]*/ Ifc4x3_add1::IfcBSplineSurfaceWithKnots::UMultiplicities() const { std::vector< int64_t > /*[2:?]*/ v = get_attribute_value(7); return v; } @@ -8415,7 +8415,7 @@ void Ifc4x3_add1::IfcBSplineSurfaceWithKnots::setKnotSpec(const ::Ifc4x3_add1::I const ifcopenshell::entity& Ifc4x3_add1::IfcBSplineSurfaceWithKnots::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[112]); } -Ifc4x3_add1::IfcBSplineSurfaceWithKnots Ifc4x3_add1::IfcBSplineSurfaceWithKnots::initialize(int64_t v1_UDegree, int64_t v2_VDegree, std::vector< std::vector< ::Ifc4x3_add1::IfcCartesianPoint > > v3_ControlPointsList, ::Ifc4x3_add1::IfcBSplineSurfaceForm::Value v4_SurfaceForm, boost::logic::tribool v5_UClosed, boost::logic::tribool v6_VClosed, boost::logic::tribool v7_SelfIntersect, std::vector< int64_t > /*[2:?]*/ v8_UMultiplicities, std::vector< int64_t > /*[2:?]*/ v9_VMultiplicities, std::vector< double > /*[2:?]*/ v10_UKnots, std::vector< double > /*[2:?]*/ v11_VKnots, ::Ifc4x3_add1::IfcKnotType::Value v12_KnotSpec) { set_attribute_value(0, (v1_UDegree));set_attribute_value(1, (v2_VDegree));set_attribute_value(2, cast_vector(v3_ControlPointsList));set_attribute_value(3, (enumeration_reference(&::Ifc4x3_add1::IfcBSplineSurfaceForm::Class(),(size_t)v4_SurfaceForm)));set_attribute_value(4, (v5_UClosed));set_attribute_value(5, (v6_VClosed));set_attribute_value(6, (v7_SelfIntersect));set_attribute_value(7, (v8_UMultiplicities));set_attribute_value(8, (v9_VMultiplicities));set_attribute_value(9, (v10_UKnots));set_attribute_value(10, (v11_VKnots));set_attribute_value(11, (enumeration_reference(&::Ifc4x3_add1::IfcKnotType::Class(),(size_t)v12_KnotSpec)));; return *this; } +Ifc4x3_add1::IfcBSplineSurfaceWithKnots Ifc4x3_add1::IfcBSplineSurfaceWithKnots::initialize(int64_t v1_UDegree, int64_t v2_VDegree, std::vector< std::vector< ::Ifc4x3_add1::IfcCartesianPoint > > v3_ControlPointsList, ::Ifc4x3_add1::IfcBSplineSurfaceForm::Value v4_SurfaceForm, boost::logic::tribool v5_UClosed, boost::logic::tribool v6_VClosed, boost::logic::tribool v7_SelfIntersect, std::vector< int64_t > /*[2:?]*/ v8_UMultiplicities, std::vector< int64_t > /*[2:?]*/ v9_VMultiplicities, std::vector< double > /*[2:?]*/ v10_UKnots, std::vector< double > /*[2:?]*/ v11_VKnots, ::Ifc4x3_add1::IfcKnotType::Value v12_KnotSpec) { set_attribute_value(0, (v1_UDegree));set_attribute_value(1, (v2_VDegree));set_attribute_value(2, cast_vector(v3_ControlPointsList));set_attribute_value(3, (enumeration_reference(&::Ifc4x3_add1::IfcBSplineSurfaceForm::Class(),(size_t)v4_SurfaceForm)));set_attribute_value(4, (v5_UClosed));set_attribute_value(5, (v6_VClosed));set_attribute_value(6, (v7_SelfIntersect));set_attribute_value(7, (v8_UMultiplicities));set_attribute_value(8, (v9_VMultiplicities));set_attribute_value(9, (v10_UKnots));set_attribute_value(10, (v11_VKnots));set_attribute_value(11, (enumeration_reference(&::Ifc4x3_add1::IfcKnotType::Class(),(size_t)v12_KnotSpec)));; return *this; } // Function implementations for IfcBeam std::optional< ::Ifc4x3_add1::IfcBeamTypeEnum::Value > Ifc4x3_add1::IfcBeam::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_add1::IfcBeamTypeEnum::FromString(get_attribute_value(8)); } @@ -8431,7 +8431,7 @@ void Ifc4x3_add1::IfcBeamType::setPredefinedType(const ::Ifc4x3_add1::IfcBeamTyp const ifcopenshell::entity& Ifc4x3_add1::IfcBeamType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[73]); } -Ifc4x3_add1::IfcBeamType Ifc4x3_add1::IfcBeamType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcBeamTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcBeamTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_add1::IfcBeamType Ifc4x3_add1::IfcBeamType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcBeamTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcBeamTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcBearing std::optional< ::Ifc4x3_add1::IfcBearingTypeEnum::Value > Ifc4x3_add1::IfcBearing::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_add1::IfcBearingTypeEnum::FromString(get_attribute_value(8)); } @@ -8447,7 +8447,7 @@ void Ifc4x3_add1::IfcBearingType::setPredefinedType(const ::Ifc4x3_add1::IfcBear const ifcopenshell::entity& Ifc4x3_add1::IfcBearingType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[76]); } -Ifc4x3_add1::IfcBearingType Ifc4x3_add1::IfcBearingType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcBearingTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcBearingTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_add1::IfcBearingType Ifc4x3_add1::IfcBearingType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcBearingTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcBearingTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcBlobTexture std::string Ifc4x3_add1::IfcBlobTexture::RasterFormat() const { std::string v = get_attribute_value(5); return v; } @@ -8485,7 +8485,7 @@ void Ifc4x3_add1::IfcBoilerType::setPredefinedType(const ::Ifc4x3_add1::IfcBoile const ifcopenshell::entity& Ifc4x3_add1::IfcBoilerType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[84]); } -Ifc4x3_add1::IfcBoilerType Ifc4x3_add1::IfcBoilerType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcBoilerTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcBoilerTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_add1::IfcBoilerType Ifc4x3_add1::IfcBoilerType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcBoilerTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcBoilerTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcBooleanClippingResult @@ -8496,9 +8496,9 @@ Ifc4x3_add1::IfcBooleanClippingResult Ifc4x3_add1::IfcBooleanClippingResult::ini // Function implementations for IfcBooleanResult ::Ifc4x3_add1::IfcBooleanOperator::Value Ifc4x3_add1::IfcBooleanResult::Operator() const { return ::Ifc4x3_add1::IfcBooleanOperator::FromString(get_attribute_value(0)); } void Ifc4x3_add1::IfcBooleanResult::setOperator(const ::Ifc4x3_add1::IfcBooleanOperator::Value& v) { set_attribute_value(0, enumeration_reference(&::Ifc4x3_add1::IfcBooleanOperator::Class(), (size_t) v));if constexpr (false)unset_attribute_value(0); } -::Ifc4x3_add1::IfcBooleanOperand Ifc4x3_add1::IfcBooleanResult::FirstOperand() const { return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3_add1::IfcBooleanOperand>(); } +::Ifc4x3_add1::IfcBooleanOperand Ifc4x3_add1::IfcBooleanResult::FirstOperand() const { return ((express::base)(get_attribute_value(1))).as<::Ifc4x3_add1::IfcBooleanOperand>(); } void Ifc4x3_add1::IfcBooleanResult::setFirstOperand(const ::Ifc4x3_add1::IfcBooleanOperand& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } -::Ifc4x3_add1::IfcBooleanOperand Ifc4x3_add1::IfcBooleanResult::SecondOperand() const { return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3_add1::IfcBooleanOperand>(); } +::Ifc4x3_add1::IfcBooleanOperand Ifc4x3_add1::IfcBooleanResult::SecondOperand() const { return ((express::base)(get_attribute_value(2))).as<::Ifc4x3_add1::IfcBooleanOperand>(); } void Ifc4x3_add1::IfcBooleanResult::setSecondOperand(const ::Ifc4x3_add1::IfcBooleanOperand& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } @@ -8523,20 +8523,20 @@ Ifc4x3_add1::IfcBoundaryCondition Ifc4x3_add1::IfcBoundaryCondition::initialize( const ifcopenshell::entity& Ifc4x3_add1::IfcBoundaryCurve::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[93]); } -Ifc4x3_add1::IfcBoundaryCurve Ifc4x3_add1::IfcBoundaryCurve::initialize(std::vector< ::Ifc4x3_add1::IfcSegment > v1_Segments, boost::logic::tribool v2_SelfIntersect) { set_attribute_value(0, cast_vector(v1_Segments));set_attribute_value(1, (v2_SelfIntersect));; return *this; } +Ifc4x3_add1::IfcBoundaryCurve Ifc4x3_add1::IfcBoundaryCurve::initialize(std::vector< ::Ifc4x3_add1::IfcSegment > v1_Segments, boost::logic::tribool v2_SelfIntersect) { set_attribute_value(0, cast_vector(v1_Segments));set_attribute_value(1, (v2_SelfIntersect));; return *this; } // Function implementations for IfcBoundaryEdgeCondition -::Ifc4x3_add1::IfcModulusOfTranslationalSubgradeReactionSelect Ifc4x3_add1::IfcBoundaryEdgeCondition::TranslationalStiffnessByLengthX() const { if(get_attribute_value(1).isNull()) { return ::Ifc4x3_add1::IfcModulusOfTranslationalSubgradeReactionSelect{}; } return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3_add1::IfcModulusOfTranslationalSubgradeReactionSelect>(); } +::Ifc4x3_add1::IfcModulusOfTranslationalSubgradeReactionSelect Ifc4x3_add1::IfcBoundaryEdgeCondition::TranslationalStiffnessByLengthX() const { if(get_attribute_value(1).isNull()) { return ::Ifc4x3_add1::IfcModulusOfTranslationalSubgradeReactionSelect{}; } return ((express::base)(get_attribute_value(1))).as<::Ifc4x3_add1::IfcModulusOfTranslationalSubgradeReactionSelect>(); } void Ifc4x3_add1::IfcBoundaryEdgeCondition::setTranslationalStiffnessByLengthX(const ::Ifc4x3_add1::IfcModulusOfTranslationalSubgradeReactionSelect& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } -::Ifc4x3_add1::IfcModulusOfTranslationalSubgradeReactionSelect Ifc4x3_add1::IfcBoundaryEdgeCondition::TranslationalStiffnessByLengthY() const { if(get_attribute_value(2).isNull()) { return ::Ifc4x3_add1::IfcModulusOfTranslationalSubgradeReactionSelect{}; } return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3_add1::IfcModulusOfTranslationalSubgradeReactionSelect>(); } +::Ifc4x3_add1::IfcModulusOfTranslationalSubgradeReactionSelect Ifc4x3_add1::IfcBoundaryEdgeCondition::TranslationalStiffnessByLengthY() const { if(get_attribute_value(2).isNull()) { return ::Ifc4x3_add1::IfcModulusOfTranslationalSubgradeReactionSelect{}; } return ((express::base)(get_attribute_value(2))).as<::Ifc4x3_add1::IfcModulusOfTranslationalSubgradeReactionSelect>(); } void Ifc4x3_add1::IfcBoundaryEdgeCondition::setTranslationalStiffnessByLengthY(const ::Ifc4x3_add1::IfcModulusOfTranslationalSubgradeReactionSelect& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } -::Ifc4x3_add1::IfcModulusOfTranslationalSubgradeReactionSelect Ifc4x3_add1::IfcBoundaryEdgeCondition::TranslationalStiffnessByLengthZ() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3_add1::IfcModulusOfTranslationalSubgradeReactionSelect{}; } return ((express::Base)(get_attribute_value(3))).as<::Ifc4x3_add1::IfcModulusOfTranslationalSubgradeReactionSelect>(); } +::Ifc4x3_add1::IfcModulusOfTranslationalSubgradeReactionSelect Ifc4x3_add1::IfcBoundaryEdgeCondition::TranslationalStiffnessByLengthZ() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3_add1::IfcModulusOfTranslationalSubgradeReactionSelect{}; } return ((express::base)(get_attribute_value(3))).as<::Ifc4x3_add1::IfcModulusOfTranslationalSubgradeReactionSelect>(); } void Ifc4x3_add1::IfcBoundaryEdgeCondition::setTranslationalStiffnessByLengthZ(const ::Ifc4x3_add1::IfcModulusOfTranslationalSubgradeReactionSelect& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } -::Ifc4x3_add1::IfcModulusOfRotationalSubgradeReactionSelect Ifc4x3_add1::IfcBoundaryEdgeCondition::RotationalStiffnessByLengthX() const { if(get_attribute_value(4).isNull()) { return ::Ifc4x3_add1::IfcModulusOfRotationalSubgradeReactionSelect{}; } return ((express::Base)(get_attribute_value(4))).as<::Ifc4x3_add1::IfcModulusOfRotationalSubgradeReactionSelect>(); } +::Ifc4x3_add1::IfcModulusOfRotationalSubgradeReactionSelect Ifc4x3_add1::IfcBoundaryEdgeCondition::RotationalStiffnessByLengthX() const { if(get_attribute_value(4).isNull()) { return ::Ifc4x3_add1::IfcModulusOfRotationalSubgradeReactionSelect{}; } return ((express::base)(get_attribute_value(4))).as<::Ifc4x3_add1::IfcModulusOfRotationalSubgradeReactionSelect>(); } void Ifc4x3_add1::IfcBoundaryEdgeCondition::setRotationalStiffnessByLengthX(const ::Ifc4x3_add1::IfcModulusOfRotationalSubgradeReactionSelect& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } -::Ifc4x3_add1::IfcModulusOfRotationalSubgradeReactionSelect Ifc4x3_add1::IfcBoundaryEdgeCondition::RotationalStiffnessByLengthY() const { if(get_attribute_value(5).isNull()) { return ::Ifc4x3_add1::IfcModulusOfRotationalSubgradeReactionSelect{}; } return ((express::Base)(get_attribute_value(5))).as<::Ifc4x3_add1::IfcModulusOfRotationalSubgradeReactionSelect>(); } +::Ifc4x3_add1::IfcModulusOfRotationalSubgradeReactionSelect Ifc4x3_add1::IfcBoundaryEdgeCondition::RotationalStiffnessByLengthY() const { if(get_attribute_value(5).isNull()) { return ::Ifc4x3_add1::IfcModulusOfRotationalSubgradeReactionSelect{}; } return ((express::base)(get_attribute_value(5))).as<::Ifc4x3_add1::IfcModulusOfRotationalSubgradeReactionSelect>(); } void Ifc4x3_add1::IfcBoundaryEdgeCondition::setRotationalStiffnessByLengthY(const ::Ifc4x3_add1::IfcModulusOfRotationalSubgradeReactionSelect& v) { set_attribute_value(5, v);if constexpr (false)unset_attribute_value(5); } -::Ifc4x3_add1::IfcModulusOfRotationalSubgradeReactionSelect Ifc4x3_add1::IfcBoundaryEdgeCondition::RotationalStiffnessByLengthZ() const { if(get_attribute_value(6).isNull()) { return ::Ifc4x3_add1::IfcModulusOfRotationalSubgradeReactionSelect{}; } return ((express::Base)(get_attribute_value(6))).as<::Ifc4x3_add1::IfcModulusOfRotationalSubgradeReactionSelect>(); } +::Ifc4x3_add1::IfcModulusOfRotationalSubgradeReactionSelect Ifc4x3_add1::IfcBoundaryEdgeCondition::RotationalStiffnessByLengthZ() const { if(get_attribute_value(6).isNull()) { return ::Ifc4x3_add1::IfcModulusOfRotationalSubgradeReactionSelect{}; } return ((express::base)(get_attribute_value(6))).as<::Ifc4x3_add1::IfcModulusOfRotationalSubgradeReactionSelect>(); } void Ifc4x3_add1::IfcBoundaryEdgeCondition::setRotationalStiffnessByLengthZ(const ::Ifc4x3_add1::IfcModulusOfRotationalSubgradeReactionSelect& v) { set_attribute_value(6, v);if constexpr (false)unset_attribute_value(6); } @@ -8544,11 +8544,11 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcBoundaryEdgeCondition::Class() { ret Ifc4x3_add1::IfcBoundaryEdgeCondition Ifc4x3_add1::IfcBoundaryEdgeCondition::initialize(std::optional< std::string > v1_Name, ::Ifc4x3_add1::IfcModulusOfTranslationalSubgradeReactionSelect v2_TranslationalStiffnessByLengthX, ::Ifc4x3_add1::IfcModulusOfTranslationalSubgradeReactionSelect v3_TranslationalStiffnessByLengthY, ::Ifc4x3_add1::IfcModulusOfTranslationalSubgradeReactionSelect v4_TranslationalStiffnessByLengthZ, ::Ifc4x3_add1::IfcModulusOfRotationalSubgradeReactionSelect v5_RotationalStiffnessByLengthX, ::Ifc4x3_add1::IfcModulusOfRotationalSubgradeReactionSelect v6_RotationalStiffnessByLengthY, ::Ifc4x3_add1::IfcModulusOfRotationalSubgradeReactionSelect v7_RotationalStiffnessByLengthZ) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); }set_attribute_value(1, (v2_TranslationalStiffnessByLengthX));set_attribute_value(2, (v3_TranslationalStiffnessByLengthY));set_attribute_value(3, (v4_TranslationalStiffnessByLengthZ));set_attribute_value(4, (v5_RotationalStiffnessByLengthX));set_attribute_value(5, (v6_RotationalStiffnessByLengthY));set_attribute_value(6, (v7_RotationalStiffnessByLengthZ));; return *this; } // Function implementations for IfcBoundaryFaceCondition -::Ifc4x3_add1::IfcModulusOfSubgradeReactionSelect Ifc4x3_add1::IfcBoundaryFaceCondition::TranslationalStiffnessByAreaX() const { if(get_attribute_value(1).isNull()) { return ::Ifc4x3_add1::IfcModulusOfSubgradeReactionSelect{}; } return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3_add1::IfcModulusOfSubgradeReactionSelect>(); } +::Ifc4x3_add1::IfcModulusOfSubgradeReactionSelect Ifc4x3_add1::IfcBoundaryFaceCondition::TranslationalStiffnessByAreaX() const { if(get_attribute_value(1).isNull()) { return ::Ifc4x3_add1::IfcModulusOfSubgradeReactionSelect{}; } return ((express::base)(get_attribute_value(1))).as<::Ifc4x3_add1::IfcModulusOfSubgradeReactionSelect>(); } void Ifc4x3_add1::IfcBoundaryFaceCondition::setTranslationalStiffnessByAreaX(const ::Ifc4x3_add1::IfcModulusOfSubgradeReactionSelect& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } -::Ifc4x3_add1::IfcModulusOfSubgradeReactionSelect Ifc4x3_add1::IfcBoundaryFaceCondition::TranslationalStiffnessByAreaY() const { if(get_attribute_value(2).isNull()) { return ::Ifc4x3_add1::IfcModulusOfSubgradeReactionSelect{}; } return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3_add1::IfcModulusOfSubgradeReactionSelect>(); } +::Ifc4x3_add1::IfcModulusOfSubgradeReactionSelect Ifc4x3_add1::IfcBoundaryFaceCondition::TranslationalStiffnessByAreaY() const { if(get_attribute_value(2).isNull()) { return ::Ifc4x3_add1::IfcModulusOfSubgradeReactionSelect{}; } return ((express::base)(get_attribute_value(2))).as<::Ifc4x3_add1::IfcModulusOfSubgradeReactionSelect>(); } void Ifc4x3_add1::IfcBoundaryFaceCondition::setTranslationalStiffnessByAreaY(const ::Ifc4x3_add1::IfcModulusOfSubgradeReactionSelect& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } -::Ifc4x3_add1::IfcModulusOfSubgradeReactionSelect Ifc4x3_add1::IfcBoundaryFaceCondition::TranslationalStiffnessByAreaZ() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3_add1::IfcModulusOfSubgradeReactionSelect{}; } return ((express::Base)(get_attribute_value(3))).as<::Ifc4x3_add1::IfcModulusOfSubgradeReactionSelect>(); } +::Ifc4x3_add1::IfcModulusOfSubgradeReactionSelect Ifc4x3_add1::IfcBoundaryFaceCondition::TranslationalStiffnessByAreaZ() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3_add1::IfcModulusOfSubgradeReactionSelect{}; } return ((express::base)(get_attribute_value(3))).as<::Ifc4x3_add1::IfcModulusOfSubgradeReactionSelect>(); } void Ifc4x3_add1::IfcBoundaryFaceCondition::setTranslationalStiffnessByAreaZ(const ::Ifc4x3_add1::IfcModulusOfSubgradeReactionSelect& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } @@ -8556,17 +8556,17 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcBoundaryFaceCondition::Class() { ret Ifc4x3_add1::IfcBoundaryFaceCondition Ifc4x3_add1::IfcBoundaryFaceCondition::initialize(std::optional< std::string > v1_Name, ::Ifc4x3_add1::IfcModulusOfSubgradeReactionSelect v2_TranslationalStiffnessByAreaX, ::Ifc4x3_add1::IfcModulusOfSubgradeReactionSelect v3_TranslationalStiffnessByAreaY, ::Ifc4x3_add1::IfcModulusOfSubgradeReactionSelect v4_TranslationalStiffnessByAreaZ) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); }set_attribute_value(1, (v2_TranslationalStiffnessByAreaX));set_attribute_value(2, (v3_TranslationalStiffnessByAreaY));set_attribute_value(3, (v4_TranslationalStiffnessByAreaZ));; return *this; } // Function implementations for IfcBoundaryNodeCondition -::Ifc4x3_add1::IfcTranslationalStiffnessSelect Ifc4x3_add1::IfcBoundaryNodeCondition::TranslationalStiffnessX() const { if(get_attribute_value(1).isNull()) { return ::Ifc4x3_add1::IfcTranslationalStiffnessSelect{}; } return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3_add1::IfcTranslationalStiffnessSelect>(); } +::Ifc4x3_add1::IfcTranslationalStiffnessSelect Ifc4x3_add1::IfcBoundaryNodeCondition::TranslationalStiffnessX() const { if(get_attribute_value(1).isNull()) { return ::Ifc4x3_add1::IfcTranslationalStiffnessSelect{}; } return ((express::base)(get_attribute_value(1))).as<::Ifc4x3_add1::IfcTranslationalStiffnessSelect>(); } void Ifc4x3_add1::IfcBoundaryNodeCondition::setTranslationalStiffnessX(const ::Ifc4x3_add1::IfcTranslationalStiffnessSelect& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } -::Ifc4x3_add1::IfcTranslationalStiffnessSelect Ifc4x3_add1::IfcBoundaryNodeCondition::TranslationalStiffnessY() const { if(get_attribute_value(2).isNull()) { return ::Ifc4x3_add1::IfcTranslationalStiffnessSelect{}; } return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3_add1::IfcTranslationalStiffnessSelect>(); } +::Ifc4x3_add1::IfcTranslationalStiffnessSelect Ifc4x3_add1::IfcBoundaryNodeCondition::TranslationalStiffnessY() const { if(get_attribute_value(2).isNull()) { return ::Ifc4x3_add1::IfcTranslationalStiffnessSelect{}; } return ((express::base)(get_attribute_value(2))).as<::Ifc4x3_add1::IfcTranslationalStiffnessSelect>(); } void Ifc4x3_add1::IfcBoundaryNodeCondition::setTranslationalStiffnessY(const ::Ifc4x3_add1::IfcTranslationalStiffnessSelect& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } -::Ifc4x3_add1::IfcTranslationalStiffnessSelect Ifc4x3_add1::IfcBoundaryNodeCondition::TranslationalStiffnessZ() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3_add1::IfcTranslationalStiffnessSelect{}; } return ((express::Base)(get_attribute_value(3))).as<::Ifc4x3_add1::IfcTranslationalStiffnessSelect>(); } +::Ifc4x3_add1::IfcTranslationalStiffnessSelect Ifc4x3_add1::IfcBoundaryNodeCondition::TranslationalStiffnessZ() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3_add1::IfcTranslationalStiffnessSelect{}; } return ((express::base)(get_attribute_value(3))).as<::Ifc4x3_add1::IfcTranslationalStiffnessSelect>(); } void Ifc4x3_add1::IfcBoundaryNodeCondition::setTranslationalStiffnessZ(const ::Ifc4x3_add1::IfcTranslationalStiffnessSelect& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } -::Ifc4x3_add1::IfcRotationalStiffnessSelect Ifc4x3_add1::IfcBoundaryNodeCondition::RotationalStiffnessX() const { if(get_attribute_value(4).isNull()) { return ::Ifc4x3_add1::IfcRotationalStiffnessSelect{}; } return ((express::Base)(get_attribute_value(4))).as<::Ifc4x3_add1::IfcRotationalStiffnessSelect>(); } +::Ifc4x3_add1::IfcRotationalStiffnessSelect Ifc4x3_add1::IfcBoundaryNodeCondition::RotationalStiffnessX() const { if(get_attribute_value(4).isNull()) { return ::Ifc4x3_add1::IfcRotationalStiffnessSelect{}; } return ((express::base)(get_attribute_value(4))).as<::Ifc4x3_add1::IfcRotationalStiffnessSelect>(); } void Ifc4x3_add1::IfcBoundaryNodeCondition::setRotationalStiffnessX(const ::Ifc4x3_add1::IfcRotationalStiffnessSelect& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } -::Ifc4x3_add1::IfcRotationalStiffnessSelect Ifc4x3_add1::IfcBoundaryNodeCondition::RotationalStiffnessY() const { if(get_attribute_value(5).isNull()) { return ::Ifc4x3_add1::IfcRotationalStiffnessSelect{}; } return ((express::Base)(get_attribute_value(5))).as<::Ifc4x3_add1::IfcRotationalStiffnessSelect>(); } +::Ifc4x3_add1::IfcRotationalStiffnessSelect Ifc4x3_add1::IfcBoundaryNodeCondition::RotationalStiffnessY() const { if(get_attribute_value(5).isNull()) { return ::Ifc4x3_add1::IfcRotationalStiffnessSelect{}; } return ((express::base)(get_attribute_value(5))).as<::Ifc4x3_add1::IfcRotationalStiffnessSelect>(); } void Ifc4x3_add1::IfcBoundaryNodeCondition::setRotationalStiffnessY(const ::Ifc4x3_add1::IfcRotationalStiffnessSelect& v) { set_attribute_value(5, v);if constexpr (false)unset_attribute_value(5); } -::Ifc4x3_add1::IfcRotationalStiffnessSelect Ifc4x3_add1::IfcBoundaryNodeCondition::RotationalStiffnessZ() const { if(get_attribute_value(6).isNull()) { return ::Ifc4x3_add1::IfcRotationalStiffnessSelect{}; } return ((express::Base)(get_attribute_value(6))).as<::Ifc4x3_add1::IfcRotationalStiffnessSelect>(); } +::Ifc4x3_add1::IfcRotationalStiffnessSelect Ifc4x3_add1::IfcBoundaryNodeCondition::RotationalStiffnessZ() const { if(get_attribute_value(6).isNull()) { return ::Ifc4x3_add1::IfcRotationalStiffnessSelect{}; } return ((express::base)(get_attribute_value(6))).as<::Ifc4x3_add1::IfcRotationalStiffnessSelect>(); } void Ifc4x3_add1::IfcBoundaryNodeCondition::setRotationalStiffnessZ(const ::Ifc4x3_add1::IfcRotationalStiffnessSelect& v) { set_attribute_value(6, v);if constexpr (false)unset_attribute_value(6); } @@ -8574,7 +8574,7 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcBoundaryNodeCondition::Class() { ret Ifc4x3_add1::IfcBoundaryNodeCondition Ifc4x3_add1::IfcBoundaryNodeCondition::initialize(std::optional< std::string > v1_Name, ::Ifc4x3_add1::IfcTranslationalStiffnessSelect v2_TranslationalStiffnessX, ::Ifc4x3_add1::IfcTranslationalStiffnessSelect v3_TranslationalStiffnessY, ::Ifc4x3_add1::IfcTranslationalStiffnessSelect v4_TranslationalStiffnessZ, ::Ifc4x3_add1::IfcRotationalStiffnessSelect v5_RotationalStiffnessX, ::Ifc4x3_add1::IfcRotationalStiffnessSelect v6_RotationalStiffnessY, ::Ifc4x3_add1::IfcRotationalStiffnessSelect v7_RotationalStiffnessZ) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); }set_attribute_value(1, (v2_TranslationalStiffnessX));set_attribute_value(2, (v3_TranslationalStiffnessY));set_attribute_value(3, (v4_TranslationalStiffnessZ));set_attribute_value(4, (v5_RotationalStiffnessX));set_attribute_value(5, (v6_RotationalStiffnessY));set_attribute_value(6, (v7_RotationalStiffnessZ));; return *this; } // Function implementations for IfcBoundaryNodeConditionWarping -::Ifc4x3_add1::IfcWarpingStiffnessSelect Ifc4x3_add1::IfcBoundaryNodeConditionWarping::WarpingStiffness() const { if(get_attribute_value(7).isNull()) { return ::Ifc4x3_add1::IfcWarpingStiffnessSelect{}; } return ((express::Base)(get_attribute_value(7))).as<::Ifc4x3_add1::IfcWarpingStiffnessSelect>(); } +::Ifc4x3_add1::IfcWarpingStiffnessSelect Ifc4x3_add1::IfcBoundaryNodeConditionWarping::WarpingStiffness() const { if(get_attribute_value(7).isNull()) { return ::Ifc4x3_add1::IfcWarpingStiffnessSelect{}; } return ((express::base)(get_attribute_value(7))).as<::Ifc4x3_add1::IfcWarpingStiffnessSelect>(); } void Ifc4x3_add1::IfcBoundaryNodeConditionWarping::setWarpingStiffness(const ::Ifc4x3_add1::IfcWarpingStiffnessSelect& v) { set_attribute_value(7, v);if constexpr (false)unset_attribute_value(7); } @@ -8594,7 +8594,7 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcBoundedSurface::Class() { return *(( Ifc4x3_add1::IfcBoundedSurface Ifc4x3_add1::IfcBoundedSurface::initialize() { ; return *this; } // Function implementations for IfcBoundingBox -::Ifc4x3_add1::IfcCartesianPoint Ifc4x3_add1::IfcBoundingBox::Corner() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcCartesianPoint>(); } +::Ifc4x3_add1::IfcCartesianPoint Ifc4x3_add1::IfcBoundingBox::Corner() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcCartesianPoint>(); } void Ifc4x3_add1::IfcBoundingBox::setCorner(const ::Ifc4x3_add1::IfcCartesianPoint& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } double Ifc4x3_add1::IfcBoundingBox::XDim() const { double v = get_attribute_value(1); return v; } void Ifc4x3_add1::IfcBoundingBox::setXDim(const double& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } @@ -8608,7 +8608,7 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcBoundingBox::Class() { return *((ifc Ifc4x3_add1::IfcBoundingBox Ifc4x3_add1::IfcBoundingBox::initialize(::Ifc4x3_add1::IfcCartesianPoint v1_Corner, double v2_XDim, double v3_YDim, double v4_ZDim) { set_attribute_value(0, (v1_Corner));set_attribute_value(1, (v2_XDim));set_attribute_value(2, (v3_YDim));set_attribute_value(3, (v4_ZDim));; return *this; } // Function implementations for IfcBoxedHalfSpace -::Ifc4x3_add1::IfcBoundingBox Ifc4x3_add1::IfcBoxedHalfSpace::Enclosure() const { return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3_add1::IfcBoundingBox>(); } +::Ifc4x3_add1::IfcBoundingBox Ifc4x3_add1::IfcBoxedHalfSpace::Enclosure() const { return ((express::base)(get_attribute_value(2))).as<::Ifc4x3_add1::IfcBoundingBox>(); } void Ifc4x3_add1::IfcBoxedHalfSpace::setEnclosure(const ::Ifc4x3_add1::IfcBoundingBox& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } @@ -8636,7 +8636,7 @@ std::optional< double > Ifc4x3_add1::IfcBuilding::ElevationOfRefHeight() const { void Ifc4x3_add1::IfcBuilding::setElevationOfRefHeight(const std::optional< double >& v) { if (v) {set_attribute_value(9, *v);} else {unset_attribute_value(9);} } std::optional< double > Ifc4x3_add1::IfcBuilding::ElevationOfTerrain() const { if(get_attribute_value(10).isNull()) { return std::nullopt; } double v = get_attribute_value(10); return v; } void Ifc4x3_add1::IfcBuilding::setElevationOfTerrain(const std::optional< double >& v) { if (v) {set_attribute_value(10, *v);} else {unset_attribute_value(10);} } -::Ifc4x3_add1::IfcPostalAddress Ifc4x3_add1::IfcBuilding::BuildingAddress() const { if(get_attribute_value(11).isNull()) { return ::Ifc4x3_add1::IfcPostalAddress{}; } return ((express::Base)(get_attribute_value(11))).as<::Ifc4x3_add1::IfcPostalAddress>(); } +::Ifc4x3_add1::IfcPostalAddress Ifc4x3_add1::IfcBuilding::BuildingAddress() const { if(get_attribute_value(11).isNull()) { return ::Ifc4x3_add1::IfcPostalAddress{}; } return ((express::base)(get_attribute_value(11))).as<::Ifc4x3_add1::IfcPostalAddress>(); } void Ifc4x3_add1::IfcBuilding::setBuildingAddress(const ::Ifc4x3_add1::IfcPostalAddress& v) { set_attribute_value(11, v);if constexpr (false)unset_attribute_value(11); } @@ -8657,7 +8657,7 @@ void Ifc4x3_add1::IfcBuildingElementPartType::setPredefinedType(const ::Ifc4x3_a const ifcopenshell::entity& Ifc4x3_add1::IfcBuildingElementPartType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[115]); } -Ifc4x3_add1::IfcBuildingElementPartType Ifc4x3_add1::IfcBuildingElementPartType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcBuildingElementPartTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcBuildingElementPartTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_add1::IfcBuildingElementPartType Ifc4x3_add1::IfcBuildingElementPartType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcBuildingElementPartTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcBuildingElementPartTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcBuildingElementProxy std::optional< ::Ifc4x3_add1::IfcBuildingElementProxyTypeEnum::Value > Ifc4x3_add1::IfcBuildingElementProxy::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_add1::IfcBuildingElementProxyTypeEnum::FromString(get_attribute_value(8)); } @@ -8673,7 +8673,7 @@ void Ifc4x3_add1::IfcBuildingElementProxyType::setPredefinedType(const ::Ifc4x3_ const ifcopenshell::entity& Ifc4x3_add1::IfcBuildingElementProxyType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[118]); } -Ifc4x3_add1::IfcBuildingElementProxyType Ifc4x3_add1::IfcBuildingElementProxyType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcBuildingElementProxyTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcBuildingElementProxyTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_add1::IfcBuildingElementProxyType Ifc4x3_add1::IfcBuildingElementProxyType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcBuildingElementProxyTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcBuildingElementProxyTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcBuildingStorey std::optional< double > Ifc4x3_add1::IfcBuildingStorey::Elevation() const { if(get_attribute_value(9).isNull()) { return std::nullopt; } double v = get_attribute_value(9); return v; } @@ -8703,7 +8703,7 @@ Ifc4x3_add1::IfcBuiltElement Ifc4x3_add1::IfcBuiltElement::initialize(std::strin const ifcopenshell::entity& Ifc4x3_add1::IfcBuiltElementType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[124]); } -Ifc4x3_add1::IfcBuiltElementType Ifc4x3_add1::IfcBuiltElementType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } +Ifc4x3_add1::IfcBuiltElementType Ifc4x3_add1::IfcBuiltElementType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } // Function implementations for IfcBuiltSystem std::optional< ::Ifc4x3_add1::IfcBuiltSystemTypeEnum::Value > Ifc4x3_add1::IfcBuiltSystem::PredefinedType() const { if(get_attribute_value(5).isNull()) { return std::nullopt; } return ::Ifc4x3_add1::IfcBuiltSystemTypeEnum::FromString(get_attribute_value(5)); } @@ -8729,7 +8729,7 @@ void Ifc4x3_add1::IfcBurnerType::setPredefinedType(const ::Ifc4x3_add1::IfcBurne const ifcopenshell::entity& Ifc4x3_add1::IfcBurnerType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[128]); } -Ifc4x3_add1::IfcBurnerType Ifc4x3_add1::IfcBurnerType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcBurnerTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcBurnerTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_add1::IfcBurnerType Ifc4x3_add1::IfcBurnerType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcBurnerTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcBurnerTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcCShapeProfileDef double Ifc4x3_add1::IfcCShapeProfileDef::Depth() const { double v = get_attribute_value(3); return v; } @@ -8761,7 +8761,7 @@ void Ifc4x3_add1::IfcCableCarrierFittingType::setPredefinedType(const ::Ifc4x3_a const ifcopenshell::entity& Ifc4x3_add1::IfcCableCarrierFittingType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[131]); } -Ifc4x3_add1::IfcCableCarrierFittingType Ifc4x3_add1::IfcCableCarrierFittingType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcCableCarrierFittingTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcCableCarrierFittingTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_add1::IfcCableCarrierFittingType Ifc4x3_add1::IfcCableCarrierFittingType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcCableCarrierFittingTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcCableCarrierFittingTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcCableCarrierSegment std::optional< ::Ifc4x3_add1::IfcCableCarrierSegmentTypeEnum::Value > Ifc4x3_add1::IfcCableCarrierSegment::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_add1::IfcCableCarrierSegmentTypeEnum::FromString(get_attribute_value(8)); } @@ -8777,7 +8777,7 @@ void Ifc4x3_add1::IfcCableCarrierSegmentType::setPredefinedType(const ::Ifc4x3_a const ifcopenshell::entity& Ifc4x3_add1::IfcCableCarrierSegmentType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[134]); } -Ifc4x3_add1::IfcCableCarrierSegmentType Ifc4x3_add1::IfcCableCarrierSegmentType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcCableCarrierSegmentTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcCableCarrierSegmentTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_add1::IfcCableCarrierSegmentType Ifc4x3_add1::IfcCableCarrierSegmentType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcCableCarrierSegmentTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcCableCarrierSegmentTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcCableFitting std::optional< ::Ifc4x3_add1::IfcCableFittingTypeEnum::Value > Ifc4x3_add1::IfcCableFitting::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_add1::IfcCableFittingTypeEnum::FromString(get_attribute_value(8)); } @@ -8793,7 +8793,7 @@ void Ifc4x3_add1::IfcCableFittingType::setPredefinedType(const ::Ifc4x3_add1::If const ifcopenshell::entity& Ifc4x3_add1::IfcCableFittingType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[137]); } -Ifc4x3_add1::IfcCableFittingType Ifc4x3_add1::IfcCableFittingType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcCableFittingTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcCableFittingTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_add1::IfcCableFittingType Ifc4x3_add1::IfcCableFittingType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcCableFittingTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcCableFittingTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcCableSegment std::optional< ::Ifc4x3_add1::IfcCableSegmentTypeEnum::Value > Ifc4x3_add1::IfcCableSegment::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_add1::IfcCableSegmentTypeEnum::FromString(get_attribute_value(8)); } @@ -8809,7 +8809,7 @@ void Ifc4x3_add1::IfcCableSegmentType::setPredefinedType(const ::Ifc4x3_add1::If const ifcopenshell::entity& Ifc4x3_add1::IfcCableSegmentType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[140]); } -Ifc4x3_add1::IfcCableSegmentType Ifc4x3_add1::IfcCableSegmentType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcCableSegmentTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcCableSegmentTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_add1::IfcCableSegmentType Ifc4x3_add1::IfcCableSegmentType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcCableSegmentTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcCableSegmentTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcCaissonFoundation std::optional< ::Ifc4x3_add1::IfcCaissonFoundationTypeEnum::Value > Ifc4x3_add1::IfcCaissonFoundation::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_add1::IfcCaissonFoundationTypeEnum::FromString(get_attribute_value(8)); } @@ -8825,7 +8825,7 @@ void Ifc4x3_add1::IfcCaissonFoundationType::setPredefinedType(const ::Ifc4x3_add const ifcopenshell::entity& Ifc4x3_add1::IfcCaissonFoundationType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[143]); } -Ifc4x3_add1::IfcCaissonFoundationType Ifc4x3_add1::IfcCaissonFoundationType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcCaissonFoundationTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcCaissonFoundationTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_add1::IfcCaissonFoundationType Ifc4x3_add1::IfcCaissonFoundationType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcCaissonFoundationTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcCaissonFoundationTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcCartesianPoint std::vector< double > /*[1:3]*/ Ifc4x3_add1::IfcCartesianPoint::Coordinates() const { std::vector< double > /*[1:3]*/ v = get_attribute_value(0); return v; } @@ -8862,11 +8862,11 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcCartesianPointList3D::Class() { retu Ifc4x3_add1::IfcCartesianPointList3D Ifc4x3_add1::IfcCartesianPointList3D::initialize(std::vector< std::vector< double > > v1_CoordList, std::optional< std::vector< std::string > /*[1:?]*/ > v2_TagList) { set_attribute_value(0, (v1_CoordList)); if (v2_TagList) {set_attribute_value(1, (*v2_TagList)); }; return *this; } // Function implementations for IfcCartesianTransformationOperator -::Ifc4x3_add1::IfcDirection Ifc4x3_add1::IfcCartesianTransformationOperator::Axis1() const { if(get_attribute_value(0).isNull()) { return ::Ifc4x3_add1::IfcDirection{}; } return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcDirection>(); } +::Ifc4x3_add1::IfcDirection Ifc4x3_add1::IfcCartesianTransformationOperator::Axis1() const { if(get_attribute_value(0).isNull()) { return ::Ifc4x3_add1::IfcDirection{}; } return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcDirection>(); } void Ifc4x3_add1::IfcCartesianTransformationOperator::setAxis1(const ::Ifc4x3_add1::IfcDirection& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } -::Ifc4x3_add1::IfcDirection Ifc4x3_add1::IfcCartesianTransformationOperator::Axis2() const { if(get_attribute_value(1).isNull()) { return ::Ifc4x3_add1::IfcDirection{}; } return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3_add1::IfcDirection>(); } +::Ifc4x3_add1::IfcDirection Ifc4x3_add1::IfcCartesianTransformationOperator::Axis2() const { if(get_attribute_value(1).isNull()) { return ::Ifc4x3_add1::IfcDirection{}; } return ((express::base)(get_attribute_value(1))).as<::Ifc4x3_add1::IfcDirection>(); } void Ifc4x3_add1::IfcCartesianTransformationOperator::setAxis2(const ::Ifc4x3_add1::IfcDirection& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } -::Ifc4x3_add1::IfcCartesianPoint Ifc4x3_add1::IfcCartesianTransformationOperator::LocalOrigin() const { return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3_add1::IfcCartesianPoint>(); } +::Ifc4x3_add1::IfcCartesianPoint Ifc4x3_add1::IfcCartesianTransformationOperator::LocalOrigin() const { return ((express::base)(get_attribute_value(2))).as<::Ifc4x3_add1::IfcCartesianPoint>(); } void Ifc4x3_add1::IfcCartesianTransformationOperator::setLocalOrigin(const ::Ifc4x3_add1::IfcCartesianPoint& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } std::optional< double > Ifc4x3_add1::IfcCartesianTransformationOperator::Scale() const { if(get_attribute_value(3).isNull()) { return std::nullopt; } double v = get_attribute_value(3); return v; } void Ifc4x3_add1::IfcCartesianTransformationOperator::setScale(const std::optional< double >& v) { if (v) {set_attribute_value(3, *v);} else {unset_attribute_value(3);} } @@ -8890,7 +8890,7 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcCartesianTransformationOperator2Dnon Ifc4x3_add1::IfcCartesianTransformationOperator2DnonUniform Ifc4x3_add1::IfcCartesianTransformationOperator2DnonUniform::initialize(::Ifc4x3_add1::IfcDirection v1_Axis1, ::Ifc4x3_add1::IfcDirection v2_Axis2, ::Ifc4x3_add1::IfcCartesianPoint v3_LocalOrigin, std::optional< double > v4_Scale, std::optional< double > v5_Scale2) { set_attribute_value(0, (v1_Axis1));set_attribute_value(1, (v2_Axis2));set_attribute_value(2, (v3_LocalOrigin)); if (v4_Scale) {set_attribute_value(3, (*v4_Scale)); } if (v5_Scale2) {set_attribute_value(4, (*v5_Scale2)); }; return *this; } // Function implementations for IfcCartesianTransformationOperator3D -::Ifc4x3_add1::IfcDirection Ifc4x3_add1::IfcCartesianTransformationOperator3D::Axis3() const { if(get_attribute_value(4).isNull()) { return ::Ifc4x3_add1::IfcDirection{}; } return ((express::Base)(get_attribute_value(4))).as<::Ifc4x3_add1::IfcDirection>(); } +::Ifc4x3_add1::IfcDirection Ifc4x3_add1::IfcCartesianTransformationOperator3D::Axis3() const { if(get_attribute_value(4).isNull()) { return ::Ifc4x3_add1::IfcDirection{}; } return ((express::base)(get_attribute_value(4))).as<::Ifc4x3_add1::IfcDirection>(); } void Ifc4x3_add1::IfcCartesianTransformationOperator3D::setAxis3(const ::Ifc4x3_add1::IfcDirection& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } @@ -8929,7 +8929,7 @@ void Ifc4x3_add1::IfcChillerType::setPredefinedType(const ::Ifc4x3_add1::IfcChil const ifcopenshell::entity& Ifc4x3_add1::IfcChillerType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[158]); } -Ifc4x3_add1::IfcChillerType Ifc4x3_add1::IfcChillerType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcChillerTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcChillerTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_add1::IfcChillerType Ifc4x3_add1::IfcChillerType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcChillerTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcChillerTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcChimney std::optional< ::Ifc4x3_add1::IfcChimneyTypeEnum::Value > Ifc4x3_add1::IfcChimney::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_add1::IfcChimneyTypeEnum::FromString(get_attribute_value(8)); } @@ -8945,7 +8945,7 @@ void Ifc4x3_add1::IfcChimneyType::setPredefinedType(const ::Ifc4x3_add1::IfcChim const ifcopenshell::entity& Ifc4x3_add1::IfcChimneyType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[161]); } -Ifc4x3_add1::IfcChimneyType Ifc4x3_add1::IfcChimneyType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcChimneyTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcChimneyTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_add1::IfcChimneyType Ifc4x3_add1::IfcChimneyType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcChimneyTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcChimneyTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcCircle double Ifc4x3_add1::IfcCircle::Radius() const { double v = get_attribute_value(1); return v; } @@ -8981,7 +8981,7 @@ Ifc4x3_add1::IfcCivilElement Ifc4x3_add1::IfcCivilElement::initialize(std::strin const ifcopenshell::entity& Ifc4x3_add1::IfcCivilElementType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[167]); } -Ifc4x3_add1::IfcCivilElementType Ifc4x3_add1::IfcCivilElementType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } +Ifc4x3_add1::IfcCivilElementType Ifc4x3_add1::IfcCivilElementType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } // Function implementations for IfcClassification std::optional< std::string > Ifc4x3_add1::IfcClassification::Source() const { if(get_attribute_value(0).isNull()) { return std::nullopt; } std::string v = get_attribute_value(0); return v; } @@ -9006,7 +9006,7 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcClassification::Class() { return *(( Ifc4x3_add1::IfcClassification Ifc4x3_add1::IfcClassification::initialize(std::optional< std::string > v1_Source, std::optional< std::string > v2_Edition, std::optional< std::string > v3_EditionDate, std::string v4_Name, std::optional< std::string > v5_Description, std::optional< std::string > v6_Specification, std::optional< std::vector< std::string > /*[1:?]*/ > v7_ReferenceTokens) { if (v1_Source) {set_attribute_value(0, (*v1_Source)); } if (v2_Edition) {set_attribute_value(1, (*v2_Edition)); } if (v3_EditionDate) {set_attribute_value(2, (*v3_EditionDate)); }set_attribute_value(3, (v4_Name)); if (v5_Description) {set_attribute_value(4, (*v5_Description)); } if (v6_Specification) {set_attribute_value(5, (*v6_Specification)); } if (v7_ReferenceTokens) {set_attribute_value(6, (*v7_ReferenceTokens)); }; return *this; } // Function implementations for IfcClassificationReference -::Ifc4x3_add1::IfcClassificationReferenceSelect Ifc4x3_add1::IfcClassificationReference::ReferencedSource() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3_add1::IfcClassificationReferenceSelect{}; } return ((express::Base)(get_attribute_value(3))).as<::Ifc4x3_add1::IfcClassificationReferenceSelect>(); } +::Ifc4x3_add1::IfcClassificationReferenceSelect Ifc4x3_add1::IfcClassificationReference::ReferencedSource() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3_add1::IfcClassificationReferenceSelect{}; } return ((express::base)(get_attribute_value(3))).as<::Ifc4x3_add1::IfcClassificationReferenceSelect>(); } void Ifc4x3_add1::IfcClassificationReference::setReferencedSource(const ::Ifc4x3_add1::IfcClassificationReferenceSelect& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } std::optional< std::string > Ifc4x3_add1::IfcClassificationReference::Description() const { if(get_attribute_value(4).isNull()) { return std::nullopt; } std::string v = get_attribute_value(4); return v; } void Ifc4x3_add1::IfcClassificationReference::setDescription(const std::optional< std::string >& v) { if (v) {set_attribute_value(4, *v);} else {unset_attribute_value(4);} } @@ -9023,7 +9023,7 @@ Ifc4x3_add1::IfcClassificationReference Ifc4x3_add1::IfcClassificationReference: const ifcopenshell::entity& Ifc4x3_add1::IfcClosedShell::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[172]); } -Ifc4x3_add1::IfcClosedShell Ifc4x3_add1::IfcClosedShell::initialize(std::vector< ::Ifc4x3_add1::IfcFace > v1_CfsFaces) { set_attribute_value(0, cast_vector(v1_CfsFaces));; return *this; } +Ifc4x3_add1::IfcClosedShell Ifc4x3_add1::IfcClosedShell::initialize(std::vector< ::Ifc4x3_add1::IfcFace > v1_CfsFaces) { set_attribute_value(0, cast_vector(v1_CfsFaces));; return *this; } // Function implementations for IfcClothoid double Ifc4x3_add1::IfcClothoid::ClothoidConstant() const { double v = get_attribute_value(1); return v; } @@ -9047,7 +9047,7 @@ void Ifc4x3_add1::IfcCoilType::setPredefinedType(const ::Ifc4x3_add1::IfcCoilTyp const ifcopenshell::entity& Ifc4x3_add1::IfcCoilType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[175]); } -Ifc4x3_add1::IfcCoilType Ifc4x3_add1::IfcCoilType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcCoilTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcCoilTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_add1::IfcCoilType Ifc4x3_add1::IfcCoilType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcCoilTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcCoilTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcColourRgb double Ifc4x3_add1::IfcColourRgb::Red() const { double v = get_attribute_value(1); return v; } @@ -9091,7 +9091,7 @@ void Ifc4x3_add1::IfcColumnType::setPredefinedType(const ::Ifc4x3_add1::IfcColum const ifcopenshell::entity& Ifc4x3_add1::IfcColumnType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[183]); } -Ifc4x3_add1::IfcColumnType Ifc4x3_add1::IfcColumnType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcColumnTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcColumnTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_add1::IfcColumnType Ifc4x3_add1::IfcColumnType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcColumnTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcColumnTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcCommunicationsAppliance std::optional< ::Ifc4x3_add1::IfcCommunicationsApplianceTypeEnum::Value > Ifc4x3_add1::IfcCommunicationsAppliance::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_add1::IfcCommunicationsApplianceTypeEnum::FromString(get_attribute_value(8)); } @@ -9107,50 +9107,50 @@ void Ifc4x3_add1::IfcCommunicationsApplianceType::setPredefinedType(const ::Ifc4 const ifcopenshell::entity& Ifc4x3_add1::IfcCommunicationsApplianceType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[186]); } -Ifc4x3_add1::IfcCommunicationsApplianceType Ifc4x3_add1::IfcCommunicationsApplianceType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcCommunicationsApplianceTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcCommunicationsApplianceTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_add1::IfcCommunicationsApplianceType Ifc4x3_add1::IfcCommunicationsApplianceType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcCommunicationsApplianceTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcCommunicationsApplianceTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcComplexProperty std::string Ifc4x3_add1::IfcComplexProperty::UsageName() const { std::string v = get_attribute_value(2); return v; } void Ifc4x3_add1::IfcComplexProperty::setUsageName(const std::string& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } -std::vector< ::Ifc4x3_add1::IfcProperty > Ifc4x3_add1::IfcComplexProperty::HasProperties() const { std::vector es = get_attribute_value(3); return cast_vector<::Ifc4x3_add1::IfcProperty>(es); } -void Ifc4x3_add1::IfcComplexProperty::setHasProperties(const std::vector< ::Ifc4x3_add1::IfcProperty >& v) { set_attribute_value(3, cast_vector(v));if constexpr (false)unset_attribute_value(3); } +std::vector< ::Ifc4x3_add1::IfcProperty > Ifc4x3_add1::IfcComplexProperty::HasProperties() const { std::vector es = get_attribute_value(3); return cast_vector<::Ifc4x3_add1::IfcProperty>(es); } +void Ifc4x3_add1::IfcComplexProperty::setHasProperties(const std::vector< ::Ifc4x3_add1::IfcProperty >& v) { set_attribute_value(3, cast_vector(v));if constexpr (false)unset_attribute_value(3); } const ifcopenshell::entity& Ifc4x3_add1::IfcComplexProperty::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[189]); } -Ifc4x3_add1::IfcComplexProperty Ifc4x3_add1::IfcComplexProperty::initialize(std::string v1_Name, std::optional< std::string > v2_Specification, std::string v3_UsageName, std::vector< ::Ifc4x3_add1::IfcProperty > v4_HasProperties) { set_attribute_value(0, (v1_Name)); if (v2_Specification) {set_attribute_value(1, (*v2_Specification)); }set_attribute_value(2, (v3_UsageName));set_attribute_value(3, cast_vector(v4_HasProperties));; return *this; } +Ifc4x3_add1::IfcComplexProperty Ifc4x3_add1::IfcComplexProperty::initialize(std::string v1_Name, std::optional< std::string > v2_Specification, std::string v3_UsageName, std::vector< ::Ifc4x3_add1::IfcProperty > v4_HasProperties) { set_attribute_value(0, (v1_Name)); if (v2_Specification) {set_attribute_value(1, (*v2_Specification)); }set_attribute_value(2, (v3_UsageName));set_attribute_value(3, cast_vector(v4_HasProperties));; return *this; } // Function implementations for IfcComplexPropertyTemplate std::optional< std::string > Ifc4x3_add1::IfcComplexPropertyTemplate::UsageName() const { if(get_attribute_value(4).isNull()) { return std::nullopt; } std::string v = get_attribute_value(4); return v; } void Ifc4x3_add1::IfcComplexPropertyTemplate::setUsageName(const std::optional< std::string >& v) { if (v) {set_attribute_value(4, *v);} else {unset_attribute_value(4);} } std::optional< ::Ifc4x3_add1::IfcComplexPropertyTemplateTypeEnum::Value > Ifc4x3_add1::IfcComplexPropertyTemplate::TemplateType() const { if(get_attribute_value(5).isNull()) { return std::nullopt; } return ::Ifc4x3_add1::IfcComplexPropertyTemplateTypeEnum::FromString(get_attribute_value(5)); } void Ifc4x3_add1::IfcComplexPropertyTemplate::setTemplateType(const std::optional< ::Ifc4x3_add1::IfcComplexPropertyTemplateTypeEnum::Value >& v) { if (v) {set_attribute_value(5, enumeration_reference(&::Ifc4x3_add1::IfcComplexPropertyTemplateTypeEnum::Class(), (size_t) *v));} else {unset_attribute_value(5);} } -std::optional< std::vector< ::Ifc4x3_add1::IfcPropertyTemplate > > Ifc4x3_add1::IfcComplexPropertyTemplate::HasPropertyTemplates() const { if(get_attribute_value(6).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(6); return cast_vector<::Ifc4x3_add1::IfcPropertyTemplate>(es); } -void Ifc4x3_add1::IfcComplexPropertyTemplate::setHasPropertyTemplates(const std::optional< std::vector< ::Ifc4x3_add1::IfcPropertyTemplate > >& v) { if (v) {set_attribute_value(6, cast_vector(*v));} else {unset_attribute_value(6);} } +std::optional< std::vector< ::Ifc4x3_add1::IfcPropertyTemplate > > Ifc4x3_add1::IfcComplexPropertyTemplate::HasPropertyTemplates() const { if(get_attribute_value(6).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(6); return cast_vector<::Ifc4x3_add1::IfcPropertyTemplate>(es); } +void Ifc4x3_add1::IfcComplexPropertyTemplate::setHasPropertyTemplates(const std::optional< std::vector< ::Ifc4x3_add1::IfcPropertyTemplate > >& v) { if (v) {set_attribute_value(6, cast_vector(*v));} else {unset_attribute_value(6);} } const ifcopenshell::entity& Ifc4x3_add1::IfcComplexPropertyTemplate::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[190]); } -Ifc4x3_add1::IfcComplexPropertyTemplate Ifc4x3_add1::IfcComplexPropertyTemplate::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_UsageName, std::optional< ::Ifc4x3_add1::IfcComplexPropertyTemplateTypeEnum::Value > v6_TemplateType, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertyTemplate > > v7_HasPropertyTemplates) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_UsageName) {set_attribute_value(4, (*v5_UsageName)); } if (v6_TemplateType) {set_attribute_value(5, (enumeration_reference(&::Ifc4x3_add1::IfcComplexPropertyTemplateTypeEnum::Class(),(size_t)*v6_TemplateType))); } if (v7_HasPropertyTemplates) {set_attribute_value(6, cast_vector(*v7_HasPropertyTemplates)); }; return *this; } +Ifc4x3_add1::IfcComplexPropertyTemplate Ifc4x3_add1::IfcComplexPropertyTemplate::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_UsageName, std::optional< ::Ifc4x3_add1::IfcComplexPropertyTemplateTypeEnum::Value > v6_TemplateType, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertyTemplate > > v7_HasPropertyTemplates) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_UsageName) {set_attribute_value(4, (*v5_UsageName)); } if (v6_TemplateType) {set_attribute_value(5, (enumeration_reference(&::Ifc4x3_add1::IfcComplexPropertyTemplateTypeEnum::Class(),(size_t)*v6_TemplateType))); } if (v7_HasPropertyTemplates) {set_attribute_value(6, cast_vector(*v7_HasPropertyTemplates)); }; return *this; } // Function implementations for IfcCompositeCurve -std::vector< ::Ifc4x3_add1::IfcSegment > Ifc4x3_add1::IfcCompositeCurve::Segments() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3_add1::IfcSegment>(es); } -void Ifc4x3_add1::IfcCompositeCurve::setSegments(const std::vector< ::Ifc4x3_add1::IfcSegment >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } +std::vector< ::Ifc4x3_add1::IfcSegment > Ifc4x3_add1::IfcCompositeCurve::Segments() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3_add1::IfcSegment>(es); } +void Ifc4x3_add1::IfcCompositeCurve::setSegments(const std::vector< ::Ifc4x3_add1::IfcSegment >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } boost::logic::tribool Ifc4x3_add1::IfcCompositeCurve::SelfIntersect() const { boost::logic::tribool v = get_attribute_value(1); return v; } void Ifc4x3_add1::IfcCompositeCurve::setSelfIntersect(const boost::logic::tribool& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } const ifcopenshell::entity& Ifc4x3_add1::IfcCompositeCurve::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[192]); } -Ifc4x3_add1::IfcCompositeCurve Ifc4x3_add1::IfcCompositeCurve::initialize(std::vector< ::Ifc4x3_add1::IfcSegment > v1_Segments, boost::logic::tribool v2_SelfIntersect) { set_attribute_value(0, cast_vector(v1_Segments));set_attribute_value(1, (v2_SelfIntersect));; return *this; } +Ifc4x3_add1::IfcCompositeCurve Ifc4x3_add1::IfcCompositeCurve::initialize(std::vector< ::Ifc4x3_add1::IfcSegment > v1_Segments, boost::logic::tribool v2_SelfIntersect) { set_attribute_value(0, cast_vector(v1_Segments));set_attribute_value(1, (v2_SelfIntersect));; return *this; } // Function implementations for IfcCompositeCurveOnSurface const ifcopenshell::entity& Ifc4x3_add1::IfcCompositeCurveOnSurface::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[193]); } -Ifc4x3_add1::IfcCompositeCurveOnSurface Ifc4x3_add1::IfcCompositeCurveOnSurface::initialize(std::vector< ::Ifc4x3_add1::IfcSegment > v1_Segments, boost::logic::tribool v2_SelfIntersect) { set_attribute_value(0, cast_vector(v1_Segments));set_attribute_value(1, (v2_SelfIntersect));; return *this; } +Ifc4x3_add1::IfcCompositeCurveOnSurface Ifc4x3_add1::IfcCompositeCurveOnSurface::initialize(std::vector< ::Ifc4x3_add1::IfcSegment > v1_Segments, boost::logic::tribool v2_SelfIntersect) { set_attribute_value(0, cast_vector(v1_Segments));set_attribute_value(1, (v2_SelfIntersect));; return *this; } // Function implementations for IfcCompositeCurveSegment bool Ifc4x3_add1::IfcCompositeCurveSegment::SameSense() const { bool v = get_attribute_value(1); return v; } void Ifc4x3_add1::IfcCompositeCurveSegment::setSameSense(const bool& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } -::Ifc4x3_add1::IfcCurve Ifc4x3_add1::IfcCompositeCurveSegment::ParentCurve() const { return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3_add1::IfcCurve>(); } +::Ifc4x3_add1::IfcCurve Ifc4x3_add1::IfcCompositeCurveSegment::ParentCurve() const { return ((express::base)(get_attribute_value(2))).as<::Ifc4x3_add1::IfcCurve>(); } void Ifc4x3_add1::IfcCompositeCurveSegment::setParentCurve(const ::Ifc4x3_add1::IfcCurve& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } @@ -9158,14 +9158,14 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcCompositeCurveSegment::Class() { ret Ifc4x3_add1::IfcCompositeCurveSegment Ifc4x3_add1::IfcCompositeCurveSegment::initialize(::Ifc4x3_add1::IfcTransitionCode::Value v1_Transition, bool v2_SameSense, ::Ifc4x3_add1::IfcCurve v3_ParentCurve) { set_attribute_value(0, (enumeration_reference(&::Ifc4x3_add1::IfcTransitionCode::Class(),(size_t)v1_Transition)));set_attribute_value(1, (v2_SameSense));set_attribute_value(2, (v3_ParentCurve));; return *this; } // Function implementations for IfcCompositeProfileDef -std::vector< ::Ifc4x3_add1::IfcProfileDef > Ifc4x3_add1::IfcCompositeProfileDef::Profiles() const { std::vector es = get_attribute_value(2); return cast_vector<::Ifc4x3_add1::IfcProfileDef>(es); } -void Ifc4x3_add1::IfcCompositeProfileDef::setProfiles(const std::vector< ::Ifc4x3_add1::IfcProfileDef >& v) { set_attribute_value(2, cast_vector(v));if constexpr (false)unset_attribute_value(2); } +std::vector< ::Ifc4x3_add1::IfcProfileDef > Ifc4x3_add1::IfcCompositeProfileDef::Profiles() const { std::vector es = get_attribute_value(2); return cast_vector<::Ifc4x3_add1::IfcProfileDef>(es); } +void Ifc4x3_add1::IfcCompositeProfileDef::setProfiles(const std::vector< ::Ifc4x3_add1::IfcProfileDef >& v) { set_attribute_value(2, cast_vector(v));if constexpr (false)unset_attribute_value(2); } std::optional< std::string > Ifc4x3_add1::IfcCompositeProfileDef::Label() const { if(get_attribute_value(3).isNull()) { return std::nullopt; } std::string v = get_attribute_value(3); return v; } void Ifc4x3_add1::IfcCompositeProfileDef::setLabel(const std::optional< std::string >& v) { if (v) {set_attribute_value(3, *v);} else {unset_attribute_value(3);} } const ifcopenshell::entity& Ifc4x3_add1::IfcCompositeProfileDef::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[195]); } -Ifc4x3_add1::IfcCompositeProfileDef Ifc4x3_add1::IfcCompositeProfileDef::initialize(::Ifc4x3_add1::IfcProfileTypeEnum::Value v1_ProfileType, std::optional< std::string > v2_ProfileName, std::vector< ::Ifc4x3_add1::IfcProfileDef > v3_Profiles, std::optional< std::string > v4_Label) { set_attribute_value(0, (enumeration_reference(&::Ifc4x3_add1::IfcProfileTypeEnum::Class(),(size_t)v1_ProfileType))); if (v2_ProfileName) {set_attribute_value(1, (*v2_ProfileName)); }set_attribute_value(2, cast_vector(v3_Profiles)); if (v4_Label) {set_attribute_value(3, (*v4_Label)); }; return *this; } +Ifc4x3_add1::IfcCompositeProfileDef Ifc4x3_add1::IfcCompositeProfileDef::initialize(::Ifc4x3_add1::IfcProfileTypeEnum::Value v1_ProfileType, std::optional< std::string > v2_ProfileName, std::vector< ::Ifc4x3_add1::IfcProfileDef > v3_Profiles, std::optional< std::string > v4_Label) { set_attribute_value(0, (enumeration_reference(&::Ifc4x3_add1::IfcProfileTypeEnum::Class(),(size_t)v1_ProfileType))); if (v2_ProfileName) {set_attribute_value(1, (*v2_ProfileName)); }set_attribute_value(2, cast_vector(v3_Profiles)); if (v4_Label) {set_attribute_value(3, (*v4_Label)); }; return *this; } // Function implementations for IfcCompressor std::optional< ::Ifc4x3_add1::IfcCompressorTypeEnum::Value > Ifc4x3_add1::IfcCompressor::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_add1::IfcCompressorTypeEnum::FromString(get_attribute_value(8)); } @@ -9181,7 +9181,7 @@ void Ifc4x3_add1::IfcCompressorType::setPredefinedType(const ::Ifc4x3_add1::IfcC const ifcopenshell::entity& Ifc4x3_add1::IfcCompressorType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[198]); } -Ifc4x3_add1::IfcCompressorType Ifc4x3_add1::IfcCompressorType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcCompressorTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcCompressorTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_add1::IfcCompressorType Ifc4x3_add1::IfcCompressorType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcCompressorTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcCompressorTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcCondenser std::optional< ::Ifc4x3_add1::IfcCondenserTypeEnum::Value > Ifc4x3_add1::IfcCondenser::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_add1::IfcCondenserTypeEnum::FromString(get_attribute_value(8)); } @@ -9197,10 +9197,10 @@ void Ifc4x3_add1::IfcCondenserType::setPredefinedType(const ::Ifc4x3_add1::IfcCo const ifcopenshell::entity& Ifc4x3_add1::IfcCondenserType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[201]); } -Ifc4x3_add1::IfcCondenserType Ifc4x3_add1::IfcCondenserType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcCondenserTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcCondenserTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_add1::IfcCondenserType Ifc4x3_add1::IfcCondenserType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcCondenserTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcCondenserTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcConic -::Ifc4x3_add1::IfcAxis2Placement Ifc4x3_add1::IfcConic::Position() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcAxis2Placement>(); } +::Ifc4x3_add1::IfcAxis2Placement Ifc4x3_add1::IfcConic::Position() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcAxis2Placement>(); } void Ifc4x3_add1::IfcConic::setPosition(const ::Ifc4x3_add1::IfcAxis2Placement& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } @@ -9208,17 +9208,17 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcConic::Class() { return *((ifcopensh Ifc4x3_add1::IfcConic Ifc4x3_add1::IfcConic::initialize(::Ifc4x3_add1::IfcAxis2Placement v1_Position) { set_attribute_value(0, (v1_Position));; return *this; } // Function implementations for IfcConnectedFaceSet -std::vector< ::Ifc4x3_add1::IfcFace > Ifc4x3_add1::IfcConnectedFaceSet::CfsFaces() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3_add1::IfcFace>(es); } -void Ifc4x3_add1::IfcConnectedFaceSet::setCfsFaces(const std::vector< ::Ifc4x3_add1::IfcFace >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } +std::vector< ::Ifc4x3_add1::IfcFace > Ifc4x3_add1::IfcConnectedFaceSet::CfsFaces() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3_add1::IfcFace>(es); } +void Ifc4x3_add1::IfcConnectedFaceSet::setCfsFaces(const std::vector< ::Ifc4x3_add1::IfcFace >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } const ifcopenshell::entity& Ifc4x3_add1::IfcConnectedFaceSet::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[204]); } -Ifc4x3_add1::IfcConnectedFaceSet Ifc4x3_add1::IfcConnectedFaceSet::initialize(std::vector< ::Ifc4x3_add1::IfcFace > v1_CfsFaces) { set_attribute_value(0, cast_vector(v1_CfsFaces));; return *this; } +Ifc4x3_add1::IfcConnectedFaceSet Ifc4x3_add1::IfcConnectedFaceSet::initialize(std::vector< ::Ifc4x3_add1::IfcFace > v1_CfsFaces) { set_attribute_value(0, cast_vector(v1_CfsFaces));; return *this; } // Function implementations for IfcConnectionCurveGeometry -::Ifc4x3_add1::IfcCurveOrEdgeCurve Ifc4x3_add1::IfcConnectionCurveGeometry::CurveOnRelatingElement() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcCurveOrEdgeCurve>(); } +::Ifc4x3_add1::IfcCurveOrEdgeCurve Ifc4x3_add1::IfcConnectionCurveGeometry::CurveOnRelatingElement() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcCurveOrEdgeCurve>(); } void Ifc4x3_add1::IfcConnectionCurveGeometry::setCurveOnRelatingElement(const ::Ifc4x3_add1::IfcCurveOrEdgeCurve& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } -::Ifc4x3_add1::IfcCurveOrEdgeCurve Ifc4x3_add1::IfcConnectionCurveGeometry::CurveOnRelatedElement() const { if(get_attribute_value(1).isNull()) { return ::Ifc4x3_add1::IfcCurveOrEdgeCurve{}; } return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3_add1::IfcCurveOrEdgeCurve>(); } +::Ifc4x3_add1::IfcCurveOrEdgeCurve Ifc4x3_add1::IfcConnectionCurveGeometry::CurveOnRelatedElement() const { if(get_attribute_value(1).isNull()) { return ::Ifc4x3_add1::IfcCurveOrEdgeCurve{}; } return ((express::base)(get_attribute_value(1))).as<::Ifc4x3_add1::IfcCurveOrEdgeCurve>(); } void Ifc4x3_add1::IfcConnectionCurveGeometry::setCurveOnRelatedElement(const ::Ifc4x3_add1::IfcCurveOrEdgeCurve& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } @@ -9244,9 +9244,9 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcConnectionPointEccentricity::Class() Ifc4x3_add1::IfcConnectionPointEccentricity Ifc4x3_add1::IfcConnectionPointEccentricity::initialize(::Ifc4x3_add1::IfcPointOrVertexPoint v1_PointOnRelatingElement, ::Ifc4x3_add1::IfcPointOrVertexPoint v2_PointOnRelatedElement, std::optional< double > v3_EccentricityInX, std::optional< double > v4_EccentricityInY, std::optional< double > v5_EccentricityInZ) { set_attribute_value(0, (v1_PointOnRelatingElement));set_attribute_value(1, (v2_PointOnRelatedElement)); if (v3_EccentricityInX) {set_attribute_value(2, (*v3_EccentricityInX)); } if (v4_EccentricityInY) {set_attribute_value(3, (*v4_EccentricityInY)); } if (v5_EccentricityInZ) {set_attribute_value(4, (*v5_EccentricityInZ)); }; return *this; } // Function implementations for IfcConnectionPointGeometry -::Ifc4x3_add1::IfcPointOrVertexPoint Ifc4x3_add1::IfcConnectionPointGeometry::PointOnRelatingElement() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcPointOrVertexPoint>(); } +::Ifc4x3_add1::IfcPointOrVertexPoint Ifc4x3_add1::IfcConnectionPointGeometry::PointOnRelatingElement() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcPointOrVertexPoint>(); } void Ifc4x3_add1::IfcConnectionPointGeometry::setPointOnRelatingElement(const ::Ifc4x3_add1::IfcPointOrVertexPoint& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } -::Ifc4x3_add1::IfcPointOrVertexPoint Ifc4x3_add1::IfcConnectionPointGeometry::PointOnRelatedElement() const { if(get_attribute_value(1).isNull()) { return ::Ifc4x3_add1::IfcPointOrVertexPoint{}; } return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3_add1::IfcPointOrVertexPoint>(); } +::Ifc4x3_add1::IfcPointOrVertexPoint Ifc4x3_add1::IfcConnectionPointGeometry::PointOnRelatedElement() const { if(get_attribute_value(1).isNull()) { return ::Ifc4x3_add1::IfcPointOrVertexPoint{}; } return ((express::base)(get_attribute_value(1))).as<::Ifc4x3_add1::IfcPointOrVertexPoint>(); } void Ifc4x3_add1::IfcConnectionPointGeometry::setPointOnRelatedElement(const ::Ifc4x3_add1::IfcPointOrVertexPoint& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } @@ -9254,9 +9254,9 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcConnectionPointGeometry::Class() { r Ifc4x3_add1::IfcConnectionPointGeometry Ifc4x3_add1::IfcConnectionPointGeometry::initialize(::Ifc4x3_add1::IfcPointOrVertexPoint v1_PointOnRelatingElement, ::Ifc4x3_add1::IfcPointOrVertexPoint v2_PointOnRelatedElement) { set_attribute_value(0, (v1_PointOnRelatingElement));set_attribute_value(1, (v2_PointOnRelatedElement));; return *this; } // Function implementations for IfcConnectionSurfaceGeometry -::Ifc4x3_add1::IfcSurfaceOrFaceSurface Ifc4x3_add1::IfcConnectionSurfaceGeometry::SurfaceOnRelatingElement() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcSurfaceOrFaceSurface>(); } +::Ifc4x3_add1::IfcSurfaceOrFaceSurface Ifc4x3_add1::IfcConnectionSurfaceGeometry::SurfaceOnRelatingElement() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcSurfaceOrFaceSurface>(); } void Ifc4x3_add1::IfcConnectionSurfaceGeometry::setSurfaceOnRelatingElement(const ::Ifc4x3_add1::IfcSurfaceOrFaceSurface& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } -::Ifc4x3_add1::IfcSurfaceOrFaceSurface Ifc4x3_add1::IfcConnectionSurfaceGeometry::SurfaceOnRelatedElement() const { if(get_attribute_value(1).isNull()) { return ::Ifc4x3_add1::IfcSurfaceOrFaceSurface{}; } return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3_add1::IfcSurfaceOrFaceSurface>(); } +::Ifc4x3_add1::IfcSurfaceOrFaceSurface Ifc4x3_add1::IfcConnectionSurfaceGeometry::SurfaceOnRelatedElement() const { if(get_attribute_value(1).isNull()) { return ::Ifc4x3_add1::IfcSurfaceOrFaceSurface{}; } return ((express::base)(get_attribute_value(1))).as<::Ifc4x3_add1::IfcSurfaceOrFaceSurface>(); } void Ifc4x3_add1::IfcConnectionSurfaceGeometry::setSurfaceOnRelatedElement(const ::Ifc4x3_add1::IfcSurfaceOrFaceSurface& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } @@ -9264,9 +9264,9 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcConnectionSurfaceGeometry::Class() { Ifc4x3_add1::IfcConnectionSurfaceGeometry Ifc4x3_add1::IfcConnectionSurfaceGeometry::initialize(::Ifc4x3_add1::IfcSurfaceOrFaceSurface v1_SurfaceOnRelatingElement, ::Ifc4x3_add1::IfcSurfaceOrFaceSurface v2_SurfaceOnRelatedElement) { set_attribute_value(0, (v1_SurfaceOnRelatingElement));set_attribute_value(1, (v2_SurfaceOnRelatedElement));; return *this; } // Function implementations for IfcConnectionVolumeGeometry -::Ifc4x3_add1::IfcSolidOrShell Ifc4x3_add1::IfcConnectionVolumeGeometry::VolumeOnRelatingElement() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcSolidOrShell>(); } +::Ifc4x3_add1::IfcSolidOrShell Ifc4x3_add1::IfcConnectionVolumeGeometry::VolumeOnRelatingElement() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcSolidOrShell>(); } void Ifc4x3_add1::IfcConnectionVolumeGeometry::setVolumeOnRelatingElement(const ::Ifc4x3_add1::IfcSolidOrShell& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } -::Ifc4x3_add1::IfcSolidOrShell Ifc4x3_add1::IfcConnectionVolumeGeometry::VolumeOnRelatedElement() const { if(get_attribute_value(1).isNull()) { return ::Ifc4x3_add1::IfcSolidOrShell{}; } return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3_add1::IfcSolidOrShell>(); } +::Ifc4x3_add1::IfcSolidOrShell Ifc4x3_add1::IfcConnectionVolumeGeometry::VolumeOnRelatedElement() const { if(get_attribute_value(1).isNull()) { return ::Ifc4x3_add1::IfcSolidOrShell{}; } return ((express::base)(get_attribute_value(1))).as<::Ifc4x3_add1::IfcSolidOrShell>(); } void Ifc4x3_add1::IfcConnectionVolumeGeometry::setVolumeOnRelatedElement(const ::Ifc4x3_add1::IfcSolidOrShell& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } @@ -9282,7 +9282,7 @@ void Ifc4x3_add1::IfcConstraint::setDescription(const std::optional< std::string void Ifc4x3_add1::IfcConstraint::setConstraintGrade(const ::Ifc4x3_add1::IfcConstraintEnum::Value& v) { set_attribute_value(2, enumeration_reference(&::Ifc4x3_add1::IfcConstraintEnum::Class(), (size_t) v));if constexpr (false)unset_attribute_value(2); } std::optional< std::string > Ifc4x3_add1::IfcConstraint::ConstraintSource() const { if(get_attribute_value(3).isNull()) { return std::nullopt; } std::string v = get_attribute_value(3); return v; } void Ifc4x3_add1::IfcConstraint::setConstraintSource(const std::optional< std::string >& v) { if (v) {set_attribute_value(3, *v);} else {unset_attribute_value(3);} } -::Ifc4x3_add1::IfcActorSelect Ifc4x3_add1::IfcConstraint::CreatingActor() const { if(get_attribute_value(4).isNull()) { return ::Ifc4x3_add1::IfcActorSelect{}; } return ((express::Base)(get_attribute_value(4))).as<::Ifc4x3_add1::IfcActorSelect>(); } +::Ifc4x3_add1::IfcActorSelect Ifc4x3_add1::IfcConstraint::CreatingActor() const { if(get_attribute_value(4).isNull()) { return ::Ifc4x3_add1::IfcActorSelect{}; } return ((express::base)(get_attribute_value(4))).as<::Ifc4x3_add1::IfcActorSelect>(); } void Ifc4x3_add1::IfcConstraint::setCreatingActor(const ::Ifc4x3_add1::IfcActorSelect& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } std::optional< std::string > Ifc4x3_add1::IfcConstraint::CreationTime() const { if(get_attribute_value(5).isNull()) { return std::nullopt; } std::string v = get_attribute_value(5); return v; } void Ifc4x3_add1::IfcConstraint::setCreationTime(const std::optional< std::string >& v) { if (v) {set_attribute_value(5, *v);} else {unset_attribute_value(5);} } @@ -9301,7 +9301,7 @@ void Ifc4x3_add1::IfcConstructionEquipmentResource::setPredefinedType(const std: const ifcopenshell::entity& Ifc4x3_add1::IfcConstructionEquipmentResource::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[214]); } -Ifc4x3_add1::IfcConstructionEquipmentResource Ifc4x3_add1::IfcConstructionEquipmentResource::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, std::optional< std::string > v6_Identification, std::optional< std::string > v7_LongDescription, ::Ifc4x3_add1::IfcResourceTime v8_Usage, std::optional< std::vector< ::Ifc4x3_add1::IfcAppliedValue > > v9_BaseCosts, ::Ifc4x3_add1::IfcPhysicalQuantity v10_BaseQuantity, std::optional< ::Ifc4x3_add1::IfcConstructionEquipmentResourceTypeEnum::Value > v11_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); } if (v6_Identification) {set_attribute_value(5, (*v6_Identification)); } if (v7_LongDescription) {set_attribute_value(6, (*v7_LongDescription)); }set_attribute_value(7, (v8_Usage)); if (v9_BaseCosts) {set_attribute_value(8, cast_vector(*v9_BaseCosts)); }set_attribute_value(9, (v10_BaseQuantity)); if (v11_PredefinedType) {set_attribute_value(10, (enumeration_reference(&::Ifc4x3_add1::IfcConstructionEquipmentResourceTypeEnum::Class(),(size_t)*v11_PredefinedType))); }; return *this; } +Ifc4x3_add1::IfcConstructionEquipmentResource Ifc4x3_add1::IfcConstructionEquipmentResource::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, std::optional< std::string > v6_Identification, std::optional< std::string > v7_LongDescription, ::Ifc4x3_add1::IfcResourceTime v8_Usage, std::optional< std::vector< ::Ifc4x3_add1::IfcAppliedValue > > v9_BaseCosts, ::Ifc4x3_add1::IfcPhysicalQuantity v10_BaseQuantity, std::optional< ::Ifc4x3_add1::IfcConstructionEquipmentResourceTypeEnum::Value > v11_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); } if (v6_Identification) {set_attribute_value(5, (*v6_Identification)); } if (v7_LongDescription) {set_attribute_value(6, (*v7_LongDescription)); }set_attribute_value(7, (v8_Usage)); if (v9_BaseCosts) {set_attribute_value(8, cast_vector(*v9_BaseCosts)); }set_attribute_value(9, (v10_BaseQuantity)); if (v11_PredefinedType) {set_attribute_value(10, (enumeration_reference(&::Ifc4x3_add1::IfcConstructionEquipmentResourceTypeEnum::Class(),(size_t)*v11_PredefinedType))); }; return *this; } // Function implementations for IfcConstructionEquipmentResourceType ::Ifc4x3_add1::IfcConstructionEquipmentResourceTypeEnum::Value Ifc4x3_add1::IfcConstructionEquipmentResourceType::PredefinedType() const { return ::Ifc4x3_add1::IfcConstructionEquipmentResourceTypeEnum::FromString(get_attribute_value(11)); } @@ -9309,7 +9309,7 @@ void Ifc4x3_add1::IfcConstructionEquipmentResourceType::setPredefinedType(const const ifcopenshell::entity& Ifc4x3_add1::IfcConstructionEquipmentResourceType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[215]); } -Ifc4x3_add1::IfcConstructionEquipmentResourceType Ifc4x3_add1::IfcConstructionEquipmentResourceType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::string > v7_Identification, std::optional< std::string > v8_LongDescription, std::optional< std::string > v9_ResourceType, std::optional< std::vector< ::Ifc4x3_add1::IfcAppliedValue > > v10_BaseCosts, ::Ifc4x3_add1::IfcPhysicalQuantity v11_BaseQuantity, ::Ifc4x3_add1::IfcConstructionEquipmentResourceTypeEnum::Value v12_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_Identification) {set_attribute_value(6, (*v7_Identification)); } if (v8_LongDescription) {set_attribute_value(7, (*v8_LongDescription)); } if (v9_ResourceType) {set_attribute_value(8, (*v9_ResourceType)); } if (v10_BaseCosts) {set_attribute_value(9, cast_vector(*v10_BaseCosts)); }set_attribute_value(10, (v11_BaseQuantity));set_attribute_value(11, (enumeration_reference(&::Ifc4x3_add1::IfcConstructionEquipmentResourceTypeEnum::Class(),(size_t)v12_PredefinedType)));; return *this; } +Ifc4x3_add1::IfcConstructionEquipmentResourceType Ifc4x3_add1::IfcConstructionEquipmentResourceType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::string > v7_Identification, std::optional< std::string > v8_LongDescription, std::optional< std::string > v9_ResourceType, std::optional< std::vector< ::Ifc4x3_add1::IfcAppliedValue > > v10_BaseCosts, ::Ifc4x3_add1::IfcPhysicalQuantity v11_BaseQuantity, ::Ifc4x3_add1::IfcConstructionEquipmentResourceTypeEnum::Value v12_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_Identification) {set_attribute_value(6, (*v7_Identification)); } if (v8_LongDescription) {set_attribute_value(7, (*v8_LongDescription)); } if (v9_ResourceType) {set_attribute_value(8, (*v9_ResourceType)); } if (v10_BaseCosts) {set_attribute_value(9, cast_vector(*v10_BaseCosts)); }set_attribute_value(10, (v11_BaseQuantity));set_attribute_value(11, (enumeration_reference(&::Ifc4x3_add1::IfcConstructionEquipmentResourceTypeEnum::Class(),(size_t)v12_PredefinedType)));; return *this; } // Function implementations for IfcConstructionMaterialResource std::optional< ::Ifc4x3_add1::IfcConstructionMaterialResourceTypeEnum::Value > Ifc4x3_add1::IfcConstructionMaterialResource::PredefinedType() const { if(get_attribute_value(10).isNull()) { return std::nullopt; } return ::Ifc4x3_add1::IfcConstructionMaterialResourceTypeEnum::FromString(get_attribute_value(10)); } @@ -9317,7 +9317,7 @@ void Ifc4x3_add1::IfcConstructionMaterialResource::setPredefinedType(const std:: const ifcopenshell::entity& Ifc4x3_add1::IfcConstructionMaterialResource::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[217]); } -Ifc4x3_add1::IfcConstructionMaterialResource Ifc4x3_add1::IfcConstructionMaterialResource::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, std::optional< std::string > v6_Identification, std::optional< std::string > v7_LongDescription, ::Ifc4x3_add1::IfcResourceTime v8_Usage, std::optional< std::vector< ::Ifc4x3_add1::IfcAppliedValue > > v9_BaseCosts, ::Ifc4x3_add1::IfcPhysicalQuantity v10_BaseQuantity, std::optional< ::Ifc4x3_add1::IfcConstructionMaterialResourceTypeEnum::Value > v11_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); } if (v6_Identification) {set_attribute_value(5, (*v6_Identification)); } if (v7_LongDescription) {set_attribute_value(6, (*v7_LongDescription)); }set_attribute_value(7, (v8_Usage)); if (v9_BaseCosts) {set_attribute_value(8, cast_vector(*v9_BaseCosts)); }set_attribute_value(9, (v10_BaseQuantity)); if (v11_PredefinedType) {set_attribute_value(10, (enumeration_reference(&::Ifc4x3_add1::IfcConstructionMaterialResourceTypeEnum::Class(),(size_t)*v11_PredefinedType))); }; return *this; } +Ifc4x3_add1::IfcConstructionMaterialResource Ifc4x3_add1::IfcConstructionMaterialResource::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, std::optional< std::string > v6_Identification, std::optional< std::string > v7_LongDescription, ::Ifc4x3_add1::IfcResourceTime v8_Usage, std::optional< std::vector< ::Ifc4x3_add1::IfcAppliedValue > > v9_BaseCosts, ::Ifc4x3_add1::IfcPhysicalQuantity v10_BaseQuantity, std::optional< ::Ifc4x3_add1::IfcConstructionMaterialResourceTypeEnum::Value > v11_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); } if (v6_Identification) {set_attribute_value(5, (*v6_Identification)); } if (v7_LongDescription) {set_attribute_value(6, (*v7_LongDescription)); }set_attribute_value(7, (v8_Usage)); if (v9_BaseCosts) {set_attribute_value(8, cast_vector(*v9_BaseCosts)); }set_attribute_value(9, (v10_BaseQuantity)); if (v11_PredefinedType) {set_attribute_value(10, (enumeration_reference(&::Ifc4x3_add1::IfcConstructionMaterialResourceTypeEnum::Class(),(size_t)*v11_PredefinedType))); }; return *this; } // Function implementations for IfcConstructionMaterialResourceType ::Ifc4x3_add1::IfcConstructionMaterialResourceTypeEnum::Value Ifc4x3_add1::IfcConstructionMaterialResourceType::PredefinedType() const { return ::Ifc4x3_add1::IfcConstructionMaterialResourceTypeEnum::FromString(get_attribute_value(11)); } @@ -9325,7 +9325,7 @@ void Ifc4x3_add1::IfcConstructionMaterialResourceType::setPredefinedType(const : const ifcopenshell::entity& Ifc4x3_add1::IfcConstructionMaterialResourceType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[218]); } -Ifc4x3_add1::IfcConstructionMaterialResourceType Ifc4x3_add1::IfcConstructionMaterialResourceType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::string > v7_Identification, std::optional< std::string > v8_LongDescription, std::optional< std::string > v9_ResourceType, std::optional< std::vector< ::Ifc4x3_add1::IfcAppliedValue > > v10_BaseCosts, ::Ifc4x3_add1::IfcPhysicalQuantity v11_BaseQuantity, ::Ifc4x3_add1::IfcConstructionMaterialResourceTypeEnum::Value v12_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_Identification) {set_attribute_value(6, (*v7_Identification)); } if (v8_LongDescription) {set_attribute_value(7, (*v8_LongDescription)); } if (v9_ResourceType) {set_attribute_value(8, (*v9_ResourceType)); } if (v10_BaseCosts) {set_attribute_value(9, cast_vector(*v10_BaseCosts)); }set_attribute_value(10, (v11_BaseQuantity));set_attribute_value(11, (enumeration_reference(&::Ifc4x3_add1::IfcConstructionMaterialResourceTypeEnum::Class(),(size_t)v12_PredefinedType)));; return *this; } +Ifc4x3_add1::IfcConstructionMaterialResourceType Ifc4x3_add1::IfcConstructionMaterialResourceType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::string > v7_Identification, std::optional< std::string > v8_LongDescription, std::optional< std::string > v9_ResourceType, std::optional< std::vector< ::Ifc4x3_add1::IfcAppliedValue > > v10_BaseCosts, ::Ifc4x3_add1::IfcPhysicalQuantity v11_BaseQuantity, ::Ifc4x3_add1::IfcConstructionMaterialResourceTypeEnum::Value v12_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_Identification) {set_attribute_value(6, (*v7_Identification)); } if (v8_LongDescription) {set_attribute_value(7, (*v8_LongDescription)); } if (v9_ResourceType) {set_attribute_value(8, (*v9_ResourceType)); } if (v10_BaseCosts) {set_attribute_value(9, cast_vector(*v10_BaseCosts)); }set_attribute_value(10, (v11_BaseQuantity));set_attribute_value(11, (enumeration_reference(&::Ifc4x3_add1::IfcConstructionMaterialResourceTypeEnum::Class(),(size_t)v12_PredefinedType)));; return *this; } // Function implementations for IfcConstructionProductResource std::optional< ::Ifc4x3_add1::IfcConstructionProductResourceTypeEnum::Value > Ifc4x3_add1::IfcConstructionProductResource::PredefinedType() const { if(get_attribute_value(10).isNull()) { return std::nullopt; } return ::Ifc4x3_add1::IfcConstructionProductResourceTypeEnum::FromString(get_attribute_value(10)); } @@ -9333,7 +9333,7 @@ void Ifc4x3_add1::IfcConstructionProductResource::setPredefinedType(const std::o const ifcopenshell::entity& Ifc4x3_add1::IfcConstructionProductResource::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[220]); } -Ifc4x3_add1::IfcConstructionProductResource Ifc4x3_add1::IfcConstructionProductResource::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, std::optional< std::string > v6_Identification, std::optional< std::string > v7_LongDescription, ::Ifc4x3_add1::IfcResourceTime v8_Usage, std::optional< std::vector< ::Ifc4x3_add1::IfcAppliedValue > > v9_BaseCosts, ::Ifc4x3_add1::IfcPhysicalQuantity v10_BaseQuantity, std::optional< ::Ifc4x3_add1::IfcConstructionProductResourceTypeEnum::Value > v11_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); } if (v6_Identification) {set_attribute_value(5, (*v6_Identification)); } if (v7_LongDescription) {set_attribute_value(6, (*v7_LongDescription)); }set_attribute_value(7, (v8_Usage)); if (v9_BaseCosts) {set_attribute_value(8, cast_vector(*v9_BaseCosts)); }set_attribute_value(9, (v10_BaseQuantity)); if (v11_PredefinedType) {set_attribute_value(10, (enumeration_reference(&::Ifc4x3_add1::IfcConstructionProductResourceTypeEnum::Class(),(size_t)*v11_PredefinedType))); }; return *this; } +Ifc4x3_add1::IfcConstructionProductResource Ifc4x3_add1::IfcConstructionProductResource::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, std::optional< std::string > v6_Identification, std::optional< std::string > v7_LongDescription, ::Ifc4x3_add1::IfcResourceTime v8_Usage, std::optional< std::vector< ::Ifc4x3_add1::IfcAppliedValue > > v9_BaseCosts, ::Ifc4x3_add1::IfcPhysicalQuantity v10_BaseQuantity, std::optional< ::Ifc4x3_add1::IfcConstructionProductResourceTypeEnum::Value > v11_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); } if (v6_Identification) {set_attribute_value(5, (*v6_Identification)); } if (v7_LongDescription) {set_attribute_value(6, (*v7_LongDescription)); }set_attribute_value(7, (v8_Usage)); if (v9_BaseCosts) {set_attribute_value(8, cast_vector(*v9_BaseCosts)); }set_attribute_value(9, (v10_BaseQuantity)); if (v11_PredefinedType) {set_attribute_value(10, (enumeration_reference(&::Ifc4x3_add1::IfcConstructionProductResourceTypeEnum::Class(),(size_t)*v11_PredefinedType))); }; return *this; } // Function implementations for IfcConstructionProductResourceType ::Ifc4x3_add1::IfcConstructionProductResourceTypeEnum::Value Ifc4x3_add1::IfcConstructionProductResourceType::PredefinedType() const { return ::Ifc4x3_add1::IfcConstructionProductResourceTypeEnum::FromString(get_attribute_value(11)); } @@ -9341,29 +9341,29 @@ void Ifc4x3_add1::IfcConstructionProductResourceType::setPredefinedType(const :: const ifcopenshell::entity& Ifc4x3_add1::IfcConstructionProductResourceType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[221]); } -Ifc4x3_add1::IfcConstructionProductResourceType Ifc4x3_add1::IfcConstructionProductResourceType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::string > v7_Identification, std::optional< std::string > v8_LongDescription, std::optional< std::string > v9_ResourceType, std::optional< std::vector< ::Ifc4x3_add1::IfcAppliedValue > > v10_BaseCosts, ::Ifc4x3_add1::IfcPhysicalQuantity v11_BaseQuantity, ::Ifc4x3_add1::IfcConstructionProductResourceTypeEnum::Value v12_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_Identification) {set_attribute_value(6, (*v7_Identification)); } if (v8_LongDescription) {set_attribute_value(7, (*v8_LongDescription)); } if (v9_ResourceType) {set_attribute_value(8, (*v9_ResourceType)); } if (v10_BaseCosts) {set_attribute_value(9, cast_vector(*v10_BaseCosts)); }set_attribute_value(10, (v11_BaseQuantity));set_attribute_value(11, (enumeration_reference(&::Ifc4x3_add1::IfcConstructionProductResourceTypeEnum::Class(),(size_t)v12_PredefinedType)));; return *this; } +Ifc4x3_add1::IfcConstructionProductResourceType Ifc4x3_add1::IfcConstructionProductResourceType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::string > v7_Identification, std::optional< std::string > v8_LongDescription, std::optional< std::string > v9_ResourceType, std::optional< std::vector< ::Ifc4x3_add1::IfcAppliedValue > > v10_BaseCosts, ::Ifc4x3_add1::IfcPhysicalQuantity v11_BaseQuantity, ::Ifc4x3_add1::IfcConstructionProductResourceTypeEnum::Value v12_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_Identification) {set_attribute_value(6, (*v7_Identification)); } if (v8_LongDescription) {set_attribute_value(7, (*v8_LongDescription)); } if (v9_ResourceType) {set_attribute_value(8, (*v9_ResourceType)); } if (v10_BaseCosts) {set_attribute_value(9, cast_vector(*v10_BaseCosts)); }set_attribute_value(10, (v11_BaseQuantity));set_attribute_value(11, (enumeration_reference(&::Ifc4x3_add1::IfcConstructionProductResourceTypeEnum::Class(),(size_t)v12_PredefinedType)));; return *this; } // Function implementations for IfcConstructionResource -::Ifc4x3_add1::IfcResourceTime Ifc4x3_add1::IfcConstructionResource::Usage() const { if(get_attribute_value(7).isNull()) { return ::Ifc4x3_add1::IfcResourceTime{}; } return ((express::Base)(get_attribute_value(7))).as<::Ifc4x3_add1::IfcResourceTime>(); } +::Ifc4x3_add1::IfcResourceTime Ifc4x3_add1::IfcConstructionResource::Usage() const { if(get_attribute_value(7).isNull()) { return ::Ifc4x3_add1::IfcResourceTime{}; } return ((express::base)(get_attribute_value(7))).as<::Ifc4x3_add1::IfcResourceTime>(); } void Ifc4x3_add1::IfcConstructionResource::setUsage(const ::Ifc4x3_add1::IfcResourceTime& v) { set_attribute_value(7, v);if constexpr (false)unset_attribute_value(7); } -std::optional< std::vector< ::Ifc4x3_add1::IfcAppliedValue > > Ifc4x3_add1::IfcConstructionResource::BaseCosts() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(8); return cast_vector<::Ifc4x3_add1::IfcAppliedValue>(es); } -void Ifc4x3_add1::IfcConstructionResource::setBaseCosts(const std::optional< std::vector< ::Ifc4x3_add1::IfcAppliedValue > >& v) { if (v) {set_attribute_value(8, cast_vector(*v));} else {unset_attribute_value(8);} } -::Ifc4x3_add1::IfcPhysicalQuantity Ifc4x3_add1::IfcConstructionResource::BaseQuantity() const { if(get_attribute_value(9).isNull()) { return ::Ifc4x3_add1::IfcPhysicalQuantity{}; } return ((express::Base)(get_attribute_value(9))).as<::Ifc4x3_add1::IfcPhysicalQuantity>(); } +std::optional< std::vector< ::Ifc4x3_add1::IfcAppliedValue > > Ifc4x3_add1::IfcConstructionResource::BaseCosts() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(8); return cast_vector<::Ifc4x3_add1::IfcAppliedValue>(es); } +void Ifc4x3_add1::IfcConstructionResource::setBaseCosts(const std::optional< std::vector< ::Ifc4x3_add1::IfcAppliedValue > >& v) { if (v) {set_attribute_value(8, cast_vector(*v));} else {unset_attribute_value(8);} } +::Ifc4x3_add1::IfcPhysicalQuantity Ifc4x3_add1::IfcConstructionResource::BaseQuantity() const { if(get_attribute_value(9).isNull()) { return ::Ifc4x3_add1::IfcPhysicalQuantity{}; } return ((express::base)(get_attribute_value(9))).as<::Ifc4x3_add1::IfcPhysicalQuantity>(); } void Ifc4x3_add1::IfcConstructionResource::setBaseQuantity(const ::Ifc4x3_add1::IfcPhysicalQuantity& v) { set_attribute_value(9, v);if constexpr (false)unset_attribute_value(9); } const ifcopenshell::entity& Ifc4x3_add1::IfcConstructionResource::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[223]); } -Ifc4x3_add1::IfcConstructionResource Ifc4x3_add1::IfcConstructionResource::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, std::optional< std::string > v6_Identification, std::optional< std::string > v7_LongDescription, ::Ifc4x3_add1::IfcResourceTime v8_Usage, std::optional< std::vector< ::Ifc4x3_add1::IfcAppliedValue > > v9_BaseCosts, ::Ifc4x3_add1::IfcPhysicalQuantity v10_BaseQuantity) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); } if (v6_Identification) {set_attribute_value(5, (*v6_Identification)); } if (v7_LongDescription) {set_attribute_value(6, (*v7_LongDescription)); }set_attribute_value(7, (v8_Usage)); if (v9_BaseCosts) {set_attribute_value(8, cast_vector(*v9_BaseCosts)); }set_attribute_value(9, (v10_BaseQuantity));; return *this; } +Ifc4x3_add1::IfcConstructionResource Ifc4x3_add1::IfcConstructionResource::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, std::optional< std::string > v6_Identification, std::optional< std::string > v7_LongDescription, ::Ifc4x3_add1::IfcResourceTime v8_Usage, std::optional< std::vector< ::Ifc4x3_add1::IfcAppliedValue > > v9_BaseCosts, ::Ifc4x3_add1::IfcPhysicalQuantity v10_BaseQuantity) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); } if (v6_Identification) {set_attribute_value(5, (*v6_Identification)); } if (v7_LongDescription) {set_attribute_value(6, (*v7_LongDescription)); }set_attribute_value(7, (v8_Usage)); if (v9_BaseCosts) {set_attribute_value(8, cast_vector(*v9_BaseCosts)); }set_attribute_value(9, (v10_BaseQuantity));; return *this; } // Function implementations for IfcConstructionResourceType -std::optional< std::vector< ::Ifc4x3_add1::IfcAppliedValue > > Ifc4x3_add1::IfcConstructionResourceType::BaseCosts() const { if(get_attribute_value(9).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(9); return cast_vector<::Ifc4x3_add1::IfcAppliedValue>(es); } -void Ifc4x3_add1::IfcConstructionResourceType::setBaseCosts(const std::optional< std::vector< ::Ifc4x3_add1::IfcAppliedValue > >& v) { if (v) {set_attribute_value(9, cast_vector(*v));} else {unset_attribute_value(9);} } -::Ifc4x3_add1::IfcPhysicalQuantity Ifc4x3_add1::IfcConstructionResourceType::BaseQuantity() const { if(get_attribute_value(10).isNull()) { return ::Ifc4x3_add1::IfcPhysicalQuantity{}; } return ((express::Base)(get_attribute_value(10))).as<::Ifc4x3_add1::IfcPhysicalQuantity>(); } +std::optional< std::vector< ::Ifc4x3_add1::IfcAppliedValue > > Ifc4x3_add1::IfcConstructionResourceType::BaseCosts() const { if(get_attribute_value(9).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(9); return cast_vector<::Ifc4x3_add1::IfcAppliedValue>(es); } +void Ifc4x3_add1::IfcConstructionResourceType::setBaseCosts(const std::optional< std::vector< ::Ifc4x3_add1::IfcAppliedValue > >& v) { if (v) {set_attribute_value(9, cast_vector(*v));} else {unset_attribute_value(9);} } +::Ifc4x3_add1::IfcPhysicalQuantity Ifc4x3_add1::IfcConstructionResourceType::BaseQuantity() const { if(get_attribute_value(10).isNull()) { return ::Ifc4x3_add1::IfcPhysicalQuantity{}; } return ((express::base)(get_attribute_value(10))).as<::Ifc4x3_add1::IfcPhysicalQuantity>(); } void Ifc4x3_add1::IfcConstructionResourceType::setBaseQuantity(const ::Ifc4x3_add1::IfcPhysicalQuantity& v) { set_attribute_value(10, v);if constexpr (false)unset_attribute_value(10); } const ifcopenshell::entity& Ifc4x3_add1::IfcConstructionResourceType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[224]); } -Ifc4x3_add1::IfcConstructionResourceType Ifc4x3_add1::IfcConstructionResourceType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::string > v7_Identification, std::optional< std::string > v8_LongDescription, std::optional< std::string > v9_ResourceType, std::optional< std::vector< ::Ifc4x3_add1::IfcAppliedValue > > v10_BaseCosts, ::Ifc4x3_add1::IfcPhysicalQuantity v11_BaseQuantity) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_Identification) {set_attribute_value(6, (*v7_Identification)); } if (v8_LongDescription) {set_attribute_value(7, (*v8_LongDescription)); } if (v9_ResourceType) {set_attribute_value(8, (*v9_ResourceType)); } if (v10_BaseCosts) {set_attribute_value(9, cast_vector(*v10_BaseCosts)); }set_attribute_value(10, (v11_BaseQuantity));; return *this; } +Ifc4x3_add1::IfcConstructionResourceType Ifc4x3_add1::IfcConstructionResourceType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::string > v7_Identification, std::optional< std::string > v8_LongDescription, std::optional< std::string > v9_ResourceType, std::optional< std::vector< ::Ifc4x3_add1::IfcAppliedValue > > v10_BaseCosts, ::Ifc4x3_add1::IfcPhysicalQuantity v11_BaseQuantity) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_Identification) {set_attribute_value(6, (*v7_Identification)); } if (v8_LongDescription) {set_attribute_value(7, (*v8_LongDescription)); } if (v9_ResourceType) {set_attribute_value(8, (*v9_ResourceType)); } if (v10_BaseCosts) {set_attribute_value(9, cast_vector(*v10_BaseCosts)); }set_attribute_value(10, (v11_BaseQuantity));; return *this; } // Function implementations for IfcContext std::optional< std::string > Ifc4x3_add1::IfcContext::ObjectType() const { if(get_attribute_value(4).isNull()) { return std::nullopt; } std::string v = get_attribute_value(4); return v; } @@ -9372,16 +9372,16 @@ std::optional< std::string > Ifc4x3_add1::IfcContext::LongName() const { if(get_ void Ifc4x3_add1::IfcContext::setLongName(const std::optional< std::string >& v) { if (v) {set_attribute_value(5, *v);} else {unset_attribute_value(5);} } std::optional< std::string > Ifc4x3_add1::IfcContext::Phase() const { if(get_attribute_value(6).isNull()) { return std::nullopt; } std::string v = get_attribute_value(6); return v; } void Ifc4x3_add1::IfcContext::setPhase(const std::optional< std::string >& v) { if (v) {set_attribute_value(6, *v);} else {unset_attribute_value(6);} } -std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationContext > > Ifc4x3_add1::IfcContext::RepresentationContexts() const { if(get_attribute_value(7).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(7); return cast_vector<::Ifc4x3_add1::IfcRepresentationContext>(es); } -void Ifc4x3_add1::IfcContext::setRepresentationContexts(const std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationContext > >& v) { if (v) {set_attribute_value(7, cast_vector(*v));} else {unset_attribute_value(7);} } -::Ifc4x3_add1::IfcUnitAssignment Ifc4x3_add1::IfcContext::UnitsInContext() const { if(get_attribute_value(8).isNull()) { return ::Ifc4x3_add1::IfcUnitAssignment{}; } return ((express::Base)(get_attribute_value(8))).as<::Ifc4x3_add1::IfcUnitAssignment>(); } +std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationContext > > Ifc4x3_add1::IfcContext::RepresentationContexts() const { if(get_attribute_value(7).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(7); return cast_vector<::Ifc4x3_add1::IfcRepresentationContext>(es); } +void Ifc4x3_add1::IfcContext::setRepresentationContexts(const std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationContext > >& v) { if (v) {set_attribute_value(7, cast_vector(*v));} else {unset_attribute_value(7);} } +::Ifc4x3_add1::IfcUnitAssignment Ifc4x3_add1::IfcContext::UnitsInContext() const { if(get_attribute_value(8).isNull()) { return ::Ifc4x3_add1::IfcUnitAssignment{}; } return ((express::base)(get_attribute_value(8))).as<::Ifc4x3_add1::IfcUnitAssignment>(); } void Ifc4x3_add1::IfcContext::setUnitsInContext(const ::Ifc4x3_add1::IfcUnitAssignment& v) { set_attribute_value(8, v);if constexpr (false)unset_attribute_value(8); } std::vector<::Ifc4x3_add1::IfcRelDefinesByProperties> Ifc4x3_add1::IfcContext::IsDefinedBy() const { return cast_vector(file()->get_inverse(data()->id(), IFC4X3_ADD1_types[933], 4)); } std::vector<::Ifc4x3_add1::IfcRelDeclares> Ifc4x3_add1::IfcContext::Declares() const { return cast_vector(file()->get_inverse(data()->id(), IFC4X3_ADD1_types[929], 4)); } const ifcopenshell::entity& Ifc4x3_add1::IfcContext::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[225]); } -Ifc4x3_add1::IfcContext Ifc4x3_add1::IfcContext::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, std::optional< std::string > v6_LongName, std::optional< std::string > v7_Phase, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationContext > > v8_RepresentationContexts, ::Ifc4x3_add1::IfcUnitAssignment v9_UnitsInContext) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); } if (v6_LongName) {set_attribute_value(5, (*v6_LongName)); } if (v7_Phase) {set_attribute_value(6, (*v7_Phase)); } if (v8_RepresentationContexts) {set_attribute_value(7, cast_vector(*v8_RepresentationContexts)); }set_attribute_value(8, (v9_UnitsInContext));; return *this; } +Ifc4x3_add1::IfcContext Ifc4x3_add1::IfcContext::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, std::optional< std::string > v6_LongName, std::optional< std::string > v7_Phase, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationContext > > v8_RepresentationContexts, ::Ifc4x3_add1::IfcUnitAssignment v9_UnitsInContext) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); } if (v6_LongName) {set_attribute_value(5, (*v6_LongName)); } if (v7_Phase) {set_attribute_value(6, (*v7_Phase)); } if (v8_RepresentationContexts) {set_attribute_value(7, cast_vector(*v8_RepresentationContexts)); }set_attribute_value(8, (v9_UnitsInContext));; return *this; } // Function implementations for IfcContextDependentUnit std::string Ifc4x3_add1::IfcContextDependentUnit::Name() const { std::string v = get_attribute_value(2); return v; } @@ -9415,12 +9415,12 @@ void Ifc4x3_add1::IfcControllerType::setPredefinedType(const ::Ifc4x3_add1::IfcC const ifcopenshell::entity& Ifc4x3_add1::IfcControllerType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[230]); } -Ifc4x3_add1::IfcControllerType Ifc4x3_add1::IfcControllerType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcControllerTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcControllerTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_add1::IfcControllerType Ifc4x3_add1::IfcControllerType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcControllerTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcControllerTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcConversionBasedUnit std::string Ifc4x3_add1::IfcConversionBasedUnit::Name() const { std::string v = get_attribute_value(2); return v; } void Ifc4x3_add1::IfcConversionBasedUnit::setName(const std::string& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } -::Ifc4x3_add1::IfcMeasureWithUnit Ifc4x3_add1::IfcConversionBasedUnit::ConversionFactor() const { return ((express::Base)(get_attribute_value(3))).as<::Ifc4x3_add1::IfcMeasureWithUnit>(); } +::Ifc4x3_add1::IfcMeasureWithUnit Ifc4x3_add1::IfcConversionBasedUnit::ConversionFactor() const { return ((express::base)(get_attribute_value(3))).as<::Ifc4x3_add1::IfcMeasureWithUnit>(); } void Ifc4x3_add1::IfcConversionBasedUnit::setConversionFactor(const ::Ifc4x3_add1::IfcMeasureWithUnit& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } std::vector<::Ifc4x3_add1::IfcExternalReferenceRelationship> Ifc4x3_add1::IfcConversionBasedUnit::HasExternalReference() const { return cast_vector(file()->get_inverse(data()->id(), IFC4X3_ADD1_types[427], 3)); } @@ -9450,7 +9450,7 @@ void Ifc4x3_add1::IfcConveyorSegmentType::setPredefinedType(const ::Ifc4x3_add1: const ifcopenshell::entity& Ifc4x3_add1::IfcConveyorSegmentType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[235]); } -Ifc4x3_add1::IfcConveyorSegmentType Ifc4x3_add1::IfcConveyorSegmentType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcConveyorSegmentTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcConveyorSegmentTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_add1::IfcConveyorSegmentType Ifc4x3_add1::IfcConveyorSegmentType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcConveyorSegmentTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcConveyorSegmentTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcCooledBeam std::optional< ::Ifc4x3_add1::IfcCooledBeamTypeEnum::Value > Ifc4x3_add1::IfcCooledBeam::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_add1::IfcCooledBeamTypeEnum::FromString(get_attribute_value(8)); } @@ -9466,7 +9466,7 @@ void Ifc4x3_add1::IfcCooledBeamType::setPredefinedType(const ::Ifc4x3_add1::IfcC const ifcopenshell::entity& Ifc4x3_add1::IfcCooledBeamType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[238]); } -Ifc4x3_add1::IfcCooledBeamType Ifc4x3_add1::IfcCooledBeamType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcCooledBeamTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcCooledBeamTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_add1::IfcCooledBeamType Ifc4x3_add1::IfcCooledBeamType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcCooledBeamTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcCooledBeamTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcCoolingTower std::optional< ::Ifc4x3_add1::IfcCoolingTowerTypeEnum::Value > Ifc4x3_add1::IfcCoolingTower::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_add1::IfcCoolingTowerTypeEnum::FromString(get_attribute_value(8)); } @@ -9482,12 +9482,12 @@ void Ifc4x3_add1::IfcCoolingTowerType::setPredefinedType(const ::Ifc4x3_add1::If const ifcopenshell::entity& Ifc4x3_add1::IfcCoolingTowerType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[241]); } -Ifc4x3_add1::IfcCoolingTowerType Ifc4x3_add1::IfcCoolingTowerType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcCoolingTowerTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcCoolingTowerTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_add1::IfcCoolingTowerType Ifc4x3_add1::IfcCoolingTowerType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcCoolingTowerTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcCoolingTowerTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcCoordinateOperation -::Ifc4x3_add1::IfcCoordinateReferenceSystemSelect Ifc4x3_add1::IfcCoordinateOperation::SourceCRS() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcCoordinateReferenceSystemSelect>(); } +::Ifc4x3_add1::IfcCoordinateReferenceSystemSelect Ifc4x3_add1::IfcCoordinateOperation::SourceCRS() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcCoordinateReferenceSystemSelect>(); } void Ifc4x3_add1::IfcCoordinateOperation::setSourceCRS(const ::Ifc4x3_add1::IfcCoordinateReferenceSystemSelect& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } -::Ifc4x3_add1::IfcCoordinateReferenceSystem Ifc4x3_add1::IfcCoordinateOperation::TargetCRS() const { return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3_add1::IfcCoordinateReferenceSystem>(); } +::Ifc4x3_add1::IfcCoordinateReferenceSystem Ifc4x3_add1::IfcCoordinateOperation::TargetCRS() const { return ((express::base)(get_attribute_value(1))).as<::Ifc4x3_add1::IfcCoordinateReferenceSystem>(); } void Ifc4x3_add1::IfcCoordinateOperation::setTargetCRS(const ::Ifc4x3_add1::IfcCoordinateReferenceSystem& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } @@ -9519,14 +9519,14 @@ Ifc4x3_add1::IfcCosineSpiral Ifc4x3_add1::IfcCosineSpiral::initialize(::Ifc4x3_a // Function implementations for IfcCostItem std::optional< ::Ifc4x3_add1::IfcCostItemTypeEnum::Value > Ifc4x3_add1::IfcCostItem::PredefinedType() const { if(get_attribute_value(6).isNull()) { return std::nullopt; } return ::Ifc4x3_add1::IfcCostItemTypeEnum::FromString(get_attribute_value(6)); } void Ifc4x3_add1::IfcCostItem::setPredefinedType(const std::optional< ::Ifc4x3_add1::IfcCostItemTypeEnum::Value >& v) { if (v) {set_attribute_value(6, enumeration_reference(&::Ifc4x3_add1::IfcCostItemTypeEnum::Class(), (size_t) *v));} else {unset_attribute_value(6);} } -std::optional< std::vector< ::Ifc4x3_add1::IfcCostValue > > Ifc4x3_add1::IfcCostItem::CostValues() const { if(get_attribute_value(7).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(7); return cast_vector<::Ifc4x3_add1::IfcCostValue>(es); } -void Ifc4x3_add1::IfcCostItem::setCostValues(const std::optional< std::vector< ::Ifc4x3_add1::IfcCostValue > >& v) { if (v) {set_attribute_value(7, cast_vector(*v));} else {unset_attribute_value(7);} } -std::optional< std::vector< ::Ifc4x3_add1::IfcPhysicalQuantity > > Ifc4x3_add1::IfcCostItem::CostQuantities() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(8); return cast_vector<::Ifc4x3_add1::IfcPhysicalQuantity>(es); } -void Ifc4x3_add1::IfcCostItem::setCostQuantities(const std::optional< std::vector< ::Ifc4x3_add1::IfcPhysicalQuantity > >& v) { if (v) {set_attribute_value(8, cast_vector(*v));} else {unset_attribute_value(8);} } +std::optional< std::vector< ::Ifc4x3_add1::IfcCostValue > > Ifc4x3_add1::IfcCostItem::CostValues() const { if(get_attribute_value(7).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(7); return cast_vector<::Ifc4x3_add1::IfcCostValue>(es); } +void Ifc4x3_add1::IfcCostItem::setCostValues(const std::optional< std::vector< ::Ifc4x3_add1::IfcCostValue > >& v) { if (v) {set_attribute_value(7, cast_vector(*v));} else {unset_attribute_value(7);} } +std::optional< std::vector< ::Ifc4x3_add1::IfcPhysicalQuantity > > Ifc4x3_add1::IfcCostItem::CostQuantities() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(8); return cast_vector<::Ifc4x3_add1::IfcPhysicalQuantity>(es); } +void Ifc4x3_add1::IfcCostItem::setCostQuantities(const std::optional< std::vector< ::Ifc4x3_add1::IfcPhysicalQuantity > >& v) { if (v) {set_attribute_value(8, cast_vector(*v));} else {unset_attribute_value(8);} } const ifcopenshell::entity& Ifc4x3_add1::IfcCostItem::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[247]); } -Ifc4x3_add1::IfcCostItem Ifc4x3_add1::IfcCostItem::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, std::optional< std::string > v6_Identification, std::optional< ::Ifc4x3_add1::IfcCostItemTypeEnum::Value > v7_PredefinedType, std::optional< std::vector< ::Ifc4x3_add1::IfcCostValue > > v8_CostValues, std::optional< std::vector< ::Ifc4x3_add1::IfcPhysicalQuantity > > v9_CostQuantities) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); } if (v6_Identification) {set_attribute_value(5, (*v6_Identification)); } if (v7_PredefinedType) {set_attribute_value(6, (enumeration_reference(&::Ifc4x3_add1::IfcCostItemTypeEnum::Class(),(size_t)*v7_PredefinedType))); } if (v8_CostValues) {set_attribute_value(7, cast_vector(*v8_CostValues)); } if (v9_CostQuantities) {set_attribute_value(8, cast_vector(*v9_CostQuantities)); }; return *this; } +Ifc4x3_add1::IfcCostItem Ifc4x3_add1::IfcCostItem::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, std::optional< std::string > v6_Identification, std::optional< ::Ifc4x3_add1::IfcCostItemTypeEnum::Value > v7_PredefinedType, std::optional< std::vector< ::Ifc4x3_add1::IfcCostValue > > v8_CostValues, std::optional< std::vector< ::Ifc4x3_add1::IfcPhysicalQuantity > > v9_CostQuantities) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); } if (v6_Identification) {set_attribute_value(5, (*v6_Identification)); } if (v7_PredefinedType) {set_attribute_value(6, (enumeration_reference(&::Ifc4x3_add1::IfcCostItemTypeEnum::Class(),(size_t)*v7_PredefinedType))); } if (v8_CostValues) {set_attribute_value(7, cast_vector(*v8_CostValues)); } if (v9_CostQuantities) {set_attribute_value(8, cast_vector(*v9_CostQuantities)); }; return *this; } // Function implementations for IfcCostSchedule std::optional< ::Ifc4x3_add1::IfcCostScheduleTypeEnum::Value > Ifc4x3_add1::IfcCostSchedule::PredefinedType() const { if(get_attribute_value(6).isNull()) { return std::nullopt; } return ::Ifc4x3_add1::IfcCostScheduleTypeEnum::FromString(get_attribute_value(6)); } @@ -9546,7 +9546,7 @@ Ifc4x3_add1::IfcCostSchedule Ifc4x3_add1::IfcCostSchedule::initialize(std::strin const ifcopenshell::entity& Ifc4x3_add1::IfcCostValue::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[251]); } -Ifc4x3_add1::IfcCostValue Ifc4x3_add1::IfcCostValue::initialize(std::optional< std::string > v1_Name, std::optional< std::string > v2_Description, ::Ifc4x3_add1::IfcAppliedValueSelect v3_AppliedValue, ::Ifc4x3_add1::IfcMeasureWithUnit v4_UnitBasis, std::optional< std::string > v5_ApplicableDate, std::optional< std::string > v6_FixedUntilDate, std::optional< std::string > v7_Category, std::optional< std::string > v8_Condition, std::optional< ::Ifc4x3_add1::IfcArithmeticOperatorEnum::Value > v9_ArithmeticOperator, std::optional< std::vector< ::Ifc4x3_add1::IfcAppliedValue > > v10_Components) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); } if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, (v3_AppliedValue));set_attribute_value(3, (v4_UnitBasis)); if (v5_ApplicableDate) {set_attribute_value(4, (*v5_ApplicableDate)); } if (v6_FixedUntilDate) {set_attribute_value(5, (*v6_FixedUntilDate)); } if (v7_Category) {set_attribute_value(6, (*v7_Category)); } if (v8_Condition) {set_attribute_value(7, (*v8_Condition)); } if (v9_ArithmeticOperator) {set_attribute_value(8, (enumeration_reference(&::Ifc4x3_add1::IfcArithmeticOperatorEnum::Class(),(size_t)*v9_ArithmeticOperator))); } if (v10_Components) {set_attribute_value(9, cast_vector(*v10_Components)); }; return *this; } +Ifc4x3_add1::IfcCostValue Ifc4x3_add1::IfcCostValue::initialize(std::optional< std::string > v1_Name, std::optional< std::string > v2_Description, ::Ifc4x3_add1::IfcAppliedValueSelect v3_AppliedValue, ::Ifc4x3_add1::IfcMeasureWithUnit v4_UnitBasis, std::optional< std::string > v5_ApplicableDate, std::optional< std::string > v6_FixedUntilDate, std::optional< std::string > v7_Category, std::optional< std::string > v8_Condition, std::optional< ::Ifc4x3_add1::IfcArithmeticOperatorEnum::Value > v9_ArithmeticOperator, std::optional< std::vector< ::Ifc4x3_add1::IfcAppliedValue > > v10_Components) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); } if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, (v3_AppliedValue));set_attribute_value(3, (v4_UnitBasis)); if (v5_ApplicableDate) {set_attribute_value(4, (*v5_ApplicableDate)); } if (v6_FixedUntilDate) {set_attribute_value(5, (*v6_FixedUntilDate)); } if (v7_Category) {set_attribute_value(6, (*v7_Category)); } if (v8_Condition) {set_attribute_value(7, (*v8_Condition)); } if (v9_ArithmeticOperator) {set_attribute_value(8, (enumeration_reference(&::Ifc4x3_add1::IfcArithmeticOperatorEnum::Class(),(size_t)*v9_ArithmeticOperator))); } if (v10_Components) {set_attribute_value(9, cast_vector(*v10_Components)); }; return *this; } // Function implementations for IfcCourse std::optional< ::Ifc4x3_add1::IfcCourseTypeEnum::Value > Ifc4x3_add1::IfcCourse::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_add1::IfcCourseTypeEnum::FromString(get_attribute_value(8)); } @@ -9562,7 +9562,7 @@ void Ifc4x3_add1::IfcCourseType::setPredefinedType(const ::Ifc4x3_add1::IfcCours const ifcopenshell::entity& Ifc4x3_add1::IfcCourseType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[254]); } -Ifc4x3_add1::IfcCourseType Ifc4x3_add1::IfcCourseType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcCourseTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcCourseTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_add1::IfcCourseType Ifc4x3_add1::IfcCourseType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcCourseTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcCourseTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcCovering std::optional< ::Ifc4x3_add1::IfcCoveringTypeEnum::Value > Ifc4x3_add1::IfcCovering::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_add1::IfcCoveringTypeEnum::FromString(get_attribute_value(8)); } @@ -9580,7 +9580,7 @@ void Ifc4x3_add1::IfcCoveringType::setPredefinedType(const ::Ifc4x3_add1::IfcCov const ifcopenshell::entity& Ifc4x3_add1::IfcCoveringType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[257]); } -Ifc4x3_add1::IfcCoveringType Ifc4x3_add1::IfcCoveringType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcCoveringTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcCoveringTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_add1::IfcCoveringType Ifc4x3_add1::IfcCoveringType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcCoveringTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcCoveringTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcCrewResource std::optional< ::Ifc4x3_add1::IfcCrewResourceTypeEnum::Value > Ifc4x3_add1::IfcCrewResource::PredefinedType() const { if(get_attribute_value(10).isNull()) { return std::nullopt; } return ::Ifc4x3_add1::IfcCrewResourceTypeEnum::FromString(get_attribute_value(10)); } @@ -9588,7 +9588,7 @@ void Ifc4x3_add1::IfcCrewResource::setPredefinedType(const std::optional< ::Ifc4 const ifcopenshell::entity& Ifc4x3_add1::IfcCrewResource::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[259]); } -Ifc4x3_add1::IfcCrewResource Ifc4x3_add1::IfcCrewResource::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, std::optional< std::string > v6_Identification, std::optional< std::string > v7_LongDescription, ::Ifc4x3_add1::IfcResourceTime v8_Usage, std::optional< std::vector< ::Ifc4x3_add1::IfcAppliedValue > > v9_BaseCosts, ::Ifc4x3_add1::IfcPhysicalQuantity v10_BaseQuantity, std::optional< ::Ifc4x3_add1::IfcCrewResourceTypeEnum::Value > v11_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); } if (v6_Identification) {set_attribute_value(5, (*v6_Identification)); } if (v7_LongDescription) {set_attribute_value(6, (*v7_LongDescription)); }set_attribute_value(7, (v8_Usage)); if (v9_BaseCosts) {set_attribute_value(8, cast_vector(*v9_BaseCosts)); }set_attribute_value(9, (v10_BaseQuantity)); if (v11_PredefinedType) {set_attribute_value(10, (enumeration_reference(&::Ifc4x3_add1::IfcCrewResourceTypeEnum::Class(),(size_t)*v11_PredefinedType))); }; return *this; } +Ifc4x3_add1::IfcCrewResource Ifc4x3_add1::IfcCrewResource::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, std::optional< std::string > v6_Identification, std::optional< std::string > v7_LongDescription, ::Ifc4x3_add1::IfcResourceTime v8_Usage, std::optional< std::vector< ::Ifc4x3_add1::IfcAppliedValue > > v9_BaseCosts, ::Ifc4x3_add1::IfcPhysicalQuantity v10_BaseQuantity, std::optional< ::Ifc4x3_add1::IfcCrewResourceTypeEnum::Value > v11_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); } if (v6_Identification) {set_attribute_value(5, (*v6_Identification)); } if (v7_LongDescription) {set_attribute_value(6, (*v7_LongDescription)); }set_attribute_value(7, (v8_Usage)); if (v9_BaseCosts) {set_attribute_value(8, cast_vector(*v9_BaseCosts)); }set_attribute_value(9, (v10_BaseQuantity)); if (v11_PredefinedType) {set_attribute_value(10, (enumeration_reference(&::Ifc4x3_add1::IfcCrewResourceTypeEnum::Class(),(size_t)*v11_PredefinedType))); }; return *this; } // Function implementations for IfcCrewResourceType ::Ifc4x3_add1::IfcCrewResourceTypeEnum::Value Ifc4x3_add1::IfcCrewResourceType::PredefinedType() const { return ::Ifc4x3_add1::IfcCrewResourceTypeEnum::FromString(get_attribute_value(11)); } @@ -9596,10 +9596,10 @@ void Ifc4x3_add1::IfcCrewResourceType::setPredefinedType(const ::Ifc4x3_add1::If const ifcopenshell::entity& Ifc4x3_add1::IfcCrewResourceType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[260]); } -Ifc4x3_add1::IfcCrewResourceType Ifc4x3_add1::IfcCrewResourceType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::string > v7_Identification, std::optional< std::string > v8_LongDescription, std::optional< std::string > v9_ResourceType, std::optional< std::vector< ::Ifc4x3_add1::IfcAppliedValue > > v10_BaseCosts, ::Ifc4x3_add1::IfcPhysicalQuantity v11_BaseQuantity, ::Ifc4x3_add1::IfcCrewResourceTypeEnum::Value v12_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_Identification) {set_attribute_value(6, (*v7_Identification)); } if (v8_LongDescription) {set_attribute_value(7, (*v8_LongDescription)); } if (v9_ResourceType) {set_attribute_value(8, (*v9_ResourceType)); } if (v10_BaseCosts) {set_attribute_value(9, cast_vector(*v10_BaseCosts)); }set_attribute_value(10, (v11_BaseQuantity));set_attribute_value(11, (enumeration_reference(&::Ifc4x3_add1::IfcCrewResourceTypeEnum::Class(),(size_t)v12_PredefinedType)));; return *this; } +Ifc4x3_add1::IfcCrewResourceType Ifc4x3_add1::IfcCrewResourceType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::string > v7_Identification, std::optional< std::string > v8_LongDescription, std::optional< std::string > v9_ResourceType, std::optional< std::vector< ::Ifc4x3_add1::IfcAppliedValue > > v10_BaseCosts, ::Ifc4x3_add1::IfcPhysicalQuantity v11_BaseQuantity, ::Ifc4x3_add1::IfcCrewResourceTypeEnum::Value v12_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_Identification) {set_attribute_value(6, (*v7_Identification)); } if (v8_LongDescription) {set_attribute_value(7, (*v8_LongDescription)); } if (v9_ResourceType) {set_attribute_value(8, (*v9_ResourceType)); } if (v10_BaseCosts) {set_attribute_value(9, cast_vector(*v10_BaseCosts)); }set_attribute_value(10, (v11_BaseQuantity));set_attribute_value(11, (enumeration_reference(&::Ifc4x3_add1::IfcCrewResourceTypeEnum::Class(),(size_t)v12_PredefinedType)));; return *this; } // Function implementations for IfcCsgPrimitive3D -::Ifc4x3_add1::IfcAxis2Placement3D Ifc4x3_add1::IfcCsgPrimitive3D::Position() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcAxis2Placement3D>(); } +::Ifc4x3_add1::IfcAxis2Placement3D Ifc4x3_add1::IfcCsgPrimitive3D::Position() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcAxis2Placement3D>(); } void Ifc4x3_add1::IfcCsgPrimitive3D::setPosition(const ::Ifc4x3_add1::IfcAxis2Placement3D& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } @@ -9607,7 +9607,7 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcCsgPrimitive3D::Class() { return *(( Ifc4x3_add1::IfcCsgPrimitive3D Ifc4x3_add1::IfcCsgPrimitive3D::initialize(::Ifc4x3_add1::IfcAxis2Placement3D v1_Position) { set_attribute_value(0, (v1_Position));; return *this; } // Function implementations for IfcCsgSolid -::Ifc4x3_add1::IfcCsgSelect Ifc4x3_add1::IfcCsgSolid::TreeRootExpression() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcCsgSelect>(); } +::Ifc4x3_add1::IfcCsgSelect Ifc4x3_add1::IfcCsgSolid::TreeRootExpression() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcCsgSelect>(); } void Ifc4x3_add1::IfcCsgSolid::setTreeRootExpression(const ::Ifc4x3_add1::IfcCsgSelect& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } @@ -9615,15 +9615,15 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcCsgSolid::Class() { return *((ifcope Ifc4x3_add1::IfcCsgSolid Ifc4x3_add1::IfcCsgSolid::initialize(::Ifc4x3_add1::IfcCsgSelect v1_TreeRootExpression) { set_attribute_value(0, (v1_TreeRootExpression));; return *this; } // Function implementations for IfcCurrencyRelationship -::Ifc4x3_add1::IfcMonetaryUnit Ifc4x3_add1::IfcCurrencyRelationship::RelatingMonetaryUnit() const { return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3_add1::IfcMonetaryUnit>(); } +::Ifc4x3_add1::IfcMonetaryUnit Ifc4x3_add1::IfcCurrencyRelationship::RelatingMonetaryUnit() const { return ((express::base)(get_attribute_value(2))).as<::Ifc4x3_add1::IfcMonetaryUnit>(); } void Ifc4x3_add1::IfcCurrencyRelationship::setRelatingMonetaryUnit(const ::Ifc4x3_add1::IfcMonetaryUnit& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } -::Ifc4x3_add1::IfcMonetaryUnit Ifc4x3_add1::IfcCurrencyRelationship::RelatedMonetaryUnit() const { return ((express::Base)(get_attribute_value(3))).as<::Ifc4x3_add1::IfcMonetaryUnit>(); } +::Ifc4x3_add1::IfcMonetaryUnit Ifc4x3_add1::IfcCurrencyRelationship::RelatedMonetaryUnit() const { return ((express::base)(get_attribute_value(3))).as<::Ifc4x3_add1::IfcMonetaryUnit>(); } void Ifc4x3_add1::IfcCurrencyRelationship::setRelatedMonetaryUnit(const ::Ifc4x3_add1::IfcMonetaryUnit& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } double Ifc4x3_add1::IfcCurrencyRelationship::ExchangeRate() const { double v = get_attribute_value(4); return v; } void Ifc4x3_add1::IfcCurrencyRelationship::setExchangeRate(const double& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } std::optional< std::string > Ifc4x3_add1::IfcCurrencyRelationship::RateDateTime() const { if(get_attribute_value(5).isNull()) { return std::nullopt; } std::string v = get_attribute_value(5); return v; } void Ifc4x3_add1::IfcCurrencyRelationship::setRateDateTime(const std::optional< std::string >& v) { if (v) {set_attribute_value(5, *v);} else {unset_attribute_value(5);} } -::Ifc4x3_add1::IfcLibraryInformation Ifc4x3_add1::IfcCurrencyRelationship::RateSource() const { if(get_attribute_value(6).isNull()) { return ::Ifc4x3_add1::IfcLibraryInformation{}; } return ((express::Base)(get_attribute_value(6))).as<::Ifc4x3_add1::IfcLibraryInformation>(); } +::Ifc4x3_add1::IfcLibraryInformation Ifc4x3_add1::IfcCurrencyRelationship::RateSource() const { if(get_attribute_value(6).isNull()) { return ::Ifc4x3_add1::IfcLibraryInformation{}; } return ((express::base)(get_attribute_value(6))).as<::Ifc4x3_add1::IfcLibraryInformation>(); } void Ifc4x3_add1::IfcCurrencyRelationship::setRateSource(const ::Ifc4x3_add1::IfcLibraryInformation& v) { set_attribute_value(6, v);if constexpr (false)unset_attribute_value(6); } @@ -9644,7 +9644,7 @@ void Ifc4x3_add1::IfcCurtainWallType::setPredefinedType(const ::Ifc4x3_add1::Ifc const ifcopenshell::entity& Ifc4x3_add1::IfcCurtainWallType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[268]); } -Ifc4x3_add1::IfcCurtainWallType Ifc4x3_add1::IfcCurtainWallType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcCurtainWallTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcCurtainWallTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_add1::IfcCurtainWallType Ifc4x3_add1::IfcCurtainWallType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcCurtainWallTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcCurtainWallTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcCurve @@ -9653,37 +9653,37 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcCurve::Class() { return *((ifcopensh Ifc4x3_add1::IfcCurve Ifc4x3_add1::IfcCurve::initialize() { ; return *this; } // Function implementations for IfcCurveBoundedPlane -::Ifc4x3_add1::IfcPlane Ifc4x3_add1::IfcCurveBoundedPlane::BasisSurface() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcPlane>(); } +::Ifc4x3_add1::IfcPlane Ifc4x3_add1::IfcCurveBoundedPlane::BasisSurface() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcPlane>(); } void Ifc4x3_add1::IfcCurveBoundedPlane::setBasisSurface(const ::Ifc4x3_add1::IfcPlane& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } -::Ifc4x3_add1::IfcCurve Ifc4x3_add1::IfcCurveBoundedPlane::OuterBoundary() const { return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3_add1::IfcCurve>(); } +::Ifc4x3_add1::IfcCurve Ifc4x3_add1::IfcCurveBoundedPlane::OuterBoundary() const { return ((express::base)(get_attribute_value(1))).as<::Ifc4x3_add1::IfcCurve>(); } void Ifc4x3_add1::IfcCurveBoundedPlane::setOuterBoundary(const ::Ifc4x3_add1::IfcCurve& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } -std::vector< ::Ifc4x3_add1::IfcCurve > Ifc4x3_add1::IfcCurveBoundedPlane::InnerBoundaries() const { std::vector es = get_attribute_value(2); return cast_vector<::Ifc4x3_add1::IfcCurve>(es); } -void Ifc4x3_add1::IfcCurveBoundedPlane::setInnerBoundaries(const std::vector< ::Ifc4x3_add1::IfcCurve >& v) { set_attribute_value(2, cast_vector(v));if constexpr (false)unset_attribute_value(2); } +std::vector< ::Ifc4x3_add1::IfcCurve > Ifc4x3_add1::IfcCurveBoundedPlane::InnerBoundaries() const { std::vector es = get_attribute_value(2); return cast_vector<::Ifc4x3_add1::IfcCurve>(es); } +void Ifc4x3_add1::IfcCurveBoundedPlane::setInnerBoundaries(const std::vector< ::Ifc4x3_add1::IfcCurve >& v) { set_attribute_value(2, cast_vector(v));if constexpr (false)unset_attribute_value(2); } const ifcopenshell::entity& Ifc4x3_add1::IfcCurveBoundedPlane::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[272]); } -Ifc4x3_add1::IfcCurveBoundedPlane Ifc4x3_add1::IfcCurveBoundedPlane::initialize(::Ifc4x3_add1::IfcPlane v1_BasisSurface, ::Ifc4x3_add1::IfcCurve v2_OuterBoundary, std::vector< ::Ifc4x3_add1::IfcCurve > v3_InnerBoundaries) { set_attribute_value(0, (v1_BasisSurface));set_attribute_value(1, (v2_OuterBoundary));set_attribute_value(2, cast_vector(v3_InnerBoundaries));; return *this; } +Ifc4x3_add1::IfcCurveBoundedPlane Ifc4x3_add1::IfcCurveBoundedPlane::initialize(::Ifc4x3_add1::IfcPlane v1_BasisSurface, ::Ifc4x3_add1::IfcCurve v2_OuterBoundary, std::vector< ::Ifc4x3_add1::IfcCurve > v3_InnerBoundaries) { set_attribute_value(0, (v1_BasisSurface));set_attribute_value(1, (v2_OuterBoundary));set_attribute_value(2, cast_vector(v3_InnerBoundaries));; return *this; } // Function implementations for IfcCurveBoundedSurface -::Ifc4x3_add1::IfcSurface Ifc4x3_add1::IfcCurveBoundedSurface::BasisSurface() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcSurface>(); } +::Ifc4x3_add1::IfcSurface Ifc4x3_add1::IfcCurveBoundedSurface::BasisSurface() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcSurface>(); } void Ifc4x3_add1::IfcCurveBoundedSurface::setBasisSurface(const ::Ifc4x3_add1::IfcSurface& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } -std::vector< ::Ifc4x3_add1::IfcBoundaryCurve > Ifc4x3_add1::IfcCurveBoundedSurface::Boundaries() const { std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3_add1::IfcBoundaryCurve>(es); } -void Ifc4x3_add1::IfcCurveBoundedSurface::setBoundaries(const std::vector< ::Ifc4x3_add1::IfcBoundaryCurve >& v) { set_attribute_value(1, cast_vector(v));if constexpr (false)unset_attribute_value(1); } +std::vector< ::Ifc4x3_add1::IfcBoundaryCurve > Ifc4x3_add1::IfcCurveBoundedSurface::Boundaries() const { std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3_add1::IfcBoundaryCurve>(es); } +void Ifc4x3_add1::IfcCurveBoundedSurface::setBoundaries(const std::vector< ::Ifc4x3_add1::IfcBoundaryCurve >& v) { set_attribute_value(1, cast_vector(v));if constexpr (false)unset_attribute_value(1); } bool Ifc4x3_add1::IfcCurveBoundedSurface::ImplicitOuter() const { bool v = get_attribute_value(2); return v; } void Ifc4x3_add1::IfcCurveBoundedSurface::setImplicitOuter(const bool& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } const ifcopenshell::entity& Ifc4x3_add1::IfcCurveBoundedSurface::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[273]); } -Ifc4x3_add1::IfcCurveBoundedSurface Ifc4x3_add1::IfcCurveBoundedSurface::initialize(::Ifc4x3_add1::IfcSurface v1_BasisSurface, std::vector< ::Ifc4x3_add1::IfcBoundaryCurve > v2_Boundaries, bool v3_ImplicitOuter) { set_attribute_value(0, (v1_BasisSurface));set_attribute_value(1, cast_vector(v2_Boundaries));set_attribute_value(2, (v3_ImplicitOuter));; return *this; } +Ifc4x3_add1::IfcCurveBoundedSurface Ifc4x3_add1::IfcCurveBoundedSurface::initialize(::Ifc4x3_add1::IfcSurface v1_BasisSurface, std::vector< ::Ifc4x3_add1::IfcBoundaryCurve > v2_Boundaries, bool v3_ImplicitOuter) { set_attribute_value(0, (v1_BasisSurface));set_attribute_value(1, cast_vector(v2_Boundaries));set_attribute_value(2, (v3_ImplicitOuter));; return *this; } // Function implementations for IfcCurveSegment -::Ifc4x3_add1::IfcPlacement Ifc4x3_add1::IfcCurveSegment::Placement() const { return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3_add1::IfcPlacement>(); } +::Ifc4x3_add1::IfcPlacement Ifc4x3_add1::IfcCurveSegment::Placement() const { return ((express::base)(get_attribute_value(1))).as<::Ifc4x3_add1::IfcPlacement>(); } void Ifc4x3_add1::IfcCurveSegment::setPlacement(const ::Ifc4x3_add1::IfcPlacement& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } -::Ifc4x3_add1::IfcCurveMeasureSelect Ifc4x3_add1::IfcCurveSegment::SegmentStart() const { return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3_add1::IfcCurveMeasureSelect>(); } +::Ifc4x3_add1::IfcCurveMeasureSelect Ifc4x3_add1::IfcCurveSegment::SegmentStart() const { return ((express::base)(get_attribute_value(2))).as<::Ifc4x3_add1::IfcCurveMeasureSelect>(); } void Ifc4x3_add1::IfcCurveSegment::setSegmentStart(const ::Ifc4x3_add1::IfcCurveMeasureSelect& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } -::Ifc4x3_add1::IfcCurveMeasureSelect Ifc4x3_add1::IfcCurveSegment::SegmentLength() const { return ((express::Base)(get_attribute_value(3))).as<::Ifc4x3_add1::IfcCurveMeasureSelect>(); } +::Ifc4x3_add1::IfcCurveMeasureSelect Ifc4x3_add1::IfcCurveSegment::SegmentLength() const { return ((express::base)(get_attribute_value(3))).as<::Ifc4x3_add1::IfcCurveMeasureSelect>(); } void Ifc4x3_add1::IfcCurveSegment::setSegmentLength(const ::Ifc4x3_add1::IfcCurveMeasureSelect& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } -::Ifc4x3_add1::IfcCurve Ifc4x3_add1::IfcCurveSegment::ParentCurve() const { return ((express::Base)(get_attribute_value(4))).as<::Ifc4x3_add1::IfcCurve>(); } +::Ifc4x3_add1::IfcCurve Ifc4x3_add1::IfcCurveSegment::ParentCurve() const { return ((express::base)(get_attribute_value(4))).as<::Ifc4x3_add1::IfcCurve>(); } void Ifc4x3_add1::IfcCurveSegment::setParentCurve(const ::Ifc4x3_add1::IfcCurve& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } @@ -9691,11 +9691,11 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcCurveSegment::Class() { return *((if Ifc4x3_add1::IfcCurveSegment Ifc4x3_add1::IfcCurveSegment::initialize(::Ifc4x3_add1::IfcTransitionCode::Value v1_Transition, ::Ifc4x3_add1::IfcPlacement v2_Placement, ::Ifc4x3_add1::IfcCurveMeasureSelect v3_SegmentStart, ::Ifc4x3_add1::IfcCurveMeasureSelect v4_SegmentLength, ::Ifc4x3_add1::IfcCurve v5_ParentCurve) { set_attribute_value(0, (enumeration_reference(&::Ifc4x3_add1::IfcTransitionCode::Class(),(size_t)v1_Transition)));set_attribute_value(1, (v2_Placement));set_attribute_value(2, (v3_SegmentStart));set_attribute_value(3, (v4_SegmentLength));set_attribute_value(4, (v5_ParentCurve));; return *this; } // Function implementations for IfcCurveStyle -::Ifc4x3_add1::IfcCurveFontOrScaledCurveFontSelect Ifc4x3_add1::IfcCurveStyle::CurveFont() const { if(get_attribute_value(1).isNull()) { return ::Ifc4x3_add1::IfcCurveFontOrScaledCurveFontSelect{}; } return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3_add1::IfcCurveFontOrScaledCurveFontSelect>(); } +::Ifc4x3_add1::IfcCurveFontOrScaledCurveFontSelect Ifc4x3_add1::IfcCurveStyle::CurveFont() const { if(get_attribute_value(1).isNull()) { return ::Ifc4x3_add1::IfcCurveFontOrScaledCurveFontSelect{}; } return ((express::base)(get_attribute_value(1))).as<::Ifc4x3_add1::IfcCurveFontOrScaledCurveFontSelect>(); } void Ifc4x3_add1::IfcCurveStyle::setCurveFont(const ::Ifc4x3_add1::IfcCurveFontOrScaledCurveFontSelect& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } -::Ifc4x3_add1::IfcSizeSelect Ifc4x3_add1::IfcCurveStyle::CurveWidth() const { if(get_attribute_value(2).isNull()) { return ::Ifc4x3_add1::IfcSizeSelect{}; } return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3_add1::IfcSizeSelect>(); } +::Ifc4x3_add1::IfcSizeSelect Ifc4x3_add1::IfcCurveStyle::CurveWidth() const { if(get_attribute_value(2).isNull()) { return ::Ifc4x3_add1::IfcSizeSelect{}; } return ((express::base)(get_attribute_value(2))).as<::Ifc4x3_add1::IfcSizeSelect>(); } void Ifc4x3_add1::IfcCurveStyle::setCurveWidth(const ::Ifc4x3_add1::IfcSizeSelect& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } -::Ifc4x3_add1::IfcColour Ifc4x3_add1::IfcCurveStyle::CurveColour() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3_add1::IfcColour{}; } return ((express::Base)(get_attribute_value(3))).as<::Ifc4x3_add1::IfcColour>(); } +::Ifc4x3_add1::IfcColour Ifc4x3_add1::IfcCurveStyle::CurveColour() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3_add1::IfcColour{}; } return ((express::base)(get_attribute_value(3))).as<::Ifc4x3_add1::IfcColour>(); } void Ifc4x3_add1::IfcCurveStyle::setCurveColour(const ::Ifc4x3_add1::IfcColour& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } std::optional< bool > Ifc4x3_add1::IfcCurveStyle::ModelOrDraughting() const { if(get_attribute_value(4).isNull()) { return std::nullopt; } bool v = get_attribute_value(4); return v; } void Ifc4x3_add1::IfcCurveStyle::setModelOrDraughting(const std::optional< bool >& v) { if (v) {set_attribute_value(4, *v);} else {unset_attribute_value(4);} } @@ -9707,17 +9707,17 @@ Ifc4x3_add1::IfcCurveStyle Ifc4x3_add1::IfcCurveStyle::initialize(std::optional< // Function implementations for IfcCurveStyleFont std::optional< std::string > Ifc4x3_add1::IfcCurveStyleFont::Name() const { if(get_attribute_value(0).isNull()) { return std::nullopt; } std::string v = get_attribute_value(0); return v; } void Ifc4x3_add1::IfcCurveStyleFont::setName(const std::optional< std::string >& v) { if (v) {set_attribute_value(0, *v);} else {unset_attribute_value(0);} } -std::vector< ::Ifc4x3_add1::IfcCurveStyleFontPattern > Ifc4x3_add1::IfcCurveStyleFont::PatternList() const { std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3_add1::IfcCurveStyleFontPattern>(es); } -void Ifc4x3_add1::IfcCurveStyleFont::setPatternList(const std::vector< ::Ifc4x3_add1::IfcCurveStyleFontPattern >& v) { set_attribute_value(1, cast_vector(v));if constexpr (false)unset_attribute_value(1); } +std::vector< ::Ifc4x3_add1::IfcCurveStyleFontPattern > Ifc4x3_add1::IfcCurveStyleFont::PatternList() const { std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3_add1::IfcCurveStyleFontPattern>(es); } +void Ifc4x3_add1::IfcCurveStyleFont::setPatternList(const std::vector< ::Ifc4x3_add1::IfcCurveStyleFontPattern >& v) { set_attribute_value(1, cast_vector(v));if constexpr (false)unset_attribute_value(1); } const ifcopenshell::entity& Ifc4x3_add1::IfcCurveStyleFont::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[281]); } -Ifc4x3_add1::IfcCurveStyleFont Ifc4x3_add1::IfcCurveStyleFont::initialize(std::optional< std::string > v1_Name, std::vector< ::Ifc4x3_add1::IfcCurveStyleFontPattern > v2_PatternList) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); }set_attribute_value(1, cast_vector(v2_PatternList));; return *this; } +Ifc4x3_add1::IfcCurveStyleFont Ifc4x3_add1::IfcCurveStyleFont::initialize(std::optional< std::string > v1_Name, std::vector< ::Ifc4x3_add1::IfcCurveStyleFontPattern > v2_PatternList) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); }set_attribute_value(1, cast_vector(v2_PatternList));; return *this; } // Function implementations for IfcCurveStyleFontAndScaling std::optional< std::string > Ifc4x3_add1::IfcCurveStyleFontAndScaling::Name() const { if(get_attribute_value(0).isNull()) { return std::nullopt; } std::string v = get_attribute_value(0); return v; } void Ifc4x3_add1::IfcCurveStyleFontAndScaling::setName(const std::optional< std::string >& v) { if (v) {set_attribute_value(0, *v);} else {unset_attribute_value(0);} } -::Ifc4x3_add1::IfcCurveStyleFontSelect Ifc4x3_add1::IfcCurveStyleFontAndScaling::CurveStyleFont() const { return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3_add1::IfcCurveStyleFontSelect>(); } +::Ifc4x3_add1::IfcCurveStyleFontSelect Ifc4x3_add1::IfcCurveStyleFontAndScaling::CurveStyleFont() const { return ((express::base)(get_attribute_value(1))).as<::Ifc4x3_add1::IfcCurveStyleFontSelect>(); } void Ifc4x3_add1::IfcCurveStyleFontAndScaling::setCurveStyleFont(const ::Ifc4x3_add1::IfcCurveStyleFontSelect& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } double Ifc4x3_add1::IfcCurveStyleFontAndScaling::CurveFontScaling() const { double v = get_attribute_value(2); return v; } void Ifc4x3_add1::IfcCurveStyleFontAndScaling::setCurveFontScaling(const double& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } @@ -9758,7 +9758,7 @@ void Ifc4x3_add1::IfcDamperType::setPredefinedType(const ::Ifc4x3_add1::IfcDampe const ifcopenshell::entity& Ifc4x3_add1::IfcDamperType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[287]); } -Ifc4x3_add1::IfcDamperType Ifc4x3_add1::IfcDamperType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcDamperTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcDamperTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_add1::IfcDamperType Ifc4x3_add1::IfcDamperType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcDamperTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcDamperTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcDeepFoundation @@ -9770,12 +9770,12 @@ Ifc4x3_add1::IfcDeepFoundation Ifc4x3_add1::IfcDeepFoundation::initialize(std::s const ifcopenshell::entity& Ifc4x3_add1::IfcDeepFoundationType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[295]); } -Ifc4x3_add1::IfcDeepFoundationType Ifc4x3_add1::IfcDeepFoundationType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } +Ifc4x3_add1::IfcDeepFoundationType Ifc4x3_add1::IfcDeepFoundationType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } // Function implementations for IfcDerivedProfileDef -::Ifc4x3_add1::IfcProfileDef Ifc4x3_add1::IfcDerivedProfileDef::ParentProfile() const { return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3_add1::IfcProfileDef>(); } +::Ifc4x3_add1::IfcProfileDef Ifc4x3_add1::IfcDerivedProfileDef::ParentProfile() const { return ((express::base)(get_attribute_value(2))).as<::Ifc4x3_add1::IfcProfileDef>(); } void Ifc4x3_add1::IfcDerivedProfileDef::setParentProfile(const ::Ifc4x3_add1::IfcProfileDef& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } -::Ifc4x3_add1::IfcCartesianTransformationOperator2D Ifc4x3_add1::IfcDerivedProfileDef::Operator() const { return ((express::Base)(get_attribute_value(3))).as<::Ifc4x3_add1::IfcCartesianTransformationOperator2D>(); } +::Ifc4x3_add1::IfcCartesianTransformationOperator2D Ifc4x3_add1::IfcDerivedProfileDef::Operator() const { return ((express::base)(get_attribute_value(3))).as<::Ifc4x3_add1::IfcCartesianTransformationOperator2D>(); } void Ifc4x3_add1::IfcDerivedProfileDef::setOperator(const ::Ifc4x3_add1::IfcCartesianTransformationOperator2D& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } std::optional< std::string > Ifc4x3_add1::IfcDerivedProfileDef::Label() const { if(get_attribute_value(4).isNull()) { return std::nullopt; } std::string v = get_attribute_value(4); return v; } void Ifc4x3_add1::IfcDerivedProfileDef::setLabel(const std::optional< std::string >& v) { if (v) {set_attribute_value(4, *v);} else {unset_attribute_value(4);} } @@ -9785,8 +9785,8 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcDerivedProfileDef::Class() { return Ifc4x3_add1::IfcDerivedProfileDef Ifc4x3_add1::IfcDerivedProfileDef::initialize(::Ifc4x3_add1::IfcProfileTypeEnum::Value v1_ProfileType, std::optional< std::string > v2_ProfileName, ::Ifc4x3_add1::IfcProfileDef v3_ParentProfile, ::Ifc4x3_add1::IfcCartesianTransformationOperator2D v4_Operator, std::optional< std::string > v5_Label) { set_attribute_value(0, (enumeration_reference(&::Ifc4x3_add1::IfcProfileTypeEnum::Class(),(size_t)v1_ProfileType))); if (v2_ProfileName) {set_attribute_value(1, (*v2_ProfileName)); }set_attribute_value(2, (v3_ParentProfile));set_attribute_value(3, (v4_Operator)); if (v5_Label) {set_attribute_value(4, (*v5_Label)); }; return *this; } // Function implementations for IfcDerivedUnit -std::vector< ::Ifc4x3_add1::IfcDerivedUnitElement > Ifc4x3_add1::IfcDerivedUnit::Elements() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3_add1::IfcDerivedUnitElement>(es); } -void Ifc4x3_add1::IfcDerivedUnit::setElements(const std::vector< ::Ifc4x3_add1::IfcDerivedUnitElement >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } +std::vector< ::Ifc4x3_add1::IfcDerivedUnitElement > Ifc4x3_add1::IfcDerivedUnit::Elements() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3_add1::IfcDerivedUnitElement>(es); } +void Ifc4x3_add1::IfcDerivedUnit::setElements(const std::vector< ::Ifc4x3_add1::IfcDerivedUnitElement >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } ::Ifc4x3_add1::IfcDerivedUnitEnum::Value Ifc4x3_add1::IfcDerivedUnit::UnitType() const { return ::Ifc4x3_add1::IfcDerivedUnitEnum::FromString(get_attribute_value(1)); } void Ifc4x3_add1::IfcDerivedUnit::setUnitType(const ::Ifc4x3_add1::IfcDerivedUnitEnum::Value& v) { set_attribute_value(1, enumeration_reference(&::Ifc4x3_add1::IfcDerivedUnitEnum::Class(), (size_t) v));if constexpr (false)unset_attribute_value(1); } std::optional< std::string > Ifc4x3_add1::IfcDerivedUnit::UserDefinedType() const { if(get_attribute_value(2).isNull()) { return std::nullopt; } std::string v = get_attribute_value(2); return v; } @@ -9796,10 +9796,10 @@ void Ifc4x3_add1::IfcDerivedUnit::setName(const std::optional< std::string >& v) const ifcopenshell::entity& Ifc4x3_add1::IfcDerivedUnit::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[299]); } -Ifc4x3_add1::IfcDerivedUnit Ifc4x3_add1::IfcDerivedUnit::initialize(std::vector< ::Ifc4x3_add1::IfcDerivedUnitElement > v1_Elements, ::Ifc4x3_add1::IfcDerivedUnitEnum::Value v2_UnitType, std::optional< std::string > v3_UserDefinedType, std::optional< std::string > v4_Name) { set_attribute_value(0, cast_vector(v1_Elements));set_attribute_value(1, (enumeration_reference(&::Ifc4x3_add1::IfcDerivedUnitEnum::Class(),(size_t)v2_UnitType))); if (v3_UserDefinedType) {set_attribute_value(2, (*v3_UserDefinedType)); } if (v4_Name) {set_attribute_value(3, (*v4_Name)); }; return *this; } +Ifc4x3_add1::IfcDerivedUnit Ifc4x3_add1::IfcDerivedUnit::initialize(std::vector< ::Ifc4x3_add1::IfcDerivedUnitElement > v1_Elements, ::Ifc4x3_add1::IfcDerivedUnitEnum::Value v2_UnitType, std::optional< std::string > v3_UserDefinedType, std::optional< std::string > v4_Name) { set_attribute_value(0, cast_vector(v1_Elements));set_attribute_value(1, (enumeration_reference(&::Ifc4x3_add1::IfcDerivedUnitEnum::Class(),(size_t)v2_UnitType))); if (v3_UserDefinedType) {set_attribute_value(2, (*v3_UserDefinedType)); } if (v4_Name) {set_attribute_value(3, (*v4_Name)); }; return *this; } // Function implementations for IfcDerivedUnitElement -::Ifc4x3_add1::IfcNamedUnit Ifc4x3_add1::IfcDerivedUnitElement::Unit() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcNamedUnit>(); } +::Ifc4x3_add1::IfcNamedUnit Ifc4x3_add1::IfcDerivedUnitElement::Unit() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcNamedUnit>(); } void Ifc4x3_add1::IfcDerivedUnitElement::setUnit(const ::Ifc4x3_add1::IfcNamedUnit& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } int64_t Ifc4x3_add1::IfcDerivedUnitElement::Exponent() const { int64_t v = get_attribute_value(1); return v; } void Ifc4x3_add1::IfcDerivedUnitElement::setExponent(const int64_t& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } @@ -9837,11 +9837,11 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcDirection::Class() { return *((ifcop Ifc4x3_add1::IfcDirection Ifc4x3_add1::IfcDirection::initialize(std::vector< double > /*[2:3]*/ v1_DirectionRatios) { set_attribute_value(0, (v1_DirectionRatios));; return *this; } // Function implementations for IfcDirectrixCurveSweptAreaSolid -::Ifc4x3_add1::IfcCurve Ifc4x3_add1::IfcDirectrixCurveSweptAreaSolid::Directrix() const { return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3_add1::IfcCurve>(); } +::Ifc4x3_add1::IfcCurve Ifc4x3_add1::IfcDirectrixCurveSweptAreaSolid::Directrix() const { return ((express::base)(get_attribute_value(2))).as<::Ifc4x3_add1::IfcCurve>(); } void Ifc4x3_add1::IfcDirectrixCurveSweptAreaSolid::setDirectrix(const ::Ifc4x3_add1::IfcCurve& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } -::Ifc4x3_add1::IfcCurveMeasureSelect Ifc4x3_add1::IfcDirectrixCurveSweptAreaSolid::StartParam() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3_add1::IfcCurveMeasureSelect{}; } return ((express::Base)(get_attribute_value(3))).as<::Ifc4x3_add1::IfcCurveMeasureSelect>(); } +::Ifc4x3_add1::IfcCurveMeasureSelect Ifc4x3_add1::IfcDirectrixCurveSweptAreaSolid::StartParam() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3_add1::IfcCurveMeasureSelect{}; } return ((express::base)(get_attribute_value(3))).as<::Ifc4x3_add1::IfcCurveMeasureSelect>(); } void Ifc4x3_add1::IfcDirectrixCurveSweptAreaSolid::setStartParam(const ::Ifc4x3_add1::IfcCurveMeasureSelect& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } -::Ifc4x3_add1::IfcCurveMeasureSelect Ifc4x3_add1::IfcDirectrixCurveSweptAreaSolid::EndParam() const { if(get_attribute_value(4).isNull()) { return ::Ifc4x3_add1::IfcCurveMeasureSelect{}; } return ((express::Base)(get_attribute_value(4))).as<::Ifc4x3_add1::IfcCurveMeasureSelect>(); } +::Ifc4x3_add1::IfcCurveMeasureSelect Ifc4x3_add1::IfcDirectrixCurveSweptAreaSolid::EndParam() const { if(get_attribute_value(4).isNull()) { return ::Ifc4x3_add1::IfcCurveMeasureSelect{}; } return ((express::base)(get_attribute_value(4))).as<::Ifc4x3_add1::IfcCurveMeasureSelect>(); } void Ifc4x3_add1::IfcDirectrixCurveSweptAreaSolid::setEndParam(const ::Ifc4x3_add1::IfcCurveMeasureSelect& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } @@ -9868,7 +9868,7 @@ void Ifc4x3_add1::IfcDiscreteAccessoryType::setPredefinedType(const ::Ifc4x3_add const ifcopenshell::entity& Ifc4x3_add1::IfcDiscreteAccessoryType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[310]); } -Ifc4x3_add1::IfcDiscreteAccessoryType Ifc4x3_add1::IfcDiscreteAccessoryType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcDiscreteAccessoryTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcDiscreteAccessoryTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_add1::IfcDiscreteAccessoryType Ifc4x3_add1::IfcDiscreteAccessoryType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcDiscreteAccessoryTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcDiscreteAccessoryTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcDistributionBoard std::optional< ::Ifc4x3_add1::IfcDistributionBoardTypeEnum::Value > Ifc4x3_add1::IfcDistributionBoard::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_add1::IfcDistributionBoardTypeEnum::FromString(get_attribute_value(8)); } @@ -9884,7 +9884,7 @@ void Ifc4x3_add1::IfcDistributionBoardType::setPredefinedType(const ::Ifc4x3_add const ifcopenshell::entity& Ifc4x3_add1::IfcDistributionBoardType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[313]); } -Ifc4x3_add1::IfcDistributionBoardType Ifc4x3_add1::IfcDistributionBoardType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcDistributionBoardTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcDistributionBoardTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_add1::IfcDistributionBoardType Ifc4x3_add1::IfcDistributionBoardType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcDistributionBoardTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcDistributionBoardTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcDistributionChamberElement std::optional< ::Ifc4x3_add1::IfcDistributionChamberElementTypeEnum::Value > Ifc4x3_add1::IfcDistributionChamberElement::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_add1::IfcDistributionChamberElementTypeEnum::FromString(get_attribute_value(8)); } @@ -9900,7 +9900,7 @@ void Ifc4x3_add1::IfcDistributionChamberElementType::setPredefinedType(const ::I const ifcopenshell::entity& Ifc4x3_add1::IfcDistributionChamberElementType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[316]); } -Ifc4x3_add1::IfcDistributionChamberElementType Ifc4x3_add1::IfcDistributionChamberElementType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcDistributionChamberElementTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcDistributionChamberElementTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_add1::IfcDistributionChamberElementType Ifc4x3_add1::IfcDistributionChamberElementType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcDistributionChamberElementTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcDistributionChamberElementTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcDistributionCircuit @@ -9919,7 +9919,7 @@ Ifc4x3_add1::IfcDistributionControlElement Ifc4x3_add1::IfcDistributionControlEl const ifcopenshell::entity& Ifc4x3_add1::IfcDistributionControlElementType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[320]); } -Ifc4x3_add1::IfcDistributionControlElementType Ifc4x3_add1::IfcDistributionControlElementType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } +Ifc4x3_add1::IfcDistributionControlElementType Ifc4x3_add1::IfcDistributionControlElementType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } // Function implementations for IfcDistributionElement @@ -9932,7 +9932,7 @@ Ifc4x3_add1::IfcDistributionElement Ifc4x3_add1::IfcDistributionElement::initial const ifcopenshell::entity& Ifc4x3_add1::IfcDistributionElementType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[322]); } -Ifc4x3_add1::IfcDistributionElementType Ifc4x3_add1::IfcDistributionElementType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } +Ifc4x3_add1::IfcDistributionElementType Ifc4x3_add1::IfcDistributionElementType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } // Function implementations for IfcDistributionFlowElement @@ -9945,7 +9945,7 @@ Ifc4x3_add1::IfcDistributionFlowElement Ifc4x3_add1::IfcDistributionFlowElement: const ifcopenshell::entity& Ifc4x3_add1::IfcDistributionFlowElementType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[324]); } -Ifc4x3_add1::IfcDistributionFlowElementType Ifc4x3_add1::IfcDistributionFlowElementType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } +Ifc4x3_add1::IfcDistributionFlowElementType Ifc4x3_add1::IfcDistributionFlowElementType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } // Function implementations for IfcDistributionPort std::optional< ::Ifc4x3_add1::IfcFlowDirectionEnum::Value > Ifc4x3_add1::IfcDistributionPort::FlowDirection() const { if(get_attribute_value(7).isNull()) { return std::nullopt; } return ::Ifc4x3_add1::IfcFlowDirectionEnum::FromString(get_attribute_value(7)); } @@ -9986,10 +9986,10 @@ std::optional< std::string > Ifc4x3_add1::IfcDocumentInformation::Scope() const void Ifc4x3_add1::IfcDocumentInformation::setScope(const std::optional< std::string >& v) { if (v) {set_attribute_value(6, *v);} else {unset_attribute_value(6);} } std::optional< std::string > Ifc4x3_add1::IfcDocumentInformation::Revision() const { if(get_attribute_value(7).isNull()) { return std::nullopt; } std::string v = get_attribute_value(7); return v; } void Ifc4x3_add1::IfcDocumentInformation::setRevision(const std::optional< std::string >& v) { if (v) {set_attribute_value(7, *v);} else {unset_attribute_value(7);} } -::Ifc4x3_add1::IfcActorSelect Ifc4x3_add1::IfcDocumentInformation::DocumentOwner() const { if(get_attribute_value(8).isNull()) { return ::Ifc4x3_add1::IfcActorSelect{}; } return ((express::Base)(get_attribute_value(8))).as<::Ifc4x3_add1::IfcActorSelect>(); } +::Ifc4x3_add1::IfcActorSelect Ifc4x3_add1::IfcDocumentInformation::DocumentOwner() const { if(get_attribute_value(8).isNull()) { return ::Ifc4x3_add1::IfcActorSelect{}; } return ((express::base)(get_attribute_value(8))).as<::Ifc4x3_add1::IfcActorSelect>(); } void Ifc4x3_add1::IfcDocumentInformation::setDocumentOwner(const ::Ifc4x3_add1::IfcActorSelect& v) { set_attribute_value(8, v);if constexpr (false)unset_attribute_value(8); } -std::optional< std::vector< ::Ifc4x3_add1::IfcActorSelect > > Ifc4x3_add1::IfcDocumentInformation::Editors() const { if(get_attribute_value(9).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(9); return cast_vector<::Ifc4x3_add1::IfcActorSelect>(es); } -void Ifc4x3_add1::IfcDocumentInformation::setEditors(const std::optional< std::vector< ::Ifc4x3_add1::IfcActorSelect > >& v) { if (v) {set_attribute_value(9, cast_vector(*v));} else {unset_attribute_value(9);} } +std::optional< std::vector< ::Ifc4x3_add1::IfcActorSelect > > Ifc4x3_add1::IfcDocumentInformation::Editors() const { if(get_attribute_value(9).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(9); return cast_vector<::Ifc4x3_add1::IfcActorSelect>(es); } +void Ifc4x3_add1::IfcDocumentInformation::setEditors(const std::optional< std::vector< ::Ifc4x3_add1::IfcActorSelect > >& v) { if (v) {set_attribute_value(9, cast_vector(*v));} else {unset_attribute_value(9);} } std::optional< std::string > Ifc4x3_add1::IfcDocumentInformation::CreationTime() const { if(get_attribute_value(10).isNull()) { return std::nullopt; } std::string v = get_attribute_value(10); return v; } void Ifc4x3_add1::IfcDocumentInformation::setCreationTime(const std::optional< std::string >& v) { if (v) {set_attribute_value(10, *v);} else {unset_attribute_value(10);} } std::optional< std::string > Ifc4x3_add1::IfcDocumentInformation::LastRevisionTime() const { if(get_attribute_value(11).isNull()) { return std::nullopt; } std::string v = get_attribute_value(11); return v; } @@ -10011,24 +10011,24 @@ std::vector<::Ifc4x3_add1::IfcDocumentInformationRelationship> Ifc4x3_add1::IfcD std::vector<::Ifc4x3_add1::IfcDocumentInformationRelationship> Ifc4x3_add1::IfcDocumentInformation::IsPointer() const { return cast_vector(file()->get_inverse(data()->id(), IFC4X3_ADD1_types[331], 2)); } const ifcopenshell::entity& Ifc4x3_add1::IfcDocumentInformation::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[330]); } -Ifc4x3_add1::IfcDocumentInformation Ifc4x3_add1::IfcDocumentInformation::initialize(std::string v1_Identification, std::string v2_Name, std::optional< std::string > v3_Description, std::optional< std::string > v4_Location, std::optional< std::string > v5_Purpose, std::optional< std::string > v6_IntendedUse, std::optional< std::string > v7_Scope, std::optional< std::string > v8_Revision, ::Ifc4x3_add1::IfcActorSelect v9_DocumentOwner, std::optional< std::vector< ::Ifc4x3_add1::IfcActorSelect > > v10_Editors, std::optional< std::string > v11_CreationTime, std::optional< std::string > v12_LastRevisionTime, std::optional< std::string > v13_ElectronicFormat, std::optional< std::string > v14_ValidFrom, std::optional< std::string > v15_ValidUntil, std::optional< ::Ifc4x3_add1::IfcDocumentConfidentialityEnum::Value > v16_Confidentiality, std::optional< ::Ifc4x3_add1::IfcDocumentStatusEnum::Value > v17_Status) { set_attribute_value(0, (v1_Identification));set_attribute_value(1, (v2_Name)); if (v3_Description) {set_attribute_value(2, (*v3_Description)); } if (v4_Location) {set_attribute_value(3, (*v4_Location)); } if (v5_Purpose) {set_attribute_value(4, (*v5_Purpose)); } if (v6_IntendedUse) {set_attribute_value(5, (*v6_IntendedUse)); } if (v7_Scope) {set_attribute_value(6, (*v7_Scope)); } if (v8_Revision) {set_attribute_value(7, (*v8_Revision)); }set_attribute_value(8, (v9_DocumentOwner)); if (v10_Editors) {set_attribute_value(9, cast_vector(*v10_Editors)); } if (v11_CreationTime) {set_attribute_value(10, (*v11_CreationTime)); } if (v12_LastRevisionTime) {set_attribute_value(11, (*v12_LastRevisionTime)); } if (v13_ElectronicFormat) {set_attribute_value(12, (*v13_ElectronicFormat)); } if (v14_ValidFrom) {set_attribute_value(13, (*v14_ValidFrom)); } if (v15_ValidUntil) {set_attribute_value(14, (*v15_ValidUntil)); } if (v16_Confidentiality) {set_attribute_value(15, (enumeration_reference(&::Ifc4x3_add1::IfcDocumentConfidentialityEnum::Class(),(size_t)*v16_Confidentiality))); } if (v17_Status) {set_attribute_value(16, (enumeration_reference(&::Ifc4x3_add1::IfcDocumentStatusEnum::Class(),(size_t)*v17_Status))); }; return *this; } +Ifc4x3_add1::IfcDocumentInformation Ifc4x3_add1::IfcDocumentInformation::initialize(std::string v1_Identification, std::string v2_Name, std::optional< std::string > v3_Description, std::optional< std::string > v4_Location, std::optional< std::string > v5_Purpose, std::optional< std::string > v6_IntendedUse, std::optional< std::string > v7_Scope, std::optional< std::string > v8_Revision, ::Ifc4x3_add1::IfcActorSelect v9_DocumentOwner, std::optional< std::vector< ::Ifc4x3_add1::IfcActorSelect > > v10_Editors, std::optional< std::string > v11_CreationTime, std::optional< std::string > v12_LastRevisionTime, std::optional< std::string > v13_ElectronicFormat, std::optional< std::string > v14_ValidFrom, std::optional< std::string > v15_ValidUntil, std::optional< ::Ifc4x3_add1::IfcDocumentConfidentialityEnum::Value > v16_Confidentiality, std::optional< ::Ifc4x3_add1::IfcDocumentStatusEnum::Value > v17_Status) { set_attribute_value(0, (v1_Identification));set_attribute_value(1, (v2_Name)); if (v3_Description) {set_attribute_value(2, (*v3_Description)); } if (v4_Location) {set_attribute_value(3, (*v4_Location)); } if (v5_Purpose) {set_attribute_value(4, (*v5_Purpose)); } if (v6_IntendedUse) {set_attribute_value(5, (*v6_IntendedUse)); } if (v7_Scope) {set_attribute_value(6, (*v7_Scope)); } if (v8_Revision) {set_attribute_value(7, (*v8_Revision)); }set_attribute_value(8, (v9_DocumentOwner)); if (v10_Editors) {set_attribute_value(9, cast_vector(*v10_Editors)); } if (v11_CreationTime) {set_attribute_value(10, (*v11_CreationTime)); } if (v12_LastRevisionTime) {set_attribute_value(11, (*v12_LastRevisionTime)); } if (v13_ElectronicFormat) {set_attribute_value(12, (*v13_ElectronicFormat)); } if (v14_ValidFrom) {set_attribute_value(13, (*v14_ValidFrom)); } if (v15_ValidUntil) {set_attribute_value(14, (*v15_ValidUntil)); } if (v16_Confidentiality) {set_attribute_value(15, (enumeration_reference(&::Ifc4x3_add1::IfcDocumentConfidentialityEnum::Class(),(size_t)*v16_Confidentiality))); } if (v17_Status) {set_attribute_value(16, (enumeration_reference(&::Ifc4x3_add1::IfcDocumentStatusEnum::Class(),(size_t)*v17_Status))); }; return *this; } // Function implementations for IfcDocumentInformationRelationship -::Ifc4x3_add1::IfcDocumentInformation Ifc4x3_add1::IfcDocumentInformationRelationship::RelatingDocument() const { return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3_add1::IfcDocumentInformation>(); } +::Ifc4x3_add1::IfcDocumentInformation Ifc4x3_add1::IfcDocumentInformationRelationship::RelatingDocument() const { return ((express::base)(get_attribute_value(2))).as<::Ifc4x3_add1::IfcDocumentInformation>(); } void Ifc4x3_add1::IfcDocumentInformationRelationship::setRelatingDocument(const ::Ifc4x3_add1::IfcDocumentInformation& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } -std::vector< ::Ifc4x3_add1::IfcDocumentInformation > Ifc4x3_add1::IfcDocumentInformationRelationship::RelatedDocuments() const { std::vector es = get_attribute_value(3); return cast_vector<::Ifc4x3_add1::IfcDocumentInformation>(es); } -void Ifc4x3_add1::IfcDocumentInformationRelationship::setRelatedDocuments(const std::vector< ::Ifc4x3_add1::IfcDocumentInformation >& v) { set_attribute_value(3, cast_vector(v));if constexpr (false)unset_attribute_value(3); } +std::vector< ::Ifc4x3_add1::IfcDocumentInformation > Ifc4x3_add1::IfcDocumentInformationRelationship::RelatedDocuments() const { std::vector es = get_attribute_value(3); return cast_vector<::Ifc4x3_add1::IfcDocumentInformation>(es); } +void Ifc4x3_add1::IfcDocumentInformationRelationship::setRelatedDocuments(const std::vector< ::Ifc4x3_add1::IfcDocumentInformation >& v) { set_attribute_value(3, cast_vector(v));if constexpr (false)unset_attribute_value(3); } std::optional< std::string > Ifc4x3_add1::IfcDocumentInformationRelationship::RelationshipType() const { if(get_attribute_value(4).isNull()) { return std::nullopt; } std::string v = get_attribute_value(4); return v; } void Ifc4x3_add1::IfcDocumentInformationRelationship::setRelationshipType(const std::optional< std::string >& v) { if (v) {set_attribute_value(4, *v);} else {unset_attribute_value(4);} } const ifcopenshell::entity& Ifc4x3_add1::IfcDocumentInformationRelationship::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[331]); } -Ifc4x3_add1::IfcDocumentInformationRelationship Ifc4x3_add1::IfcDocumentInformationRelationship::initialize(std::optional< std::string > v1_Name, std::optional< std::string > v2_Description, ::Ifc4x3_add1::IfcDocumentInformation v3_RelatingDocument, std::vector< ::Ifc4x3_add1::IfcDocumentInformation > v4_RelatedDocuments, std::optional< std::string > v5_RelationshipType) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); } if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, (v3_RelatingDocument));set_attribute_value(3, cast_vector(v4_RelatedDocuments)); if (v5_RelationshipType) {set_attribute_value(4, (*v5_RelationshipType)); }; return *this; } +Ifc4x3_add1::IfcDocumentInformationRelationship Ifc4x3_add1::IfcDocumentInformationRelationship::initialize(std::optional< std::string > v1_Name, std::optional< std::string > v2_Description, ::Ifc4x3_add1::IfcDocumentInformation v3_RelatingDocument, std::vector< ::Ifc4x3_add1::IfcDocumentInformation > v4_RelatedDocuments, std::optional< std::string > v5_RelationshipType) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); } if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, (v3_RelatingDocument));set_attribute_value(3, cast_vector(v4_RelatedDocuments)); if (v5_RelationshipType) {set_attribute_value(4, (*v5_RelationshipType)); }; return *this; } // Function implementations for IfcDocumentReference std::optional< std::string > Ifc4x3_add1::IfcDocumentReference::Description() const { if(get_attribute_value(3).isNull()) { return std::nullopt; } std::string v = get_attribute_value(3); return v; } void Ifc4x3_add1::IfcDocumentReference::setDescription(const std::optional< std::string >& v) { if (v) {set_attribute_value(3, *v);} else {unset_attribute_value(3);} } -::Ifc4x3_add1::IfcDocumentInformation Ifc4x3_add1::IfcDocumentReference::ReferencedDocument() const { if(get_attribute_value(4).isNull()) { return ::Ifc4x3_add1::IfcDocumentInformation{}; } return ((express::Base)(get_attribute_value(4))).as<::Ifc4x3_add1::IfcDocumentInformation>(); } +::Ifc4x3_add1::IfcDocumentInformation Ifc4x3_add1::IfcDocumentReference::ReferencedDocument() const { if(get_attribute_value(4).isNull()) { return ::Ifc4x3_add1::IfcDocumentInformation{}; } return ((express::base)(get_attribute_value(4))).as<::Ifc4x3_add1::IfcDocumentInformation>(); } void Ifc4x3_add1::IfcDocumentReference::setReferencedDocument(const ::Ifc4x3_add1::IfcDocumentInformation& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } std::vector<::Ifc4x3_add1::IfcRelAssociatesDocument> Ifc4x3_add1::IfcDocumentReference::DocumentRefForObjects() const { return cast_vector(file()->get_inverse(data()->id(), IFC4X3_ADD1_types[912], 5)); } @@ -10073,7 +10073,7 @@ std::optional< double > Ifc4x3_add1::IfcDoorLiningProperties::CasingThickness() void Ifc4x3_add1::IfcDoorLiningProperties::setCasingThickness(const std::optional< double >& v) { if (v) {set_attribute_value(12, *v);} else {unset_attribute_value(12);} } std::optional< double > Ifc4x3_add1::IfcDoorLiningProperties::CasingDepth() const { if(get_attribute_value(13).isNull()) { return std::nullopt; } double v = get_attribute_value(13); return v; } void Ifc4x3_add1::IfcDoorLiningProperties::setCasingDepth(const std::optional< double >& v) { if (v) {set_attribute_value(13, *v);} else {unset_attribute_value(13);} } -::Ifc4x3_add1::IfcShapeAspect Ifc4x3_add1::IfcDoorLiningProperties::ShapeAspectStyle() const { if(get_attribute_value(14).isNull()) { return ::Ifc4x3_add1::IfcShapeAspect{}; } return ((express::Base)(get_attribute_value(14))).as<::Ifc4x3_add1::IfcShapeAspect>(); } +::Ifc4x3_add1::IfcShapeAspect Ifc4x3_add1::IfcDoorLiningProperties::ShapeAspectStyle() const { if(get_attribute_value(14).isNull()) { return ::Ifc4x3_add1::IfcShapeAspect{}; } return ((express::base)(get_attribute_value(14))).as<::Ifc4x3_add1::IfcShapeAspect>(); } void Ifc4x3_add1::IfcDoorLiningProperties::setShapeAspectStyle(const ::Ifc4x3_add1::IfcShapeAspect& v) { set_attribute_value(14, v);if constexpr (false)unset_attribute_value(14); } std::optional< double > Ifc4x3_add1::IfcDoorLiningProperties::LiningToPanelOffsetX() const { if(get_attribute_value(15).isNull()) { return std::nullopt; } double v = get_attribute_value(15); return v; } void Ifc4x3_add1::IfcDoorLiningProperties::setLiningToPanelOffsetX(const std::optional< double >& v) { if (v) {set_attribute_value(15, *v);} else {unset_attribute_value(15);} } @@ -10093,7 +10093,7 @@ std::optional< double > Ifc4x3_add1::IfcDoorPanelProperties::PanelWidth() const void Ifc4x3_add1::IfcDoorPanelProperties::setPanelWidth(const std::optional< double >& v) { if (v) {set_attribute_value(6, *v);} else {unset_attribute_value(6);} } ::Ifc4x3_add1::IfcDoorPanelPositionEnum::Value Ifc4x3_add1::IfcDoorPanelProperties::PanelPosition() const { return ::Ifc4x3_add1::IfcDoorPanelPositionEnum::FromString(get_attribute_value(7)); } void Ifc4x3_add1::IfcDoorPanelProperties::setPanelPosition(const ::Ifc4x3_add1::IfcDoorPanelPositionEnum::Value& v) { set_attribute_value(7, enumeration_reference(&::Ifc4x3_add1::IfcDoorPanelPositionEnum::Class(), (size_t) v));if constexpr (false)unset_attribute_value(7); } -::Ifc4x3_add1::IfcShapeAspect Ifc4x3_add1::IfcDoorPanelProperties::ShapeAspectStyle() const { if(get_attribute_value(8).isNull()) { return ::Ifc4x3_add1::IfcShapeAspect{}; } return ((express::Base)(get_attribute_value(8))).as<::Ifc4x3_add1::IfcShapeAspect>(); } +::Ifc4x3_add1::IfcShapeAspect Ifc4x3_add1::IfcDoorPanelProperties::ShapeAspectStyle() const { if(get_attribute_value(8).isNull()) { return ::Ifc4x3_add1::IfcShapeAspect{}; } return ((express::base)(get_attribute_value(8))).as<::Ifc4x3_add1::IfcShapeAspect>(); } void Ifc4x3_add1::IfcDoorPanelProperties::setShapeAspectStyle(const ::Ifc4x3_add1::IfcShapeAspect& v) { set_attribute_value(8, v);if constexpr (false)unset_attribute_value(8); } @@ -10112,7 +10112,7 @@ void Ifc4x3_add1::IfcDoorType::setUserDefinedOperationType(const std::optional< const ifcopenshell::entity& Ifc4x3_add1::IfcDoorType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[340]); } -Ifc4x3_add1::IfcDoorType Ifc4x3_add1::IfcDoorType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcDoorTypeEnum::Value v10_PredefinedType, ::Ifc4x3_add1::IfcDoorTypeOperationEnum::Value v11_OperationType, std::optional< bool > v12_ParameterTakesPrecedence, std::optional< std::string > v13_UserDefinedOperationType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcDoorTypeEnum::Class(),(size_t)v10_PredefinedType)));set_attribute_value(10, (enumeration_reference(&::Ifc4x3_add1::IfcDoorTypeOperationEnum::Class(),(size_t)v11_OperationType))); if (v12_ParameterTakesPrecedence) {set_attribute_value(11, (*v12_ParameterTakesPrecedence)); } if (v13_UserDefinedOperationType) {set_attribute_value(12, (*v13_UserDefinedOperationType)); }; return *this; } +Ifc4x3_add1::IfcDoorType Ifc4x3_add1::IfcDoorType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcDoorTypeEnum::Value v10_PredefinedType, ::Ifc4x3_add1::IfcDoorTypeOperationEnum::Value v11_OperationType, std::optional< bool > v12_ParameterTakesPrecedence, std::optional< std::string > v13_UserDefinedOperationType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcDoorTypeEnum::Class(),(size_t)v10_PredefinedType)));set_attribute_value(10, (enumeration_reference(&::Ifc4x3_add1::IfcDoorTypeOperationEnum::Class(),(size_t)v11_OperationType))); if (v12_ParameterTakesPrecedence) {set_attribute_value(11, (*v12_ParameterTakesPrecedence)); } if (v13_UserDefinedOperationType) {set_attribute_value(12, (*v13_UserDefinedOperationType)); }; return *this; } // Function implementations for IfcDraughtingPreDefinedColour @@ -10140,7 +10140,7 @@ void Ifc4x3_add1::IfcDuctFittingType::setPredefinedType(const ::Ifc4x3_add1::Ifc const ifcopenshell::entity& Ifc4x3_add1::IfcDuctFittingType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[347]); } -Ifc4x3_add1::IfcDuctFittingType Ifc4x3_add1::IfcDuctFittingType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcDuctFittingTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcDuctFittingTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_add1::IfcDuctFittingType Ifc4x3_add1::IfcDuctFittingType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcDuctFittingTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcDuctFittingTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcDuctSegment std::optional< ::Ifc4x3_add1::IfcDuctSegmentTypeEnum::Value > Ifc4x3_add1::IfcDuctSegment::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_add1::IfcDuctSegmentTypeEnum::FromString(get_attribute_value(8)); } @@ -10156,7 +10156,7 @@ void Ifc4x3_add1::IfcDuctSegmentType::setPredefinedType(const ::Ifc4x3_add1::Ifc const ifcopenshell::entity& Ifc4x3_add1::IfcDuctSegmentType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[350]); } -Ifc4x3_add1::IfcDuctSegmentType Ifc4x3_add1::IfcDuctSegmentType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcDuctSegmentTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcDuctSegmentTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_add1::IfcDuctSegmentType Ifc4x3_add1::IfcDuctSegmentType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcDuctSegmentTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcDuctSegmentTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcDuctSilencer std::optional< ::Ifc4x3_add1::IfcDuctSilencerTypeEnum::Value > Ifc4x3_add1::IfcDuctSilencer::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_add1::IfcDuctSilencerTypeEnum::FromString(get_attribute_value(8)); } @@ -10172,7 +10172,7 @@ void Ifc4x3_add1::IfcDuctSilencerType::setPredefinedType(const ::Ifc4x3_add1::If const ifcopenshell::entity& Ifc4x3_add1::IfcDuctSilencerType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[353]); } -Ifc4x3_add1::IfcDuctSilencerType Ifc4x3_add1::IfcDuctSilencerType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcDuctSilencerTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcDuctSilencerTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_add1::IfcDuctSilencerType Ifc4x3_add1::IfcDuctSilencerType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcDuctSilencerTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcDuctSilencerTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcEarthworksCut std::optional< ::Ifc4x3_add1::IfcEarthworksCutTypeEnum::Value > Ifc4x3_add1::IfcEarthworksCut::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_add1::IfcEarthworksCutTypeEnum::FromString(get_attribute_value(8)); } @@ -10197,9 +10197,9 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcEarthworksFill::Class() { return *(( Ifc4x3_add1::IfcEarthworksFill Ifc4x3_add1::IfcEarthworksFill::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, ::Ifc4x3_add1::IfcObjectPlacement v6_ObjectPlacement, ::Ifc4x3_add1::IfcProductRepresentation v7_Representation, std::optional< std::string > v8_Tag, std::optional< ::Ifc4x3_add1::IfcEarthworksFillTypeEnum::Value > v9_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); }set_attribute_value(5, (v6_ObjectPlacement));set_attribute_value(6, (v7_Representation)); if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_PredefinedType) {set_attribute_value(8, (enumeration_reference(&::Ifc4x3_add1::IfcEarthworksFillTypeEnum::Class(),(size_t)*v9_PredefinedType))); }; return *this; } // Function implementations for IfcEdge -::Ifc4x3_add1::IfcVertex Ifc4x3_add1::IfcEdge::EdgeStart() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcVertex>(); } +::Ifc4x3_add1::IfcVertex Ifc4x3_add1::IfcEdge::EdgeStart() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcVertex>(); } void Ifc4x3_add1::IfcEdge::setEdgeStart(const ::Ifc4x3_add1::IfcVertex& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } -::Ifc4x3_add1::IfcVertex Ifc4x3_add1::IfcEdge::EdgeEnd() const { return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3_add1::IfcVertex>(); } +::Ifc4x3_add1::IfcVertex Ifc4x3_add1::IfcEdge::EdgeEnd() const { return ((express::base)(get_attribute_value(1))).as<::Ifc4x3_add1::IfcVertex>(); } void Ifc4x3_add1::IfcEdge::setEdgeEnd(const ::Ifc4x3_add1::IfcVertex& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } @@ -10207,7 +10207,7 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcEdge::Class() { return *((ifcopenshe Ifc4x3_add1::IfcEdge Ifc4x3_add1::IfcEdge::initialize(::Ifc4x3_add1::IfcVertex v1_EdgeStart, ::Ifc4x3_add1::IfcVertex v2_EdgeEnd) { set_attribute_value(0, (v1_EdgeStart));set_attribute_value(1, (v2_EdgeEnd));; return *this; } // Function implementations for IfcEdgeCurve -::Ifc4x3_add1::IfcCurve Ifc4x3_add1::IfcEdgeCurve::EdgeGeometry() const { return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3_add1::IfcCurve>(); } +::Ifc4x3_add1::IfcCurve Ifc4x3_add1::IfcEdgeCurve::EdgeGeometry() const { return ((express::base)(get_attribute_value(2))).as<::Ifc4x3_add1::IfcCurve>(); } void Ifc4x3_add1::IfcEdgeCurve::setEdgeGeometry(const ::Ifc4x3_add1::IfcCurve& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } bool Ifc4x3_add1::IfcEdgeCurve::SameSense() const { bool v = get_attribute_value(3); return v; } void Ifc4x3_add1::IfcEdgeCurve::setSameSense(const bool& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } @@ -10217,12 +10217,12 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcEdgeCurve::Class() { return *((ifcop Ifc4x3_add1::IfcEdgeCurve Ifc4x3_add1::IfcEdgeCurve::initialize(::Ifc4x3_add1::IfcVertex v1_EdgeStart, ::Ifc4x3_add1::IfcVertex v2_EdgeEnd, ::Ifc4x3_add1::IfcCurve v3_EdgeGeometry, bool v4_SameSense) { set_attribute_value(0, (v1_EdgeStart));set_attribute_value(1, (v2_EdgeEnd));set_attribute_value(2, (v3_EdgeGeometry));set_attribute_value(3, (v4_SameSense));; return *this; } // Function implementations for IfcEdgeLoop -std::vector< ::Ifc4x3_add1::IfcOrientedEdge > Ifc4x3_add1::IfcEdgeLoop::EdgeList() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3_add1::IfcOrientedEdge>(es); } -void Ifc4x3_add1::IfcEdgeLoop::setEdgeList(const std::vector< ::Ifc4x3_add1::IfcOrientedEdge >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } +std::vector< ::Ifc4x3_add1::IfcOrientedEdge > Ifc4x3_add1::IfcEdgeLoop::EdgeList() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3_add1::IfcOrientedEdge>(es); } +void Ifc4x3_add1::IfcEdgeLoop::setEdgeList(const std::vector< ::Ifc4x3_add1::IfcOrientedEdge >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } const ifcopenshell::entity& Ifc4x3_add1::IfcEdgeLoop::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[364]); } -Ifc4x3_add1::IfcEdgeLoop Ifc4x3_add1::IfcEdgeLoop::initialize(std::vector< ::Ifc4x3_add1::IfcOrientedEdge > v1_EdgeList) { set_attribute_value(0, cast_vector(v1_EdgeList));; return *this; } +Ifc4x3_add1::IfcEdgeLoop Ifc4x3_add1::IfcEdgeLoop::initialize(std::vector< ::Ifc4x3_add1::IfcOrientedEdge > v1_EdgeList) { set_attribute_value(0, cast_vector(v1_EdgeList));; return *this; } // Function implementations for IfcElectricAppliance std::optional< ::Ifc4x3_add1::IfcElectricApplianceTypeEnum::Value > Ifc4x3_add1::IfcElectricAppliance::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_add1::IfcElectricApplianceTypeEnum::FromString(get_attribute_value(8)); } @@ -10238,7 +10238,7 @@ void Ifc4x3_add1::IfcElectricApplianceType::setPredefinedType(const ::Ifc4x3_add const ifcopenshell::entity& Ifc4x3_add1::IfcElectricApplianceType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[366]); } -Ifc4x3_add1::IfcElectricApplianceType Ifc4x3_add1::IfcElectricApplianceType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcElectricApplianceTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcElectricApplianceTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_add1::IfcElectricApplianceType Ifc4x3_add1::IfcElectricApplianceType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcElectricApplianceTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcElectricApplianceTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcElectricDistributionBoard std::optional< ::Ifc4x3_add1::IfcElectricDistributionBoardTypeEnum::Value > Ifc4x3_add1::IfcElectricDistributionBoard::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_add1::IfcElectricDistributionBoardTypeEnum::FromString(get_attribute_value(8)); } @@ -10254,7 +10254,7 @@ void Ifc4x3_add1::IfcElectricDistributionBoardType::setPredefinedType(const ::If const ifcopenshell::entity& Ifc4x3_add1::IfcElectricDistributionBoardType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[373]); } -Ifc4x3_add1::IfcElectricDistributionBoardType Ifc4x3_add1::IfcElectricDistributionBoardType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcElectricDistributionBoardTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcElectricDistributionBoardTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_add1::IfcElectricDistributionBoardType Ifc4x3_add1::IfcElectricDistributionBoardType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcElectricDistributionBoardTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcElectricDistributionBoardTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcElectricFlowStorageDevice std::optional< ::Ifc4x3_add1::IfcElectricFlowStorageDeviceTypeEnum::Value > Ifc4x3_add1::IfcElectricFlowStorageDevice::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_add1::IfcElectricFlowStorageDeviceTypeEnum::FromString(get_attribute_value(8)); } @@ -10270,7 +10270,7 @@ void Ifc4x3_add1::IfcElectricFlowStorageDeviceType::setPredefinedType(const ::If const ifcopenshell::entity& Ifc4x3_add1::IfcElectricFlowStorageDeviceType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[376]); } -Ifc4x3_add1::IfcElectricFlowStorageDeviceType Ifc4x3_add1::IfcElectricFlowStorageDeviceType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcElectricFlowStorageDeviceTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcElectricFlowStorageDeviceTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_add1::IfcElectricFlowStorageDeviceType Ifc4x3_add1::IfcElectricFlowStorageDeviceType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcElectricFlowStorageDeviceTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcElectricFlowStorageDeviceTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcElectricFlowTreatmentDevice std::optional< ::Ifc4x3_add1::IfcElectricFlowTreatmentDeviceTypeEnum::Value > Ifc4x3_add1::IfcElectricFlowTreatmentDevice::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_add1::IfcElectricFlowTreatmentDeviceTypeEnum::FromString(get_attribute_value(8)); } @@ -10286,7 +10286,7 @@ void Ifc4x3_add1::IfcElectricFlowTreatmentDeviceType::setPredefinedType(const :: const ifcopenshell::entity& Ifc4x3_add1::IfcElectricFlowTreatmentDeviceType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[379]); } -Ifc4x3_add1::IfcElectricFlowTreatmentDeviceType Ifc4x3_add1::IfcElectricFlowTreatmentDeviceType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcElectricFlowTreatmentDeviceTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcElectricFlowTreatmentDeviceTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_add1::IfcElectricFlowTreatmentDeviceType Ifc4x3_add1::IfcElectricFlowTreatmentDeviceType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcElectricFlowTreatmentDeviceTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcElectricFlowTreatmentDeviceTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcElectricGenerator std::optional< ::Ifc4x3_add1::IfcElectricGeneratorTypeEnum::Value > Ifc4x3_add1::IfcElectricGenerator::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_add1::IfcElectricGeneratorTypeEnum::FromString(get_attribute_value(8)); } @@ -10302,7 +10302,7 @@ void Ifc4x3_add1::IfcElectricGeneratorType::setPredefinedType(const ::Ifc4x3_add const ifcopenshell::entity& Ifc4x3_add1::IfcElectricGeneratorType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[382]); } -Ifc4x3_add1::IfcElectricGeneratorType Ifc4x3_add1::IfcElectricGeneratorType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcElectricGeneratorTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcElectricGeneratorTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_add1::IfcElectricGeneratorType Ifc4x3_add1::IfcElectricGeneratorType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcElectricGeneratorTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcElectricGeneratorTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcElectricMotor std::optional< ::Ifc4x3_add1::IfcElectricMotorTypeEnum::Value > Ifc4x3_add1::IfcElectricMotor::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_add1::IfcElectricMotorTypeEnum::FromString(get_attribute_value(8)); } @@ -10318,7 +10318,7 @@ void Ifc4x3_add1::IfcElectricMotorType::setPredefinedType(const ::Ifc4x3_add1::I const ifcopenshell::entity& Ifc4x3_add1::IfcElectricMotorType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[385]); } -Ifc4x3_add1::IfcElectricMotorType Ifc4x3_add1::IfcElectricMotorType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcElectricMotorTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcElectricMotorTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_add1::IfcElectricMotorType Ifc4x3_add1::IfcElectricMotorType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcElectricMotorTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcElectricMotorTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcElectricTimeControl std::optional< ::Ifc4x3_add1::IfcElectricTimeControlTypeEnum::Value > Ifc4x3_add1::IfcElectricTimeControl::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_add1::IfcElectricTimeControlTypeEnum::FromString(get_attribute_value(8)); } @@ -10334,7 +10334,7 @@ void Ifc4x3_add1::IfcElectricTimeControlType::setPredefinedType(const ::Ifc4x3_a const ifcopenshell::entity& Ifc4x3_add1::IfcElectricTimeControlType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[389]); } -Ifc4x3_add1::IfcElectricTimeControlType Ifc4x3_add1::IfcElectricTimeControlType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcElectricTimeControlTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcElectricTimeControlTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_add1::IfcElectricTimeControlType Ifc4x3_add1::IfcElectricTimeControlType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcElectricTimeControlTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcElectricTimeControlTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcElement std::optional< std::string > Ifc4x3_add1::IfcElement::Tag() const { if(get_attribute_value(7).isNull()) { return std::nullopt; } std::string v = get_attribute_value(7); return v; } @@ -10372,7 +10372,7 @@ void Ifc4x3_add1::IfcElementAssemblyType::setPredefinedType(const ::Ifc4x3_add1: const ifcopenshell::entity& Ifc4x3_add1::IfcElementAssemblyType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[395]); } -Ifc4x3_add1::IfcElementAssemblyType Ifc4x3_add1::IfcElementAssemblyType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcElementAssemblyTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcElementAssemblyTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_add1::IfcElementAssemblyType Ifc4x3_add1::IfcElementAssemblyType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcElementAssemblyTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcElementAssemblyTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcElementComponent @@ -10384,17 +10384,17 @@ Ifc4x3_add1::IfcElementComponent Ifc4x3_add1::IfcElementComponent::initialize(st const ifcopenshell::entity& Ifc4x3_add1::IfcElementComponentType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[398]); } -Ifc4x3_add1::IfcElementComponentType Ifc4x3_add1::IfcElementComponentType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } +Ifc4x3_add1::IfcElementComponentType Ifc4x3_add1::IfcElementComponentType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } // Function implementations for IfcElementQuantity std::optional< std::string > Ifc4x3_add1::IfcElementQuantity::MethodOfMeasurement() const { if(get_attribute_value(4).isNull()) { return std::nullopt; } std::string v = get_attribute_value(4); return v; } void Ifc4x3_add1::IfcElementQuantity::setMethodOfMeasurement(const std::optional< std::string >& v) { if (v) {set_attribute_value(4, *v);} else {unset_attribute_value(4);} } -std::vector< ::Ifc4x3_add1::IfcPhysicalQuantity > Ifc4x3_add1::IfcElementQuantity::Quantities() const { std::vector es = get_attribute_value(5); return cast_vector<::Ifc4x3_add1::IfcPhysicalQuantity>(es); } -void Ifc4x3_add1::IfcElementQuantity::setQuantities(const std::vector< ::Ifc4x3_add1::IfcPhysicalQuantity >& v) { set_attribute_value(5, cast_vector(v));if constexpr (false)unset_attribute_value(5); } +std::vector< ::Ifc4x3_add1::IfcPhysicalQuantity > Ifc4x3_add1::IfcElementQuantity::Quantities() const { std::vector es = get_attribute_value(5); return cast_vector<::Ifc4x3_add1::IfcPhysicalQuantity>(es); } +void Ifc4x3_add1::IfcElementQuantity::setQuantities(const std::vector< ::Ifc4x3_add1::IfcPhysicalQuantity >& v) { set_attribute_value(5, cast_vector(v));if constexpr (false)unset_attribute_value(5); } const ifcopenshell::entity& Ifc4x3_add1::IfcElementQuantity::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[400]); } -Ifc4x3_add1::IfcElementQuantity Ifc4x3_add1::IfcElementQuantity::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_MethodOfMeasurement, std::vector< ::Ifc4x3_add1::IfcPhysicalQuantity > v6_Quantities) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_MethodOfMeasurement) {set_attribute_value(4, (*v5_MethodOfMeasurement)); }set_attribute_value(5, cast_vector(v6_Quantities));; return *this; } +Ifc4x3_add1::IfcElementQuantity Ifc4x3_add1::IfcElementQuantity::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_MethodOfMeasurement, std::vector< ::Ifc4x3_add1::IfcPhysicalQuantity > v6_Quantities) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_MethodOfMeasurement) {set_attribute_value(4, (*v5_MethodOfMeasurement)); }set_attribute_value(5, cast_vector(v6_Quantities));; return *this; } // Function implementations for IfcElementType std::optional< std::string > Ifc4x3_add1::IfcElementType::ElementType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } std::string v = get_attribute_value(8); return v; } @@ -10402,10 +10402,10 @@ void Ifc4x3_add1::IfcElementType::setElementType(const std::optional< std::strin const ifcopenshell::entity& Ifc4x3_add1::IfcElementType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[401]); } -Ifc4x3_add1::IfcElementType Ifc4x3_add1::IfcElementType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } +Ifc4x3_add1::IfcElementType Ifc4x3_add1::IfcElementType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } // Function implementations for IfcElementarySurface -::Ifc4x3_add1::IfcAxis2Placement3D Ifc4x3_add1::IfcElementarySurface::Position() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcAxis2Placement3D>(); } +::Ifc4x3_add1::IfcAxis2Placement3D Ifc4x3_add1::IfcElementarySurface::Position() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcAxis2Placement3D>(); } void Ifc4x3_add1::IfcElementarySurface::setPosition(const ::Ifc4x3_add1::IfcAxis2Placement3D& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } @@ -10442,7 +10442,7 @@ Ifc4x3_add1::IfcEnergyConversionDevice Ifc4x3_add1::IfcEnergyConversionDevice::i const ifcopenshell::entity& Ifc4x3_add1::IfcEnergyConversionDeviceType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[405]); } -Ifc4x3_add1::IfcEnergyConversionDeviceType Ifc4x3_add1::IfcEnergyConversionDeviceType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } +Ifc4x3_add1::IfcEnergyConversionDeviceType Ifc4x3_add1::IfcEnergyConversionDeviceType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } // Function implementations for IfcEngine std::optional< ::Ifc4x3_add1::IfcEngineTypeEnum::Value > Ifc4x3_add1::IfcEngine::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_add1::IfcEngineTypeEnum::FromString(get_attribute_value(8)); } @@ -10458,7 +10458,7 @@ void Ifc4x3_add1::IfcEngineType::setPredefinedType(const ::Ifc4x3_add1::IfcEngin const ifcopenshell::entity& Ifc4x3_add1::IfcEngineType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[408]); } -Ifc4x3_add1::IfcEngineType Ifc4x3_add1::IfcEngineType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcEngineTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcEngineTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_add1::IfcEngineType Ifc4x3_add1::IfcEngineType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcEngineTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcEngineTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcEvaporativeCooler std::optional< ::Ifc4x3_add1::IfcEvaporativeCoolerTypeEnum::Value > Ifc4x3_add1::IfcEvaporativeCooler::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_add1::IfcEvaporativeCoolerTypeEnum::FromString(get_attribute_value(8)); } @@ -10474,7 +10474,7 @@ void Ifc4x3_add1::IfcEvaporativeCoolerType::setPredefinedType(const ::Ifc4x3_add const ifcopenshell::entity& Ifc4x3_add1::IfcEvaporativeCoolerType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[411]); } -Ifc4x3_add1::IfcEvaporativeCoolerType Ifc4x3_add1::IfcEvaporativeCoolerType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcEvaporativeCoolerTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcEvaporativeCoolerTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_add1::IfcEvaporativeCoolerType Ifc4x3_add1::IfcEvaporativeCoolerType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcEvaporativeCoolerTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcEvaporativeCoolerTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcEvaporator std::optional< ::Ifc4x3_add1::IfcEvaporatorTypeEnum::Value > Ifc4x3_add1::IfcEvaporator::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_add1::IfcEvaporatorTypeEnum::FromString(get_attribute_value(8)); } @@ -10490,7 +10490,7 @@ void Ifc4x3_add1::IfcEvaporatorType::setPredefinedType(const ::Ifc4x3_add1::IfcE const ifcopenshell::entity& Ifc4x3_add1::IfcEvaporatorType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[414]); } -Ifc4x3_add1::IfcEvaporatorType Ifc4x3_add1::IfcEvaporatorType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcEvaporatorTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcEvaporatorTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_add1::IfcEvaporatorType Ifc4x3_add1::IfcEvaporatorType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcEvaporatorTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcEvaporatorTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcEvent std::optional< ::Ifc4x3_add1::IfcEventTypeEnum::Value > Ifc4x3_add1::IfcEvent::PredefinedType() const { if(get_attribute_value(7).isNull()) { return std::nullopt; } return ::Ifc4x3_add1::IfcEventTypeEnum::FromString(get_attribute_value(7)); } @@ -10499,7 +10499,7 @@ std::optional< ::Ifc4x3_add1::IfcEventTriggerTypeEnum::Value > Ifc4x3_add1::IfcE void Ifc4x3_add1::IfcEvent::setEventTriggerType(const std::optional< ::Ifc4x3_add1::IfcEventTriggerTypeEnum::Value >& v) { if (v) {set_attribute_value(8, enumeration_reference(&::Ifc4x3_add1::IfcEventTriggerTypeEnum::Class(), (size_t) *v));} else {unset_attribute_value(8);} } std::optional< std::string > Ifc4x3_add1::IfcEvent::UserDefinedEventTriggerType() const { if(get_attribute_value(9).isNull()) { return std::nullopt; } std::string v = get_attribute_value(9); return v; } void Ifc4x3_add1::IfcEvent::setUserDefinedEventTriggerType(const std::optional< std::string >& v) { if (v) {set_attribute_value(9, *v);} else {unset_attribute_value(9);} } -::Ifc4x3_add1::IfcEventTime Ifc4x3_add1::IfcEvent::EventOccurenceTime() const { if(get_attribute_value(10).isNull()) { return ::Ifc4x3_add1::IfcEventTime{}; } return ((express::Base)(get_attribute_value(10))).as<::Ifc4x3_add1::IfcEventTime>(); } +::Ifc4x3_add1::IfcEventTime Ifc4x3_add1::IfcEvent::EventOccurenceTime() const { if(get_attribute_value(10).isNull()) { return ::Ifc4x3_add1::IfcEventTime{}; } return ((express::base)(get_attribute_value(10))).as<::Ifc4x3_add1::IfcEventTime>(); } void Ifc4x3_add1::IfcEvent::setEventOccurenceTime(const ::Ifc4x3_add1::IfcEventTime& v) { set_attribute_value(10, v);if constexpr (false)unset_attribute_value(10); } @@ -10530,19 +10530,19 @@ void Ifc4x3_add1::IfcEventType::setUserDefinedEventTriggerType(const std::option const ifcopenshell::entity& Ifc4x3_add1::IfcEventType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[419]); } -Ifc4x3_add1::IfcEventType Ifc4x3_add1::IfcEventType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::string > v7_Identification, std::optional< std::string > v8_LongDescription, std::optional< std::string > v9_ProcessType, ::Ifc4x3_add1::IfcEventTypeEnum::Value v10_PredefinedType, ::Ifc4x3_add1::IfcEventTriggerTypeEnum::Value v11_EventTriggerType, std::optional< std::string > v12_UserDefinedEventTriggerType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_Identification) {set_attribute_value(6, (*v7_Identification)); } if (v8_LongDescription) {set_attribute_value(7, (*v8_LongDescription)); } if (v9_ProcessType) {set_attribute_value(8, (*v9_ProcessType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcEventTypeEnum::Class(),(size_t)v10_PredefinedType)));set_attribute_value(10, (enumeration_reference(&::Ifc4x3_add1::IfcEventTriggerTypeEnum::Class(),(size_t)v11_EventTriggerType))); if (v12_UserDefinedEventTriggerType) {set_attribute_value(11, (*v12_UserDefinedEventTriggerType)); }; return *this; } +Ifc4x3_add1::IfcEventType Ifc4x3_add1::IfcEventType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::string > v7_Identification, std::optional< std::string > v8_LongDescription, std::optional< std::string > v9_ProcessType, ::Ifc4x3_add1::IfcEventTypeEnum::Value v10_PredefinedType, ::Ifc4x3_add1::IfcEventTriggerTypeEnum::Value v11_EventTriggerType, std::optional< std::string > v12_UserDefinedEventTriggerType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_Identification) {set_attribute_value(6, (*v7_Identification)); } if (v8_LongDescription) {set_attribute_value(7, (*v8_LongDescription)); } if (v9_ProcessType) {set_attribute_value(8, (*v9_ProcessType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcEventTypeEnum::Class(),(size_t)v10_PredefinedType)));set_attribute_value(10, (enumeration_reference(&::Ifc4x3_add1::IfcEventTriggerTypeEnum::Class(),(size_t)v11_EventTriggerType))); if (v12_UserDefinedEventTriggerType) {set_attribute_value(11, (*v12_UserDefinedEventTriggerType)); }; return *this; } // Function implementations for IfcExtendedProperties std::optional< std::string > Ifc4x3_add1::IfcExtendedProperties::Name() const { if(get_attribute_value(0).isNull()) { return std::nullopt; } std::string v = get_attribute_value(0); return v; } void Ifc4x3_add1::IfcExtendedProperties::setName(const std::optional< std::string >& v) { if (v) {set_attribute_value(0, *v);} else {unset_attribute_value(0);} } std::optional< std::string > Ifc4x3_add1::IfcExtendedProperties::Description() const { if(get_attribute_value(1).isNull()) { return std::nullopt; } std::string v = get_attribute_value(1); return v; } void Ifc4x3_add1::IfcExtendedProperties::setDescription(const std::optional< std::string >& v) { if (v) {set_attribute_value(1, *v);} else {unset_attribute_value(1);} } -std::vector< ::Ifc4x3_add1::IfcProperty > Ifc4x3_add1::IfcExtendedProperties::Properties() const { std::vector es = get_attribute_value(2); return cast_vector<::Ifc4x3_add1::IfcProperty>(es); } -void Ifc4x3_add1::IfcExtendedProperties::setProperties(const std::vector< ::Ifc4x3_add1::IfcProperty >& v) { set_attribute_value(2, cast_vector(v));if constexpr (false)unset_attribute_value(2); } +std::vector< ::Ifc4x3_add1::IfcProperty > Ifc4x3_add1::IfcExtendedProperties::Properties() const { std::vector es = get_attribute_value(2); return cast_vector<::Ifc4x3_add1::IfcProperty>(es); } +void Ifc4x3_add1::IfcExtendedProperties::setProperties(const std::vector< ::Ifc4x3_add1::IfcProperty >& v) { set_attribute_value(2, cast_vector(v));if constexpr (false)unset_attribute_value(2); } const ifcopenshell::entity& Ifc4x3_add1::IfcExtendedProperties::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[421]); } -Ifc4x3_add1::IfcExtendedProperties Ifc4x3_add1::IfcExtendedProperties::initialize(std::optional< std::string > v1_Name, std::optional< std::string > v2_Description, std::vector< ::Ifc4x3_add1::IfcProperty > v3_Properties) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); } if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, cast_vector(v3_Properties));; return *this; } +Ifc4x3_add1::IfcExtendedProperties Ifc4x3_add1::IfcExtendedProperties::initialize(std::optional< std::string > v1_Name, std::optional< std::string > v2_Description, std::vector< ::Ifc4x3_add1::IfcProperty > v3_Properties) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); } if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, cast_vector(v3_Properties));; return *this; } // Function implementations for IfcExternalInformation @@ -10564,14 +10564,14 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcExternalReference::Class() { return Ifc4x3_add1::IfcExternalReference Ifc4x3_add1::IfcExternalReference::initialize(std::optional< std::string > v1_Location, std::optional< std::string > v2_Identification, std::optional< std::string > v3_Name) { if (v1_Location) {set_attribute_value(0, (*v1_Location)); } if (v2_Identification) {set_attribute_value(1, (*v2_Identification)); } if (v3_Name) {set_attribute_value(2, (*v3_Name)); }; return *this; } // Function implementations for IfcExternalReferenceRelationship -::Ifc4x3_add1::IfcExternalReference Ifc4x3_add1::IfcExternalReferenceRelationship::RelatingReference() const { return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3_add1::IfcExternalReference>(); } +::Ifc4x3_add1::IfcExternalReference Ifc4x3_add1::IfcExternalReferenceRelationship::RelatingReference() const { return ((express::base)(get_attribute_value(2))).as<::Ifc4x3_add1::IfcExternalReference>(); } void Ifc4x3_add1::IfcExternalReferenceRelationship::setRelatingReference(const ::Ifc4x3_add1::IfcExternalReference& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } -std::vector< ::Ifc4x3_add1::IfcResourceObjectSelect > Ifc4x3_add1::IfcExternalReferenceRelationship::RelatedResourceObjects() const { std::vector es = get_attribute_value(3); return cast_vector<::Ifc4x3_add1::IfcResourceObjectSelect>(es); } -void Ifc4x3_add1::IfcExternalReferenceRelationship::setRelatedResourceObjects(const std::vector< ::Ifc4x3_add1::IfcResourceObjectSelect >& v) { set_attribute_value(3, cast_vector(v));if constexpr (false)unset_attribute_value(3); } +std::vector< ::Ifc4x3_add1::IfcResourceObjectSelect > Ifc4x3_add1::IfcExternalReferenceRelationship::RelatedResourceObjects() const { std::vector es = get_attribute_value(3); return cast_vector<::Ifc4x3_add1::IfcResourceObjectSelect>(es); } +void Ifc4x3_add1::IfcExternalReferenceRelationship::setRelatedResourceObjects(const std::vector< ::Ifc4x3_add1::IfcResourceObjectSelect >& v) { set_attribute_value(3, cast_vector(v));if constexpr (false)unset_attribute_value(3); } const ifcopenshell::entity& Ifc4x3_add1::IfcExternalReferenceRelationship::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[427]); } -Ifc4x3_add1::IfcExternalReferenceRelationship Ifc4x3_add1::IfcExternalReferenceRelationship::initialize(std::optional< std::string > v1_Name, std::optional< std::string > v2_Description, ::Ifc4x3_add1::IfcExternalReference v3_RelatingReference, std::vector< ::Ifc4x3_add1::IfcResourceObjectSelect > v4_RelatedResourceObjects) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); } if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, (v3_RelatingReference));set_attribute_value(3, cast_vector(v4_RelatedResourceObjects));; return *this; } +Ifc4x3_add1::IfcExternalReferenceRelationship Ifc4x3_add1::IfcExternalReferenceRelationship::initialize(std::optional< std::string > v1_Name, std::optional< std::string > v2_Description, ::Ifc4x3_add1::IfcExternalReference v3_RelatingReference, std::vector< ::Ifc4x3_add1::IfcResourceObjectSelect > v4_RelatedResourceObjects) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); } if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, (v3_RelatingReference));set_attribute_value(3, cast_vector(v4_RelatedResourceObjects));; return *this; } // Function implementations for IfcExternalSpatialElement std::optional< ::Ifc4x3_add1::IfcExternalSpatialElementTypeEnum::Value > Ifc4x3_add1::IfcExternalSpatialElement::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_add1::IfcExternalSpatialElementTypeEnum::FromString(get_attribute_value(8)); } @@ -10607,7 +10607,7 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcExternallyDefinedTextFont::Class() { Ifc4x3_add1::IfcExternallyDefinedTextFont Ifc4x3_add1::IfcExternallyDefinedTextFont::initialize(std::optional< std::string > v1_Location, std::optional< std::string > v2_Identification, std::optional< std::string > v3_Name) { if (v1_Location) {set_attribute_value(0, (*v1_Location)); } if (v2_Identification) {set_attribute_value(1, (*v2_Identification)); } if (v3_Name) {set_attribute_value(2, (*v3_Name)); }; return *this; } // Function implementations for IfcExtrudedAreaSolid -::Ifc4x3_add1::IfcDirection Ifc4x3_add1::IfcExtrudedAreaSolid::ExtrudedDirection() const { return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3_add1::IfcDirection>(); } +::Ifc4x3_add1::IfcDirection Ifc4x3_add1::IfcExtrudedAreaSolid::ExtrudedDirection() const { return ((express::base)(get_attribute_value(2))).as<::Ifc4x3_add1::IfcDirection>(); } void Ifc4x3_add1::IfcExtrudedAreaSolid::setExtrudedDirection(const ::Ifc4x3_add1::IfcDirection& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } double Ifc4x3_add1::IfcExtrudedAreaSolid::Depth() const { double v = get_attribute_value(3); return v; } void Ifc4x3_add1::IfcExtrudedAreaSolid::setDepth(const double& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } @@ -10617,7 +10617,7 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcExtrudedAreaSolid::Class() { return Ifc4x3_add1::IfcExtrudedAreaSolid Ifc4x3_add1::IfcExtrudedAreaSolid::initialize(::Ifc4x3_add1::IfcProfileDef v1_SweptArea, ::Ifc4x3_add1::IfcAxis2Placement3D v2_Position, ::Ifc4x3_add1::IfcDirection v3_ExtrudedDirection, double v4_Depth) { set_attribute_value(0, (v1_SweptArea));set_attribute_value(1, (v2_Position));set_attribute_value(2, (v3_ExtrudedDirection));set_attribute_value(3, (v4_Depth));; return *this; } // Function implementations for IfcExtrudedAreaSolidTapered -::Ifc4x3_add1::IfcProfileDef Ifc4x3_add1::IfcExtrudedAreaSolidTapered::EndSweptArea() const { return ((express::Base)(get_attribute_value(4))).as<::Ifc4x3_add1::IfcProfileDef>(); } +::Ifc4x3_add1::IfcProfileDef Ifc4x3_add1::IfcExtrudedAreaSolidTapered::EndSweptArea() const { return ((express::base)(get_attribute_value(4))).as<::Ifc4x3_add1::IfcProfileDef>(); } void Ifc4x3_add1::IfcExtrudedAreaSolidTapered::setEndSweptArea(const ::Ifc4x3_add1::IfcProfileDef& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } @@ -10625,24 +10625,24 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcExtrudedAreaSolidTapered::Class() { Ifc4x3_add1::IfcExtrudedAreaSolidTapered Ifc4x3_add1::IfcExtrudedAreaSolidTapered::initialize(::Ifc4x3_add1::IfcProfileDef v1_SweptArea, ::Ifc4x3_add1::IfcAxis2Placement3D v2_Position, ::Ifc4x3_add1::IfcDirection v3_ExtrudedDirection, double v4_Depth, ::Ifc4x3_add1::IfcProfileDef v5_EndSweptArea) { set_attribute_value(0, (v1_SweptArea));set_attribute_value(1, (v2_Position));set_attribute_value(2, (v3_ExtrudedDirection));set_attribute_value(3, (v4_Depth));set_attribute_value(4, (v5_EndSweptArea));; return *this; } // Function implementations for IfcFace -std::vector< ::Ifc4x3_add1::IfcFaceBound > Ifc4x3_add1::IfcFace::Bounds() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3_add1::IfcFaceBound>(es); } -void Ifc4x3_add1::IfcFace::setBounds(const std::vector< ::Ifc4x3_add1::IfcFaceBound >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } +std::vector< ::Ifc4x3_add1::IfcFaceBound > Ifc4x3_add1::IfcFace::Bounds() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3_add1::IfcFaceBound>(es); } +void Ifc4x3_add1::IfcFace::setBounds(const std::vector< ::Ifc4x3_add1::IfcFaceBound >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } std::vector<::Ifc4x3_add1::IfcTextureMap> Ifc4x3_add1::IfcFace::HasTextureMaps() const { return cast_vector(file()->get_inverse(data()->id(), IFC4X3_ADD1_types[1196], 2)); } const ifcopenshell::entity& Ifc4x3_add1::IfcFace::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[433]); } -Ifc4x3_add1::IfcFace Ifc4x3_add1::IfcFace::initialize(std::vector< ::Ifc4x3_add1::IfcFaceBound > v1_Bounds) { set_attribute_value(0, cast_vector(v1_Bounds));; return *this; } +Ifc4x3_add1::IfcFace Ifc4x3_add1::IfcFace::initialize(std::vector< ::Ifc4x3_add1::IfcFaceBound > v1_Bounds) { set_attribute_value(0, cast_vector(v1_Bounds));; return *this; } // Function implementations for IfcFaceBasedSurfaceModel -std::vector< ::Ifc4x3_add1::IfcConnectedFaceSet > Ifc4x3_add1::IfcFaceBasedSurfaceModel::FbsmFaces() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3_add1::IfcConnectedFaceSet>(es); } -void Ifc4x3_add1::IfcFaceBasedSurfaceModel::setFbsmFaces(const std::vector< ::Ifc4x3_add1::IfcConnectedFaceSet >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } +std::vector< ::Ifc4x3_add1::IfcConnectedFaceSet > Ifc4x3_add1::IfcFaceBasedSurfaceModel::FbsmFaces() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3_add1::IfcConnectedFaceSet>(es); } +void Ifc4x3_add1::IfcFaceBasedSurfaceModel::setFbsmFaces(const std::vector< ::Ifc4x3_add1::IfcConnectedFaceSet >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } const ifcopenshell::entity& Ifc4x3_add1::IfcFaceBasedSurfaceModel::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[434]); } -Ifc4x3_add1::IfcFaceBasedSurfaceModel Ifc4x3_add1::IfcFaceBasedSurfaceModel::initialize(std::vector< ::Ifc4x3_add1::IfcConnectedFaceSet > v1_FbsmFaces) { set_attribute_value(0, cast_vector(v1_FbsmFaces));; return *this; } +Ifc4x3_add1::IfcFaceBasedSurfaceModel Ifc4x3_add1::IfcFaceBasedSurfaceModel::initialize(std::vector< ::Ifc4x3_add1::IfcConnectedFaceSet > v1_FbsmFaces) { set_attribute_value(0, cast_vector(v1_FbsmFaces));; return *this; } // Function implementations for IfcFaceBound -::Ifc4x3_add1::IfcLoop Ifc4x3_add1::IfcFaceBound::Bound() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcLoop>(); } +::Ifc4x3_add1::IfcLoop Ifc4x3_add1::IfcFaceBound::Bound() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcLoop>(); } void Ifc4x3_add1::IfcFaceBound::setBound(const ::Ifc4x3_add1::IfcLoop& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } bool Ifc4x3_add1::IfcFaceBound::Orientation() const { bool v = get_attribute_value(1); return v; } void Ifc4x3_add1::IfcFaceBound::setOrientation(const bool& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } @@ -10658,14 +10658,14 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcFaceOuterBound::Class() { return *(( Ifc4x3_add1::IfcFaceOuterBound Ifc4x3_add1::IfcFaceOuterBound::initialize(::Ifc4x3_add1::IfcLoop v1_Bound, bool v2_Orientation) { set_attribute_value(0, (v1_Bound));set_attribute_value(1, (v2_Orientation));; return *this; } // Function implementations for IfcFaceSurface -::Ifc4x3_add1::IfcSurface Ifc4x3_add1::IfcFaceSurface::FaceSurface() const { return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3_add1::IfcSurface>(); } +::Ifc4x3_add1::IfcSurface Ifc4x3_add1::IfcFaceSurface::FaceSurface() const { return ((express::base)(get_attribute_value(1))).as<::Ifc4x3_add1::IfcSurface>(); } void Ifc4x3_add1::IfcFaceSurface::setFaceSurface(const ::Ifc4x3_add1::IfcSurface& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } bool Ifc4x3_add1::IfcFaceSurface::SameSense() const { bool v = get_attribute_value(2); return v; } void Ifc4x3_add1::IfcFaceSurface::setSameSense(const bool& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } const ifcopenshell::entity& Ifc4x3_add1::IfcFaceSurface::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[437]); } -Ifc4x3_add1::IfcFaceSurface Ifc4x3_add1::IfcFaceSurface::initialize(std::vector< ::Ifc4x3_add1::IfcFaceBound > v1_Bounds, ::Ifc4x3_add1::IfcSurface v2_FaceSurface, bool v3_SameSense) { set_attribute_value(0, cast_vector(v1_Bounds));set_attribute_value(1, (v2_FaceSurface));set_attribute_value(2, (v3_SameSense));; return *this; } +Ifc4x3_add1::IfcFaceSurface Ifc4x3_add1::IfcFaceSurface::initialize(std::vector< ::Ifc4x3_add1::IfcFaceBound > v1_Bounds, ::Ifc4x3_add1::IfcSurface v2_FaceSurface, bool v3_SameSense) { set_attribute_value(0, cast_vector(v1_Bounds));set_attribute_value(1, (v2_FaceSurface));set_attribute_value(2, (v3_SameSense));; return *this; } // Function implementations for IfcFacetedBrep @@ -10674,12 +10674,12 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcFacetedBrep::Class() { return *((ifc Ifc4x3_add1::IfcFacetedBrep Ifc4x3_add1::IfcFacetedBrep::initialize(::Ifc4x3_add1::IfcClosedShell v1_Outer) { set_attribute_value(0, (v1_Outer));; return *this; } // Function implementations for IfcFacetedBrepWithVoids -std::vector< ::Ifc4x3_add1::IfcClosedShell > Ifc4x3_add1::IfcFacetedBrepWithVoids::Voids() const { std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3_add1::IfcClosedShell>(es); } -void Ifc4x3_add1::IfcFacetedBrepWithVoids::setVoids(const std::vector< ::Ifc4x3_add1::IfcClosedShell >& v) { set_attribute_value(1, cast_vector(v));if constexpr (false)unset_attribute_value(1); } +std::vector< ::Ifc4x3_add1::IfcClosedShell > Ifc4x3_add1::IfcFacetedBrepWithVoids::Voids() const { std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3_add1::IfcClosedShell>(es); } +void Ifc4x3_add1::IfcFacetedBrepWithVoids::setVoids(const std::vector< ::Ifc4x3_add1::IfcClosedShell >& v) { set_attribute_value(1, cast_vector(v));if constexpr (false)unset_attribute_value(1); } const ifcopenshell::entity& Ifc4x3_add1::IfcFacetedBrepWithVoids::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[439]); } -Ifc4x3_add1::IfcFacetedBrepWithVoids Ifc4x3_add1::IfcFacetedBrepWithVoids::initialize(::Ifc4x3_add1::IfcClosedShell v1_Outer, std::vector< ::Ifc4x3_add1::IfcClosedShell > v2_Voids) { set_attribute_value(0, (v1_Outer));set_attribute_value(1, cast_vector(v2_Voids));; return *this; } +Ifc4x3_add1::IfcFacetedBrepWithVoids Ifc4x3_add1::IfcFacetedBrepWithVoids::initialize(::Ifc4x3_add1::IfcClosedShell v1_Outer, std::vector< ::Ifc4x3_add1::IfcClosedShell > v2_Voids) { set_attribute_value(0, (v1_Outer));set_attribute_value(1, cast_vector(v2_Voids));; return *this; } // Function implementations for IfcFacility @@ -10735,7 +10735,7 @@ void Ifc4x3_add1::IfcFanType::setPredefinedType(const ::Ifc4x3_add1::IfcFanTypeE const ifcopenshell::entity& Ifc4x3_add1::IfcFanType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[447]); } -Ifc4x3_add1::IfcFanType Ifc4x3_add1::IfcFanType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcFanTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcFanTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_add1::IfcFanType Ifc4x3_add1::IfcFanType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcFanTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcFanTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcFastener std::optional< ::Ifc4x3_add1::IfcFastenerTypeEnum::Value > Ifc4x3_add1::IfcFastener::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_add1::IfcFastenerTypeEnum::FromString(get_attribute_value(8)); } @@ -10751,7 +10751,7 @@ void Ifc4x3_add1::IfcFastenerType::setPredefinedType(const ::Ifc4x3_add1::IfcFas const ifcopenshell::entity& Ifc4x3_add1::IfcFastenerType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[450]); } -Ifc4x3_add1::IfcFastenerType Ifc4x3_add1::IfcFastenerType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcFastenerTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcFastenerTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_add1::IfcFastenerType Ifc4x3_add1::IfcFastenerType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcFastenerTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcFastenerTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcFeatureElement @@ -10774,23 +10774,23 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcFeatureElementSubtraction::Class() { Ifc4x3_add1::IfcFeatureElementSubtraction Ifc4x3_add1::IfcFeatureElementSubtraction::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, ::Ifc4x3_add1::IfcObjectPlacement v6_ObjectPlacement, ::Ifc4x3_add1::IfcProductRepresentation v7_Representation, std::optional< std::string > v8_Tag) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); }set_attribute_value(5, (v6_ObjectPlacement));set_attribute_value(6, (v7_Representation)); if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); }; return *this; } // Function implementations for IfcFillAreaStyle -std::vector< ::Ifc4x3_add1::IfcFillStyleSelect > Ifc4x3_add1::IfcFillAreaStyle::FillStyles() const { std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3_add1::IfcFillStyleSelect>(es); } -void Ifc4x3_add1::IfcFillAreaStyle::setFillStyles(const std::vector< ::Ifc4x3_add1::IfcFillStyleSelect >& v) { set_attribute_value(1, cast_vector(v));if constexpr (false)unset_attribute_value(1); } +std::vector< ::Ifc4x3_add1::IfcFillStyleSelect > Ifc4x3_add1::IfcFillAreaStyle::FillStyles() const { std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3_add1::IfcFillStyleSelect>(es); } +void Ifc4x3_add1::IfcFillAreaStyle::setFillStyles(const std::vector< ::Ifc4x3_add1::IfcFillStyleSelect >& v) { set_attribute_value(1, cast_vector(v));if constexpr (false)unset_attribute_value(1); } std::optional< bool > Ifc4x3_add1::IfcFillAreaStyle::ModelOrDraughting() const { if(get_attribute_value(2).isNull()) { return std::nullopt; } bool v = get_attribute_value(2); return v; } void Ifc4x3_add1::IfcFillAreaStyle::setModelOrDraughting(const std::optional< bool >& v) { if (v) {set_attribute_value(2, *v);} else {unset_attribute_value(2);} } const ifcopenshell::entity& Ifc4x3_add1::IfcFillAreaStyle::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[455]); } -Ifc4x3_add1::IfcFillAreaStyle Ifc4x3_add1::IfcFillAreaStyle::initialize(std::optional< std::string > v1_Name, std::vector< ::Ifc4x3_add1::IfcFillStyleSelect > v2_FillStyles, std::optional< bool > v3_ModelOrDraughting) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); }set_attribute_value(1, cast_vector(v2_FillStyles)); if (v3_ModelOrDraughting) {set_attribute_value(2, (*v3_ModelOrDraughting)); }; return *this; } +Ifc4x3_add1::IfcFillAreaStyle Ifc4x3_add1::IfcFillAreaStyle::initialize(std::optional< std::string > v1_Name, std::vector< ::Ifc4x3_add1::IfcFillStyleSelect > v2_FillStyles, std::optional< bool > v3_ModelOrDraughting) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); }set_attribute_value(1, cast_vector(v2_FillStyles)); if (v3_ModelOrDraughting) {set_attribute_value(2, (*v3_ModelOrDraughting)); }; return *this; } // Function implementations for IfcFillAreaStyleHatching -::Ifc4x3_add1::IfcCurveStyle Ifc4x3_add1::IfcFillAreaStyleHatching::HatchLineAppearance() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcCurveStyle>(); } +::Ifc4x3_add1::IfcCurveStyle Ifc4x3_add1::IfcFillAreaStyleHatching::HatchLineAppearance() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcCurveStyle>(); } void Ifc4x3_add1::IfcFillAreaStyleHatching::setHatchLineAppearance(const ::Ifc4x3_add1::IfcCurveStyle& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } -::Ifc4x3_add1::IfcHatchLineDistanceSelect Ifc4x3_add1::IfcFillAreaStyleHatching::StartOfNextHatchLine() const { return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3_add1::IfcHatchLineDistanceSelect>(); } +::Ifc4x3_add1::IfcHatchLineDistanceSelect Ifc4x3_add1::IfcFillAreaStyleHatching::StartOfNextHatchLine() const { return ((express::base)(get_attribute_value(1))).as<::Ifc4x3_add1::IfcHatchLineDistanceSelect>(); } void Ifc4x3_add1::IfcFillAreaStyleHatching::setStartOfNextHatchLine(const ::Ifc4x3_add1::IfcHatchLineDistanceSelect& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } -::Ifc4x3_add1::IfcCartesianPoint Ifc4x3_add1::IfcFillAreaStyleHatching::PointOfReferenceHatchLine() const { if(get_attribute_value(2).isNull()) { return ::Ifc4x3_add1::IfcCartesianPoint{}; } return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3_add1::IfcCartesianPoint>(); } +::Ifc4x3_add1::IfcCartesianPoint Ifc4x3_add1::IfcFillAreaStyleHatching::PointOfReferenceHatchLine() const { if(get_attribute_value(2).isNull()) { return ::Ifc4x3_add1::IfcCartesianPoint{}; } return ((express::base)(get_attribute_value(2))).as<::Ifc4x3_add1::IfcCartesianPoint>(); } void Ifc4x3_add1::IfcFillAreaStyleHatching::setPointOfReferenceHatchLine(const ::Ifc4x3_add1::IfcCartesianPoint& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } -::Ifc4x3_add1::IfcCartesianPoint Ifc4x3_add1::IfcFillAreaStyleHatching::PatternStart() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3_add1::IfcCartesianPoint{}; } return ((express::Base)(get_attribute_value(3))).as<::Ifc4x3_add1::IfcCartesianPoint>(); } +::Ifc4x3_add1::IfcCartesianPoint Ifc4x3_add1::IfcFillAreaStyleHatching::PatternStart() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3_add1::IfcCartesianPoint{}; } return ((express::base)(get_attribute_value(3))).as<::Ifc4x3_add1::IfcCartesianPoint>(); } void Ifc4x3_add1::IfcFillAreaStyleHatching::setPatternStart(const ::Ifc4x3_add1::IfcCartesianPoint& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } double Ifc4x3_add1::IfcFillAreaStyleHatching::HatchLineAngle() const { double v = get_attribute_value(4); return v; } void Ifc4x3_add1::IfcFillAreaStyleHatching::setHatchLineAngle(const double& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } @@ -10800,16 +10800,16 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcFillAreaStyleHatching::Class() { ret Ifc4x3_add1::IfcFillAreaStyleHatching Ifc4x3_add1::IfcFillAreaStyleHatching::initialize(::Ifc4x3_add1::IfcCurveStyle v1_HatchLineAppearance, ::Ifc4x3_add1::IfcHatchLineDistanceSelect v2_StartOfNextHatchLine, ::Ifc4x3_add1::IfcCartesianPoint v3_PointOfReferenceHatchLine, ::Ifc4x3_add1::IfcCartesianPoint v4_PatternStart, double v5_HatchLineAngle) { set_attribute_value(0, (v1_HatchLineAppearance));set_attribute_value(1, (v2_StartOfNextHatchLine));set_attribute_value(2, (v3_PointOfReferenceHatchLine));set_attribute_value(3, (v4_PatternStart));set_attribute_value(4, (v5_HatchLineAngle));; return *this; } // Function implementations for IfcFillAreaStyleTiles -std::vector< ::Ifc4x3_add1::IfcVector > Ifc4x3_add1::IfcFillAreaStyleTiles::TilingPattern() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3_add1::IfcVector>(es); } -void Ifc4x3_add1::IfcFillAreaStyleTiles::setTilingPattern(const std::vector< ::Ifc4x3_add1::IfcVector >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } -std::vector< ::Ifc4x3_add1::IfcStyledItem > Ifc4x3_add1::IfcFillAreaStyleTiles::Tiles() const { std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3_add1::IfcStyledItem>(es); } -void Ifc4x3_add1::IfcFillAreaStyleTiles::setTiles(const std::vector< ::Ifc4x3_add1::IfcStyledItem >& v) { set_attribute_value(1, cast_vector(v));if constexpr (false)unset_attribute_value(1); } +std::vector< ::Ifc4x3_add1::IfcVector > Ifc4x3_add1::IfcFillAreaStyleTiles::TilingPattern() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3_add1::IfcVector>(es); } +void Ifc4x3_add1::IfcFillAreaStyleTiles::setTilingPattern(const std::vector< ::Ifc4x3_add1::IfcVector >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } +std::vector< ::Ifc4x3_add1::IfcStyledItem > Ifc4x3_add1::IfcFillAreaStyleTiles::Tiles() const { std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3_add1::IfcStyledItem>(es); } +void Ifc4x3_add1::IfcFillAreaStyleTiles::setTiles(const std::vector< ::Ifc4x3_add1::IfcStyledItem >& v) { set_attribute_value(1, cast_vector(v));if constexpr (false)unset_attribute_value(1); } double Ifc4x3_add1::IfcFillAreaStyleTiles::TilingScale() const { double v = get_attribute_value(2); return v; } void Ifc4x3_add1::IfcFillAreaStyleTiles::setTilingScale(const double& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } const ifcopenshell::entity& Ifc4x3_add1::IfcFillAreaStyleTiles::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[457]); } -Ifc4x3_add1::IfcFillAreaStyleTiles Ifc4x3_add1::IfcFillAreaStyleTiles::initialize(std::vector< ::Ifc4x3_add1::IfcVector > v1_TilingPattern, std::vector< ::Ifc4x3_add1::IfcStyledItem > v2_Tiles, double v3_TilingScale) { set_attribute_value(0, cast_vector(v1_TilingPattern));set_attribute_value(1, cast_vector(v2_Tiles));set_attribute_value(2, (v3_TilingScale));; return *this; } +Ifc4x3_add1::IfcFillAreaStyleTiles Ifc4x3_add1::IfcFillAreaStyleTiles::initialize(std::vector< ::Ifc4x3_add1::IfcVector > v1_TilingPattern, std::vector< ::Ifc4x3_add1::IfcStyledItem > v2_Tiles, double v3_TilingScale) { set_attribute_value(0, cast_vector(v1_TilingPattern));set_attribute_value(1, cast_vector(v2_Tiles));set_attribute_value(2, (v3_TilingScale));; return *this; } // Function implementations for IfcFilter std::optional< ::Ifc4x3_add1::IfcFilterTypeEnum::Value > Ifc4x3_add1::IfcFilter::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_add1::IfcFilterTypeEnum::FromString(get_attribute_value(8)); } @@ -10825,7 +10825,7 @@ void Ifc4x3_add1::IfcFilterType::setPredefinedType(const ::Ifc4x3_add1::IfcFilte const ifcopenshell::entity& Ifc4x3_add1::IfcFilterType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[460]); } -Ifc4x3_add1::IfcFilterType Ifc4x3_add1::IfcFilterType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcFilterTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcFilterTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_add1::IfcFilterType Ifc4x3_add1::IfcFilterType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcFilterTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcFilterTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcFireSuppressionTerminal std::optional< ::Ifc4x3_add1::IfcFireSuppressionTerminalTypeEnum::Value > Ifc4x3_add1::IfcFireSuppressionTerminal::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_add1::IfcFireSuppressionTerminalTypeEnum::FromString(get_attribute_value(8)); } @@ -10841,10 +10841,10 @@ void Ifc4x3_add1::IfcFireSuppressionTerminalType::setPredefinedType(const ::Ifc4 const ifcopenshell::entity& Ifc4x3_add1::IfcFireSuppressionTerminalType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[463]); } -Ifc4x3_add1::IfcFireSuppressionTerminalType Ifc4x3_add1::IfcFireSuppressionTerminalType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcFireSuppressionTerminalTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcFireSuppressionTerminalTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_add1::IfcFireSuppressionTerminalType Ifc4x3_add1::IfcFireSuppressionTerminalType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcFireSuppressionTerminalTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcFireSuppressionTerminalTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcFixedReferenceSweptAreaSolid -::Ifc4x3_add1::IfcDirection Ifc4x3_add1::IfcFixedReferenceSweptAreaSolid::FixedReference() const { return ((express::Base)(get_attribute_value(5))).as<::Ifc4x3_add1::IfcDirection>(); } +::Ifc4x3_add1::IfcDirection Ifc4x3_add1::IfcFixedReferenceSweptAreaSolid::FixedReference() const { return ((express::base)(get_attribute_value(5))).as<::Ifc4x3_add1::IfcDirection>(); } void Ifc4x3_add1::IfcFixedReferenceSweptAreaSolid::setFixedReference(const ::Ifc4x3_add1::IfcDirection& v) { set_attribute_value(5, v);if constexpr (false)unset_attribute_value(5); } @@ -10861,7 +10861,7 @@ Ifc4x3_add1::IfcFlowController Ifc4x3_add1::IfcFlowController::initialize(std::s const ifcopenshell::entity& Ifc4x3_add1::IfcFlowControllerType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[467]); } -Ifc4x3_add1::IfcFlowControllerType Ifc4x3_add1::IfcFlowControllerType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } +Ifc4x3_add1::IfcFlowControllerType Ifc4x3_add1::IfcFlowControllerType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } // Function implementations for IfcFlowFitting @@ -10873,7 +10873,7 @@ Ifc4x3_add1::IfcFlowFitting Ifc4x3_add1::IfcFlowFitting::initialize(std::string const ifcopenshell::entity& Ifc4x3_add1::IfcFlowFittingType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[470]); } -Ifc4x3_add1::IfcFlowFittingType Ifc4x3_add1::IfcFlowFittingType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } +Ifc4x3_add1::IfcFlowFittingType Ifc4x3_add1::IfcFlowFittingType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } // Function implementations for IfcFlowInstrument std::optional< ::Ifc4x3_add1::IfcFlowInstrumentTypeEnum::Value > Ifc4x3_add1::IfcFlowInstrument::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_add1::IfcFlowInstrumentTypeEnum::FromString(get_attribute_value(8)); } @@ -10889,7 +10889,7 @@ void Ifc4x3_add1::IfcFlowInstrumentType::setPredefinedType(const ::Ifc4x3_add1:: const ifcopenshell::entity& Ifc4x3_add1::IfcFlowInstrumentType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[472]); } -Ifc4x3_add1::IfcFlowInstrumentType Ifc4x3_add1::IfcFlowInstrumentType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcFlowInstrumentTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcFlowInstrumentTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_add1::IfcFlowInstrumentType Ifc4x3_add1::IfcFlowInstrumentType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcFlowInstrumentTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcFlowInstrumentTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcFlowMeter std::optional< ::Ifc4x3_add1::IfcFlowMeterTypeEnum::Value > Ifc4x3_add1::IfcFlowMeter::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_add1::IfcFlowMeterTypeEnum::FromString(get_attribute_value(8)); } @@ -10905,7 +10905,7 @@ void Ifc4x3_add1::IfcFlowMeterType::setPredefinedType(const ::Ifc4x3_add1::IfcFl const ifcopenshell::entity& Ifc4x3_add1::IfcFlowMeterType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[475]); } -Ifc4x3_add1::IfcFlowMeterType Ifc4x3_add1::IfcFlowMeterType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcFlowMeterTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcFlowMeterTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_add1::IfcFlowMeterType Ifc4x3_add1::IfcFlowMeterType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcFlowMeterTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcFlowMeterTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcFlowMovingDevice @@ -10917,7 +10917,7 @@ Ifc4x3_add1::IfcFlowMovingDevice Ifc4x3_add1::IfcFlowMovingDevice::initialize(st const ifcopenshell::entity& Ifc4x3_add1::IfcFlowMovingDeviceType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[478]); } -Ifc4x3_add1::IfcFlowMovingDeviceType Ifc4x3_add1::IfcFlowMovingDeviceType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } +Ifc4x3_add1::IfcFlowMovingDeviceType Ifc4x3_add1::IfcFlowMovingDeviceType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } // Function implementations for IfcFlowSegment @@ -10929,7 +10929,7 @@ Ifc4x3_add1::IfcFlowSegment Ifc4x3_add1::IfcFlowSegment::initialize(std::string const ifcopenshell::entity& Ifc4x3_add1::IfcFlowSegmentType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[480]); } -Ifc4x3_add1::IfcFlowSegmentType Ifc4x3_add1::IfcFlowSegmentType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } +Ifc4x3_add1::IfcFlowSegmentType Ifc4x3_add1::IfcFlowSegmentType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } // Function implementations for IfcFlowStorageDevice @@ -10941,7 +10941,7 @@ Ifc4x3_add1::IfcFlowStorageDevice Ifc4x3_add1::IfcFlowStorageDevice::initialize( const ifcopenshell::entity& Ifc4x3_add1::IfcFlowStorageDeviceType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[482]); } -Ifc4x3_add1::IfcFlowStorageDeviceType Ifc4x3_add1::IfcFlowStorageDeviceType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } +Ifc4x3_add1::IfcFlowStorageDeviceType Ifc4x3_add1::IfcFlowStorageDeviceType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } // Function implementations for IfcFlowTerminal @@ -10953,7 +10953,7 @@ Ifc4x3_add1::IfcFlowTerminal Ifc4x3_add1::IfcFlowTerminal::initialize(std::strin const ifcopenshell::entity& Ifc4x3_add1::IfcFlowTerminalType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[484]); } -Ifc4x3_add1::IfcFlowTerminalType Ifc4x3_add1::IfcFlowTerminalType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } +Ifc4x3_add1::IfcFlowTerminalType Ifc4x3_add1::IfcFlowTerminalType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } // Function implementations for IfcFlowTreatmentDevice @@ -10965,7 +10965,7 @@ Ifc4x3_add1::IfcFlowTreatmentDevice Ifc4x3_add1::IfcFlowTreatmentDevice::initial const ifcopenshell::entity& Ifc4x3_add1::IfcFlowTreatmentDeviceType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[486]); } -Ifc4x3_add1::IfcFlowTreatmentDeviceType Ifc4x3_add1::IfcFlowTreatmentDeviceType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } +Ifc4x3_add1::IfcFlowTreatmentDeviceType Ifc4x3_add1::IfcFlowTreatmentDeviceType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } // Function implementations for IfcFooting std::optional< ::Ifc4x3_add1::IfcFootingTypeEnum::Value > Ifc4x3_add1::IfcFooting::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_add1::IfcFootingTypeEnum::FromString(get_attribute_value(8)); } @@ -10981,7 +10981,7 @@ void Ifc4x3_add1::IfcFootingType::setPredefinedType(const ::Ifc4x3_add1::IfcFoot const ifcopenshell::entity& Ifc4x3_add1::IfcFootingType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[491]); } -Ifc4x3_add1::IfcFootingType Ifc4x3_add1::IfcFootingType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcFootingTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcFootingTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_add1::IfcFootingType Ifc4x3_add1::IfcFootingType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcFootingTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcFootingTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcFurnishingElement @@ -10993,7 +10993,7 @@ Ifc4x3_add1::IfcFurnishingElement Ifc4x3_add1::IfcFurnishingElement::initialize( const ifcopenshell::entity& Ifc4x3_add1::IfcFurnishingElementType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[496]); } -Ifc4x3_add1::IfcFurnishingElementType Ifc4x3_add1::IfcFurnishingElementType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } +Ifc4x3_add1::IfcFurnishingElementType Ifc4x3_add1::IfcFurnishingElementType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } // Function implementations for IfcFurniture std::optional< ::Ifc4x3_add1::IfcFurnitureTypeEnum::Value > Ifc4x3_add1::IfcFurniture::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_add1::IfcFurnitureTypeEnum::FromString(get_attribute_value(8)); } @@ -11011,14 +11011,14 @@ void Ifc4x3_add1::IfcFurnitureType::setPredefinedType(const std::optional< ::Ifc const ifcopenshell::entity& Ifc4x3_add1::IfcFurnitureType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[498]); } -Ifc4x3_add1::IfcFurnitureType Ifc4x3_add1::IfcFurnitureType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcAssemblyPlaceEnum::Value v10_AssemblyPlace, std::optional< ::Ifc4x3_add1::IfcFurnitureTypeEnum::Value > v11_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcAssemblyPlaceEnum::Class(),(size_t)v10_AssemblyPlace))); if (v11_PredefinedType) {set_attribute_value(10, (enumeration_reference(&::Ifc4x3_add1::IfcFurnitureTypeEnum::Class(),(size_t)*v11_PredefinedType))); }; return *this; } +Ifc4x3_add1::IfcFurnitureType Ifc4x3_add1::IfcFurnitureType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcAssemblyPlaceEnum::Value v10_AssemblyPlace, std::optional< ::Ifc4x3_add1::IfcFurnitureTypeEnum::Value > v11_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcAssemblyPlaceEnum::Class(),(size_t)v10_AssemblyPlace))); if (v11_PredefinedType) {set_attribute_value(10, (enumeration_reference(&::Ifc4x3_add1::IfcFurnitureTypeEnum::Class(),(size_t)*v11_PredefinedType))); }; return *this; } // Function implementations for IfcGeographicCRS std::optional< std::string > Ifc4x3_add1::IfcGeographicCRS::GeodeticDatum() const { if(get_attribute_value(2).isNull()) { return std::nullopt; } std::string v = get_attribute_value(2); return v; } void Ifc4x3_add1::IfcGeographicCRS::setGeodeticDatum(const std::optional< std::string >& v) { if (v) {set_attribute_value(2, *v);} else {unset_attribute_value(2);} } std::optional< std::string > Ifc4x3_add1::IfcGeographicCRS::PrimeMeridian() const { if(get_attribute_value(3).isNull()) { return std::nullopt; } std::string v = get_attribute_value(3); return v; } void Ifc4x3_add1::IfcGeographicCRS::setPrimeMeridian(const std::optional< std::string >& v) { if (v) {set_attribute_value(3, *v);} else {unset_attribute_value(3);} } -::Ifc4x3_add1::IfcNamedUnit Ifc4x3_add1::IfcGeographicCRS::Unit() const { if(get_attribute_value(4).isNull()) { return ::Ifc4x3_add1::IfcNamedUnit{}; } return ((express::Base)(get_attribute_value(4))).as<::Ifc4x3_add1::IfcNamedUnit>(); } +::Ifc4x3_add1::IfcNamedUnit Ifc4x3_add1::IfcGeographicCRS::Unit() const { if(get_attribute_value(4).isNull()) { return ::Ifc4x3_add1::IfcNamedUnit{}; } return ((express::base)(get_attribute_value(4))).as<::Ifc4x3_add1::IfcNamedUnit>(); } void Ifc4x3_add1::IfcGeographicCRS::setUnit(const ::Ifc4x3_add1::IfcNamedUnit& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } @@ -11039,22 +11039,22 @@ void Ifc4x3_add1::IfcGeographicElementType::setPredefinedType(const ::Ifc4x3_add const ifcopenshell::entity& Ifc4x3_add1::IfcGeographicElementType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[502]); } -Ifc4x3_add1::IfcGeographicElementType Ifc4x3_add1::IfcGeographicElementType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcGeographicElementTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcGeographicElementTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_add1::IfcGeographicElementType Ifc4x3_add1::IfcGeographicElementType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcGeographicElementTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcGeographicElementTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcGeometricCurveSet const ifcopenshell::entity& Ifc4x3_add1::IfcGeometricCurveSet::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[504]); } -Ifc4x3_add1::IfcGeometricCurveSet Ifc4x3_add1::IfcGeometricCurveSet::initialize(std::vector< ::Ifc4x3_add1::IfcGeometricSetSelect > v1_Elements) { set_attribute_value(0, cast_vector(v1_Elements));; return *this; } +Ifc4x3_add1::IfcGeometricCurveSet Ifc4x3_add1::IfcGeometricCurveSet::initialize(std::vector< ::Ifc4x3_add1::IfcGeometricSetSelect > v1_Elements) { set_attribute_value(0, cast_vector(v1_Elements));; return *this; } // Function implementations for IfcGeometricRepresentationContext int64_t Ifc4x3_add1::IfcGeometricRepresentationContext::CoordinateSpaceDimension() const { int64_t v = get_attribute_value(2); return v; } void Ifc4x3_add1::IfcGeometricRepresentationContext::setCoordinateSpaceDimension(const int64_t& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } std::optional< double > Ifc4x3_add1::IfcGeometricRepresentationContext::Precision() const { if(get_attribute_value(3).isNull()) { return std::nullopt; } double v = get_attribute_value(3); return v; } void Ifc4x3_add1::IfcGeometricRepresentationContext::setPrecision(const std::optional< double >& v) { if (v) {set_attribute_value(3, *v);} else {unset_attribute_value(3);} } -::Ifc4x3_add1::IfcAxis2Placement Ifc4x3_add1::IfcGeometricRepresentationContext::WorldCoordinateSystem() const { return ((express::Base)(get_attribute_value(4))).as<::Ifc4x3_add1::IfcAxis2Placement>(); } +::Ifc4x3_add1::IfcAxis2Placement Ifc4x3_add1::IfcGeometricRepresentationContext::WorldCoordinateSystem() const { return ((express::base)(get_attribute_value(4))).as<::Ifc4x3_add1::IfcAxis2Placement>(); } void Ifc4x3_add1::IfcGeometricRepresentationContext::setWorldCoordinateSystem(const ::Ifc4x3_add1::IfcAxis2Placement& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } -::Ifc4x3_add1::IfcDirection Ifc4x3_add1::IfcGeometricRepresentationContext::TrueNorth() const { if(get_attribute_value(5).isNull()) { return ::Ifc4x3_add1::IfcDirection{}; } return ((express::Base)(get_attribute_value(5))).as<::Ifc4x3_add1::IfcDirection>(); } +::Ifc4x3_add1::IfcDirection Ifc4x3_add1::IfcGeometricRepresentationContext::TrueNorth() const { if(get_attribute_value(5).isNull()) { return ::Ifc4x3_add1::IfcDirection{}; } return ((express::base)(get_attribute_value(5))).as<::Ifc4x3_add1::IfcDirection>(); } void Ifc4x3_add1::IfcGeometricRepresentationContext::setTrueNorth(const ::Ifc4x3_add1::IfcDirection& v) { set_attribute_value(5, v);if constexpr (false)unset_attribute_value(5); } std::vector<::Ifc4x3_add1::IfcGeometricRepresentationSubContext> Ifc4x3_add1::IfcGeometricRepresentationContext::HasSubContexts() const { return cast_vector(file()->get_inverse(data()->id(), IFC4X3_ADD1_types[508], 6)); } @@ -11070,7 +11070,7 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcGeometricRepresentationItem::Class() Ifc4x3_add1::IfcGeometricRepresentationItem Ifc4x3_add1::IfcGeometricRepresentationItem::initialize() { ; return *this; } // Function implementations for IfcGeometricRepresentationSubContext -::Ifc4x3_add1::IfcGeometricRepresentationContext Ifc4x3_add1::IfcGeometricRepresentationSubContext::ParentContext() const { return ((express::Base)(get_attribute_value(6))).as<::Ifc4x3_add1::IfcGeometricRepresentationContext>(); } +::Ifc4x3_add1::IfcGeometricRepresentationContext Ifc4x3_add1::IfcGeometricRepresentationSubContext::ParentContext() const { return ((express::base)(get_attribute_value(6))).as<::Ifc4x3_add1::IfcGeometricRepresentationContext>(); } void Ifc4x3_add1::IfcGeometricRepresentationSubContext::setParentContext(const ::Ifc4x3_add1::IfcGeometricRepresentationContext& v) { set_attribute_value(6, v);if constexpr (false)unset_attribute_value(6); } std::optional< double > Ifc4x3_add1::IfcGeometricRepresentationSubContext::TargetScale() const { if(get_attribute_value(7).isNull()) { return std::nullopt; } double v = get_attribute_value(7); return v; } void Ifc4x3_add1::IfcGeometricRepresentationSubContext::setTargetScale(const std::optional< double >& v) { if (v) {set_attribute_value(7, *v);} else {unset_attribute_value(7);} } @@ -11084,12 +11084,12 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcGeometricRepresentationSubContext::C Ifc4x3_add1::IfcGeometricRepresentationSubContext Ifc4x3_add1::IfcGeometricRepresentationSubContext::initialize(std::optional< std::string > v1_ContextIdentifier, std::optional< std::string > v2_ContextType, ::Ifc4x3_add1::IfcGeometricRepresentationContext v7_ParentContext, std::optional< double > v8_TargetScale, ::Ifc4x3_add1::IfcGeometricProjectionEnum::Value v9_TargetView, std::optional< std::string > v10_UserDefinedTargetView) { if (v1_ContextIdentifier) {set_attribute_value(0, (*v1_ContextIdentifier)); } if (v2_ContextType) {set_attribute_value(1, (*v2_ContextType)); }set_attribute_value(6, (v7_ParentContext)); if (v8_TargetScale) {set_attribute_value(7, (*v8_TargetScale)); }set_attribute_value(8, (enumeration_reference(&::Ifc4x3_add1::IfcGeometricProjectionEnum::Class(),(size_t)v9_TargetView))); if (v10_UserDefinedTargetView) {set_attribute_value(9, (*v10_UserDefinedTargetView)); }; return *this; } // Function implementations for IfcGeometricSet -std::vector< ::Ifc4x3_add1::IfcGeometricSetSelect > Ifc4x3_add1::IfcGeometricSet::Elements() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3_add1::IfcGeometricSetSelect>(es); } -void Ifc4x3_add1::IfcGeometricSet::setElements(const std::vector< ::Ifc4x3_add1::IfcGeometricSetSelect >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } +std::vector< ::Ifc4x3_add1::IfcGeometricSetSelect > Ifc4x3_add1::IfcGeometricSet::Elements() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3_add1::IfcGeometricSetSelect>(es); } +void Ifc4x3_add1::IfcGeometricSet::setElements(const std::vector< ::Ifc4x3_add1::IfcGeometricSetSelect >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } const ifcopenshell::entity& Ifc4x3_add1::IfcGeometricSet::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[509]); } -Ifc4x3_add1::IfcGeometricSet Ifc4x3_add1::IfcGeometricSet::initialize(std::vector< ::Ifc4x3_add1::IfcGeometricSetSelect > v1_Elements) { set_attribute_value(0, cast_vector(v1_Elements));; return *this; } +Ifc4x3_add1::IfcGeometricSet Ifc4x3_add1::IfcGeometricSet::initialize(std::vector< ::Ifc4x3_add1::IfcGeometricSetSelect > v1_Elements) { set_attribute_value(0, cast_vector(v1_Elements));; return *this; } // Function implementations for IfcGeomodel @@ -11124,33 +11124,33 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcGeotechnicalStratum::Class() { retur Ifc4x3_add1::IfcGeotechnicalStratum Ifc4x3_add1::IfcGeotechnicalStratum::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, ::Ifc4x3_add1::IfcObjectPlacement v6_ObjectPlacement, ::Ifc4x3_add1::IfcProductRepresentation v7_Representation, std::optional< std::string > v8_Tag, std::optional< ::Ifc4x3_add1::IfcGeotechnicalStratumTypeEnum::Value > v9_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); }set_attribute_value(5, (v6_ObjectPlacement));set_attribute_value(6, (v7_Representation)); if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_PredefinedType) {set_attribute_value(8, (enumeration_reference(&::Ifc4x3_add1::IfcGeotechnicalStratumTypeEnum::Class(),(size_t)*v9_PredefinedType))); }; return *this; } // Function implementations for IfcGradientCurve -::Ifc4x3_add1::IfcBoundedCurve Ifc4x3_add1::IfcGradientCurve::BaseCurve() const { return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3_add1::IfcBoundedCurve>(); } +::Ifc4x3_add1::IfcBoundedCurve Ifc4x3_add1::IfcGradientCurve::BaseCurve() const { return ((express::base)(get_attribute_value(2))).as<::Ifc4x3_add1::IfcBoundedCurve>(); } void Ifc4x3_add1::IfcGradientCurve::setBaseCurve(const ::Ifc4x3_add1::IfcBoundedCurve& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } -::Ifc4x3_add1::IfcPlacement Ifc4x3_add1::IfcGradientCurve::EndPoint() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3_add1::IfcPlacement{}; } return ((express::Base)(get_attribute_value(3))).as<::Ifc4x3_add1::IfcPlacement>(); } +::Ifc4x3_add1::IfcPlacement Ifc4x3_add1::IfcGradientCurve::EndPoint() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3_add1::IfcPlacement{}; } return ((express::base)(get_attribute_value(3))).as<::Ifc4x3_add1::IfcPlacement>(); } void Ifc4x3_add1::IfcGradientCurve::setEndPoint(const ::Ifc4x3_add1::IfcPlacement& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } const ifcopenshell::entity& Ifc4x3_add1::IfcGradientCurve::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[519]); } -Ifc4x3_add1::IfcGradientCurve Ifc4x3_add1::IfcGradientCurve::initialize(std::vector< ::Ifc4x3_add1::IfcSegment > v1_Segments, boost::logic::tribool v2_SelfIntersect, ::Ifc4x3_add1::IfcBoundedCurve v3_BaseCurve, ::Ifc4x3_add1::IfcPlacement v4_EndPoint) { set_attribute_value(0, cast_vector(v1_Segments));set_attribute_value(1, (v2_SelfIntersect));set_attribute_value(2, (v3_BaseCurve));set_attribute_value(3, (v4_EndPoint));; return *this; } +Ifc4x3_add1::IfcGradientCurve Ifc4x3_add1::IfcGradientCurve::initialize(std::vector< ::Ifc4x3_add1::IfcSegment > v1_Segments, boost::logic::tribool v2_SelfIntersect, ::Ifc4x3_add1::IfcBoundedCurve v3_BaseCurve, ::Ifc4x3_add1::IfcPlacement v4_EndPoint) { set_attribute_value(0, cast_vector(v1_Segments));set_attribute_value(1, (v2_SelfIntersect));set_attribute_value(2, (v3_BaseCurve));set_attribute_value(3, (v4_EndPoint));; return *this; } // Function implementations for IfcGrid -std::vector< ::Ifc4x3_add1::IfcGridAxis > Ifc4x3_add1::IfcGrid::UAxes() const { std::vector es = get_attribute_value(7); return cast_vector<::Ifc4x3_add1::IfcGridAxis>(es); } -void Ifc4x3_add1::IfcGrid::setUAxes(const std::vector< ::Ifc4x3_add1::IfcGridAxis >& v) { set_attribute_value(7, cast_vector(v));if constexpr (false)unset_attribute_value(7); } -std::vector< ::Ifc4x3_add1::IfcGridAxis > Ifc4x3_add1::IfcGrid::VAxes() const { std::vector es = get_attribute_value(8); return cast_vector<::Ifc4x3_add1::IfcGridAxis>(es); } -void Ifc4x3_add1::IfcGrid::setVAxes(const std::vector< ::Ifc4x3_add1::IfcGridAxis >& v) { set_attribute_value(8, cast_vector(v));if constexpr (false)unset_attribute_value(8); } -std::optional< std::vector< ::Ifc4x3_add1::IfcGridAxis > > Ifc4x3_add1::IfcGrid::WAxes() const { if(get_attribute_value(9).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(9); return cast_vector<::Ifc4x3_add1::IfcGridAxis>(es); } -void Ifc4x3_add1::IfcGrid::setWAxes(const std::optional< std::vector< ::Ifc4x3_add1::IfcGridAxis > >& v) { if (v) {set_attribute_value(9, cast_vector(*v));} else {unset_attribute_value(9);} } +std::vector< ::Ifc4x3_add1::IfcGridAxis > Ifc4x3_add1::IfcGrid::UAxes() const { std::vector es = get_attribute_value(7); return cast_vector<::Ifc4x3_add1::IfcGridAxis>(es); } +void Ifc4x3_add1::IfcGrid::setUAxes(const std::vector< ::Ifc4x3_add1::IfcGridAxis >& v) { set_attribute_value(7, cast_vector(v));if constexpr (false)unset_attribute_value(7); } +std::vector< ::Ifc4x3_add1::IfcGridAxis > Ifc4x3_add1::IfcGrid::VAxes() const { std::vector es = get_attribute_value(8); return cast_vector<::Ifc4x3_add1::IfcGridAxis>(es); } +void Ifc4x3_add1::IfcGrid::setVAxes(const std::vector< ::Ifc4x3_add1::IfcGridAxis >& v) { set_attribute_value(8, cast_vector(v));if constexpr (false)unset_attribute_value(8); } +std::optional< std::vector< ::Ifc4x3_add1::IfcGridAxis > > Ifc4x3_add1::IfcGrid::WAxes() const { if(get_attribute_value(9).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(9); return cast_vector<::Ifc4x3_add1::IfcGridAxis>(es); } +void Ifc4x3_add1::IfcGrid::setWAxes(const std::optional< std::vector< ::Ifc4x3_add1::IfcGridAxis > >& v) { if (v) {set_attribute_value(9, cast_vector(*v));} else {unset_attribute_value(9);} } std::optional< ::Ifc4x3_add1::IfcGridTypeEnum::Value > Ifc4x3_add1::IfcGrid::PredefinedType() const { if(get_attribute_value(10).isNull()) { return std::nullopt; } return ::Ifc4x3_add1::IfcGridTypeEnum::FromString(get_attribute_value(10)); } void Ifc4x3_add1::IfcGrid::setPredefinedType(const std::optional< ::Ifc4x3_add1::IfcGridTypeEnum::Value >& v) { if (v) {set_attribute_value(10, enumeration_reference(&::Ifc4x3_add1::IfcGridTypeEnum::Class(), (size_t) *v));} else {unset_attribute_value(10);} } const ifcopenshell::entity& Ifc4x3_add1::IfcGrid::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[520]); } -Ifc4x3_add1::IfcGrid Ifc4x3_add1::IfcGrid::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, ::Ifc4x3_add1::IfcObjectPlacement v6_ObjectPlacement, ::Ifc4x3_add1::IfcProductRepresentation v7_Representation, std::vector< ::Ifc4x3_add1::IfcGridAxis > v8_UAxes, std::vector< ::Ifc4x3_add1::IfcGridAxis > v9_VAxes, std::optional< std::vector< ::Ifc4x3_add1::IfcGridAxis > > v10_WAxes, std::optional< ::Ifc4x3_add1::IfcGridTypeEnum::Value > v11_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); }set_attribute_value(5, (v6_ObjectPlacement));set_attribute_value(6, (v7_Representation));set_attribute_value(7, cast_vector(v8_UAxes));set_attribute_value(8, cast_vector(v9_VAxes)); if (v10_WAxes) {set_attribute_value(9, cast_vector(*v10_WAxes)); } if (v11_PredefinedType) {set_attribute_value(10, (enumeration_reference(&::Ifc4x3_add1::IfcGridTypeEnum::Class(),(size_t)*v11_PredefinedType))); }; return *this; } +Ifc4x3_add1::IfcGrid Ifc4x3_add1::IfcGrid::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, ::Ifc4x3_add1::IfcObjectPlacement v6_ObjectPlacement, ::Ifc4x3_add1::IfcProductRepresentation v7_Representation, std::vector< ::Ifc4x3_add1::IfcGridAxis > v8_UAxes, std::vector< ::Ifc4x3_add1::IfcGridAxis > v9_VAxes, std::optional< std::vector< ::Ifc4x3_add1::IfcGridAxis > > v10_WAxes, std::optional< ::Ifc4x3_add1::IfcGridTypeEnum::Value > v11_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); }set_attribute_value(5, (v6_ObjectPlacement));set_attribute_value(6, (v7_Representation));set_attribute_value(7, cast_vector(v8_UAxes));set_attribute_value(8, cast_vector(v9_VAxes)); if (v10_WAxes) {set_attribute_value(9, cast_vector(*v10_WAxes)); } if (v11_PredefinedType) {set_attribute_value(10, (enumeration_reference(&::Ifc4x3_add1::IfcGridTypeEnum::Class(),(size_t)*v11_PredefinedType))); }; return *this; } // Function implementations for IfcGridAxis std::optional< std::string > Ifc4x3_add1::IfcGridAxis::AxisTag() const { if(get_attribute_value(0).isNull()) { return std::nullopt; } std::string v = get_attribute_value(0); return v; } void Ifc4x3_add1::IfcGridAxis::setAxisTag(const std::optional< std::string >& v) { if (v) {set_attribute_value(0, *v);} else {unset_attribute_value(0);} } -::Ifc4x3_add1::IfcCurve Ifc4x3_add1::IfcGridAxis::AxisCurve() const { return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3_add1::IfcCurve>(); } +::Ifc4x3_add1::IfcCurve Ifc4x3_add1::IfcGridAxis::AxisCurve() const { return ((express::base)(get_attribute_value(1))).as<::Ifc4x3_add1::IfcCurve>(); } void Ifc4x3_add1::IfcGridAxis::setAxisCurve(const ::Ifc4x3_add1::IfcCurve& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } bool Ifc4x3_add1::IfcGridAxis::SameSense() const { bool v = get_attribute_value(2); return v; } void Ifc4x3_add1::IfcGridAxis::setSameSense(const bool& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } @@ -11164,9 +11164,9 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcGridAxis::Class() { return *((ifcope Ifc4x3_add1::IfcGridAxis Ifc4x3_add1::IfcGridAxis::initialize(std::optional< std::string > v1_AxisTag, ::Ifc4x3_add1::IfcCurve v2_AxisCurve, bool v3_SameSense) { if (v1_AxisTag) {set_attribute_value(0, (*v1_AxisTag)); }set_attribute_value(1, (v2_AxisCurve));set_attribute_value(2, (v3_SameSense));; return *this; } // Function implementations for IfcGridPlacement -::Ifc4x3_add1::IfcVirtualGridIntersection Ifc4x3_add1::IfcGridPlacement::PlacementLocation() const { return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3_add1::IfcVirtualGridIntersection>(); } +::Ifc4x3_add1::IfcVirtualGridIntersection Ifc4x3_add1::IfcGridPlacement::PlacementLocation() const { return ((express::base)(get_attribute_value(1))).as<::Ifc4x3_add1::IfcVirtualGridIntersection>(); } void Ifc4x3_add1::IfcGridPlacement::setPlacementLocation(const ::Ifc4x3_add1::IfcVirtualGridIntersection& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } -::Ifc4x3_add1::IfcGridPlacementDirectionSelect Ifc4x3_add1::IfcGridPlacement::PlacementRefDirection() const { if(get_attribute_value(2).isNull()) { return ::Ifc4x3_add1::IfcGridPlacementDirectionSelect{}; } return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3_add1::IfcGridPlacementDirectionSelect>(); } +::Ifc4x3_add1::IfcGridPlacementDirectionSelect Ifc4x3_add1::IfcGridPlacement::PlacementRefDirection() const { if(get_attribute_value(2).isNull()) { return ::Ifc4x3_add1::IfcGridPlacementDirectionSelect{}; } return ((express::base)(get_attribute_value(2))).as<::Ifc4x3_add1::IfcGridPlacementDirectionSelect>(); } void Ifc4x3_add1::IfcGridPlacement::setPlacementRefDirection(const ::Ifc4x3_add1::IfcGridPlacementDirectionSelect& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } @@ -11182,7 +11182,7 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcGroup::Class() { return *((ifcopensh Ifc4x3_add1::IfcGroup Ifc4x3_add1::IfcGroup::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); }; return *this; } // Function implementations for IfcHalfSpaceSolid -::Ifc4x3_add1::IfcSurface Ifc4x3_add1::IfcHalfSpaceSolid::BaseSurface() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcSurface>(); } +::Ifc4x3_add1::IfcSurface Ifc4x3_add1::IfcHalfSpaceSolid::BaseSurface() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcSurface>(); } void Ifc4x3_add1::IfcHalfSpaceSolid::setBaseSurface(const ::Ifc4x3_add1::IfcSurface& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } bool Ifc4x3_add1::IfcHalfSpaceSolid::AgreementFlag() const { bool v = get_attribute_value(1); return v; } void Ifc4x3_add1::IfcHalfSpaceSolid::setAgreementFlag(const bool& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } @@ -11205,7 +11205,7 @@ void Ifc4x3_add1::IfcHeatExchangerType::setPredefinedType(const ::Ifc4x3_add1::I const ifcopenshell::entity& Ifc4x3_add1::IfcHeatExchangerType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[529]); } -Ifc4x3_add1::IfcHeatExchangerType Ifc4x3_add1::IfcHeatExchangerType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcHeatExchangerTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcHeatExchangerTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_add1::IfcHeatExchangerType Ifc4x3_add1::IfcHeatExchangerType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcHeatExchangerTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcHeatExchangerTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcHumidifier std::optional< ::Ifc4x3_add1::IfcHumidifierTypeEnum::Value > Ifc4x3_add1::IfcHumidifier::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_add1::IfcHumidifierTypeEnum::FromString(get_attribute_value(8)); } @@ -11221,7 +11221,7 @@ void Ifc4x3_add1::IfcHumidifierType::setPredefinedType(const ::Ifc4x3_add1::IfcH const ifcopenshell::entity& Ifc4x3_add1::IfcHumidifierType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[534]); } -Ifc4x3_add1::IfcHumidifierType Ifc4x3_add1::IfcHumidifierType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcHumidifierTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcHumidifierTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_add1::IfcHumidifierType Ifc4x3_add1::IfcHumidifierType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcHumidifierTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcHumidifierTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcIShapeProfileDef double Ifc4x3_add1::IfcIShapeProfileDef::OverallWidth() const { double v = get_attribute_value(3); return v; } @@ -11265,14 +11265,14 @@ void Ifc4x3_add1::IfcImpactProtectionDeviceType::setPredefinedType(const ::Ifc4x const ifcopenshell::entity& Ifc4x3_add1::IfcImpactProtectionDeviceType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[540]); } -Ifc4x3_add1::IfcImpactProtectionDeviceType Ifc4x3_add1::IfcImpactProtectionDeviceType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcImpactProtectionDeviceTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcImpactProtectionDeviceTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_add1::IfcImpactProtectionDeviceType Ifc4x3_add1::IfcImpactProtectionDeviceType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcImpactProtectionDeviceTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcImpactProtectionDeviceTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcIndexedColourMap -::Ifc4x3_add1::IfcTessellatedFaceSet Ifc4x3_add1::IfcIndexedColourMap::MappedTo() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcTessellatedFaceSet>(); } +::Ifc4x3_add1::IfcTessellatedFaceSet Ifc4x3_add1::IfcIndexedColourMap::MappedTo() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcTessellatedFaceSet>(); } void Ifc4x3_add1::IfcIndexedColourMap::setMappedTo(const ::Ifc4x3_add1::IfcTessellatedFaceSet& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } std::optional< double > Ifc4x3_add1::IfcIndexedColourMap::Opacity() const { if(get_attribute_value(1).isNull()) { return std::nullopt; } double v = get_attribute_value(1); return v; } void Ifc4x3_add1::IfcIndexedColourMap::setOpacity(const std::optional< double >& v) { if (v) {set_attribute_value(1, *v);} else {unset_attribute_value(1);} } -::Ifc4x3_add1::IfcColourRgbList Ifc4x3_add1::IfcIndexedColourMap::Colours() const { return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3_add1::IfcColourRgbList>(); } +::Ifc4x3_add1::IfcColourRgbList Ifc4x3_add1::IfcIndexedColourMap::Colours() const { return ((express::base)(get_attribute_value(2))).as<::Ifc4x3_add1::IfcColourRgbList>(); } void Ifc4x3_add1::IfcIndexedColourMap::setColours(const ::Ifc4x3_add1::IfcColourRgbList& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } std::vector< int64_t > /*[1:?]*/ Ifc4x3_add1::IfcIndexedColourMap::ColourIndex() const { std::vector< int64_t > /*[1:?]*/ v = get_attribute_value(3); return v; } void Ifc4x3_add1::IfcIndexedColourMap::setColourIndex(const std::vector< int64_t > /*[1:?]*/& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } @@ -11282,16 +11282,16 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcIndexedColourMap::Class() { return * Ifc4x3_add1::IfcIndexedColourMap Ifc4x3_add1::IfcIndexedColourMap::initialize(::Ifc4x3_add1::IfcTessellatedFaceSet v1_MappedTo, std::optional< double > v2_Opacity, ::Ifc4x3_add1::IfcColourRgbList v3_Colours, std::vector< int64_t > /*[1:?]*/ v4_ColourIndex) { set_attribute_value(0, (v1_MappedTo)); if (v2_Opacity) {set_attribute_value(1, (*v2_Opacity)); }set_attribute_value(2, (v3_Colours));set_attribute_value(3, (v4_ColourIndex));; return *this; } // Function implementations for IfcIndexedPolyCurve -::Ifc4x3_add1::IfcCartesianPointList Ifc4x3_add1::IfcIndexedPolyCurve::Points() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcCartesianPointList>(); } +::Ifc4x3_add1::IfcCartesianPointList Ifc4x3_add1::IfcIndexedPolyCurve::Points() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcCartesianPointList>(); } void Ifc4x3_add1::IfcIndexedPolyCurve::setPoints(const ::Ifc4x3_add1::IfcCartesianPointList& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } -std::optional< std::vector< ::Ifc4x3_add1::IfcSegmentIndexSelect > > Ifc4x3_add1::IfcIndexedPolyCurve::Segments() const { if(get_attribute_value(1).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3_add1::IfcSegmentIndexSelect>(es); } -void Ifc4x3_add1::IfcIndexedPolyCurve::setSegments(const std::optional< std::vector< ::Ifc4x3_add1::IfcSegmentIndexSelect > >& v) { if (v) {set_attribute_value(1, cast_vector(*v));} else {unset_attribute_value(1);} } +std::optional< std::vector< ::Ifc4x3_add1::IfcSegmentIndexSelect > > Ifc4x3_add1::IfcIndexedPolyCurve::Segments() const { if(get_attribute_value(1).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3_add1::IfcSegmentIndexSelect>(es); } +void Ifc4x3_add1::IfcIndexedPolyCurve::setSegments(const std::optional< std::vector< ::Ifc4x3_add1::IfcSegmentIndexSelect > >& v) { if (v) {set_attribute_value(1, cast_vector(*v));} else {unset_attribute_value(1);} } std::optional< bool > Ifc4x3_add1::IfcIndexedPolyCurve::SelfIntersect() const { if(get_attribute_value(2).isNull()) { return std::nullopt; } bool v = get_attribute_value(2); return v; } void Ifc4x3_add1::IfcIndexedPolyCurve::setSelfIntersect(const std::optional< bool >& v) { if (v) {set_attribute_value(2, *v);} else {unset_attribute_value(2);} } const ifcopenshell::entity& Ifc4x3_add1::IfcIndexedPolyCurve::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[543]); } -Ifc4x3_add1::IfcIndexedPolyCurve Ifc4x3_add1::IfcIndexedPolyCurve::initialize(::Ifc4x3_add1::IfcCartesianPointList v1_Points, std::optional< std::vector< ::Ifc4x3_add1::IfcSegmentIndexSelect > > v2_Segments, std::optional< bool > v3_SelfIntersect) { set_attribute_value(0, (v1_Points)); if (v2_Segments) {set_attribute_value(1, cast_vector(*v2_Segments)); } if (v3_SelfIntersect) {set_attribute_value(2, (*v3_SelfIntersect)); }; return *this; } +Ifc4x3_add1::IfcIndexedPolyCurve Ifc4x3_add1::IfcIndexedPolyCurve::initialize(::Ifc4x3_add1::IfcCartesianPointList v1_Points, std::optional< std::vector< ::Ifc4x3_add1::IfcSegmentIndexSelect > > v2_Segments, std::optional< bool > v3_SelfIntersect) { set_attribute_value(0, (v1_Points)); if (v2_Segments) {set_attribute_value(1, cast_vector(*v2_Segments)); } if (v3_SelfIntersect) {set_attribute_value(2, (*v3_SelfIntersect)); }; return *this; } // Function implementations for IfcIndexedPolygonalFace std::vector< int64_t > /*[3:?]*/ Ifc4x3_add1::IfcIndexedPolygonalFace::CoordIndex() const { std::vector< int64_t > /*[3:?]*/ v = get_attribute_value(0); return v; } @@ -11312,22 +11312,22 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcIndexedPolygonalFaceWithVoids::Class Ifc4x3_add1::IfcIndexedPolygonalFaceWithVoids Ifc4x3_add1::IfcIndexedPolygonalFaceWithVoids::initialize(std::vector< int64_t > /*[3:?]*/ v1_CoordIndex, std::vector< std::vector< int64_t > > v2_InnerCoordIndices) { set_attribute_value(0, (v1_CoordIndex));set_attribute_value(1, (v2_InnerCoordIndices));; return *this; } // Function implementations for IfcIndexedPolygonalTextureMap -std::vector< ::Ifc4x3_add1::IfcTextureCoordinateIndices > Ifc4x3_add1::IfcIndexedPolygonalTextureMap::TexCoordIndices() const { std::vector es = get_attribute_value(3); return cast_vector<::Ifc4x3_add1::IfcTextureCoordinateIndices>(es); } -void Ifc4x3_add1::IfcIndexedPolygonalTextureMap::setTexCoordIndices(const std::vector< ::Ifc4x3_add1::IfcTextureCoordinateIndices >& v) { set_attribute_value(3, cast_vector(v));if constexpr (false)unset_attribute_value(3); } +std::vector< ::Ifc4x3_add1::IfcTextureCoordinateIndices > Ifc4x3_add1::IfcIndexedPolygonalTextureMap::TexCoordIndices() const { std::vector es = get_attribute_value(3); return cast_vector<::Ifc4x3_add1::IfcTextureCoordinateIndices>(es); } +void Ifc4x3_add1::IfcIndexedPolygonalTextureMap::setTexCoordIndices(const std::vector< ::Ifc4x3_add1::IfcTextureCoordinateIndices >& v) { set_attribute_value(3, cast_vector(v));if constexpr (false)unset_attribute_value(3); } const ifcopenshell::entity& Ifc4x3_add1::IfcIndexedPolygonalTextureMap::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[546]); } -Ifc4x3_add1::IfcIndexedPolygonalTextureMap Ifc4x3_add1::IfcIndexedPolygonalTextureMap::initialize(std::vector< ::Ifc4x3_add1::IfcSurfaceTexture > v1_Maps, ::Ifc4x3_add1::IfcTessellatedFaceSet v2_MappedTo, ::Ifc4x3_add1::IfcTextureVertexList v3_TexCoords, std::vector< ::Ifc4x3_add1::IfcTextureCoordinateIndices > v4_TexCoordIndices) { set_attribute_value(0, cast_vector(v1_Maps));set_attribute_value(1, (v2_MappedTo));set_attribute_value(2, (v3_TexCoords));set_attribute_value(3, cast_vector(v4_TexCoordIndices));; return *this; } +Ifc4x3_add1::IfcIndexedPolygonalTextureMap Ifc4x3_add1::IfcIndexedPolygonalTextureMap::initialize(std::vector< ::Ifc4x3_add1::IfcSurfaceTexture > v1_Maps, ::Ifc4x3_add1::IfcTessellatedFaceSet v2_MappedTo, ::Ifc4x3_add1::IfcTextureVertexList v3_TexCoords, std::vector< ::Ifc4x3_add1::IfcTextureCoordinateIndices > v4_TexCoordIndices) { set_attribute_value(0, cast_vector(v1_Maps));set_attribute_value(1, (v2_MappedTo));set_attribute_value(2, (v3_TexCoords));set_attribute_value(3, cast_vector(v4_TexCoordIndices));; return *this; } // Function implementations for IfcIndexedTextureMap -::Ifc4x3_add1::IfcTessellatedFaceSet Ifc4x3_add1::IfcIndexedTextureMap::MappedTo() const { return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3_add1::IfcTessellatedFaceSet>(); } +::Ifc4x3_add1::IfcTessellatedFaceSet Ifc4x3_add1::IfcIndexedTextureMap::MappedTo() const { return ((express::base)(get_attribute_value(1))).as<::Ifc4x3_add1::IfcTessellatedFaceSet>(); } void Ifc4x3_add1::IfcIndexedTextureMap::setMappedTo(const ::Ifc4x3_add1::IfcTessellatedFaceSet& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } -::Ifc4x3_add1::IfcTextureVertexList Ifc4x3_add1::IfcIndexedTextureMap::TexCoords() const { return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3_add1::IfcTextureVertexList>(); } +::Ifc4x3_add1::IfcTextureVertexList Ifc4x3_add1::IfcIndexedTextureMap::TexCoords() const { return ((express::base)(get_attribute_value(2))).as<::Ifc4x3_add1::IfcTextureVertexList>(); } void Ifc4x3_add1::IfcIndexedTextureMap::setTexCoords(const ::Ifc4x3_add1::IfcTextureVertexList& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } const ifcopenshell::entity& Ifc4x3_add1::IfcIndexedTextureMap::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[547]); } -Ifc4x3_add1::IfcIndexedTextureMap Ifc4x3_add1::IfcIndexedTextureMap::initialize(std::vector< ::Ifc4x3_add1::IfcSurfaceTexture > v1_Maps, ::Ifc4x3_add1::IfcTessellatedFaceSet v2_MappedTo, ::Ifc4x3_add1::IfcTextureVertexList v3_TexCoords) { set_attribute_value(0, cast_vector(v1_Maps));set_attribute_value(1, (v2_MappedTo));set_attribute_value(2, (v3_TexCoords));; return *this; } +Ifc4x3_add1::IfcIndexedTextureMap Ifc4x3_add1::IfcIndexedTextureMap::initialize(std::vector< ::Ifc4x3_add1::IfcSurfaceTexture > v1_Maps, ::Ifc4x3_add1::IfcTessellatedFaceSet v2_MappedTo, ::Ifc4x3_add1::IfcTextureVertexList v3_TexCoords) { set_attribute_value(0, cast_vector(v1_Maps));set_attribute_value(1, (v2_MappedTo));set_attribute_value(2, (v3_TexCoords));; return *this; } // Function implementations for IfcIndexedTriangleTextureMap std::optional< std::vector< std::vector< int64_t > > > Ifc4x3_add1::IfcIndexedTriangleTextureMap::TexCoordIndex() const { if(get_attribute_value(3).isNull()) { return std::nullopt; } std::vector< std::vector< int64_t > > v = get_attribute_value(3); return v; } @@ -11335,7 +11335,7 @@ void Ifc4x3_add1::IfcIndexedTriangleTextureMap::setTexCoordIndex(const std::opti const ifcopenshell::entity& Ifc4x3_add1::IfcIndexedTriangleTextureMap::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[548]); } -Ifc4x3_add1::IfcIndexedTriangleTextureMap Ifc4x3_add1::IfcIndexedTriangleTextureMap::initialize(std::vector< ::Ifc4x3_add1::IfcSurfaceTexture > v1_Maps, ::Ifc4x3_add1::IfcTessellatedFaceSet v2_MappedTo, ::Ifc4x3_add1::IfcTextureVertexList v3_TexCoords, std::optional< std::vector< std::vector< int64_t > > > v4_TexCoordIndex) { set_attribute_value(0, cast_vector(v1_Maps));set_attribute_value(1, (v2_MappedTo));set_attribute_value(2, (v3_TexCoords)); if (v4_TexCoordIndex) {set_attribute_value(3, (*v4_TexCoordIndex)); }; return *this; } +Ifc4x3_add1::IfcIndexedTriangleTextureMap Ifc4x3_add1::IfcIndexedTriangleTextureMap::initialize(std::vector< ::Ifc4x3_add1::IfcSurfaceTexture > v1_Maps, ::Ifc4x3_add1::IfcTessellatedFaceSet v2_MappedTo, ::Ifc4x3_add1::IfcTextureVertexList v3_TexCoords, std::optional< std::vector< std::vector< int64_t > > > v4_TexCoordIndex) { set_attribute_value(0, cast_vector(v1_Maps));set_attribute_value(1, (v2_MappedTo));set_attribute_value(2, (v3_TexCoords)); if (v4_TexCoordIndex) {set_attribute_value(3, (*v4_TexCoordIndex)); }; return *this; } // Function implementations for IfcInterceptor std::optional< ::Ifc4x3_add1::IfcInterceptorTypeEnum::Value > Ifc4x3_add1::IfcInterceptor::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_add1::IfcInterceptorTypeEnum::FromString(get_attribute_value(8)); } @@ -11351,49 +11351,49 @@ void Ifc4x3_add1::IfcInterceptorType::setPredefinedType(const ::Ifc4x3_add1::Ifc const ifcopenshell::entity& Ifc4x3_add1::IfcInterceptorType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[553]); } -Ifc4x3_add1::IfcInterceptorType Ifc4x3_add1::IfcInterceptorType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcInterceptorTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcInterceptorTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_add1::IfcInterceptorType Ifc4x3_add1::IfcInterceptorType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcInterceptorTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcInterceptorTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcIntersectionCurve const ifcopenshell::entity& Ifc4x3_add1::IfcIntersectionCurve::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[557]); } -Ifc4x3_add1::IfcIntersectionCurve Ifc4x3_add1::IfcIntersectionCurve::initialize(::Ifc4x3_add1::IfcCurve v1_Curve3D, std::vector< ::Ifc4x3_add1::IfcPcurve > v2_AssociatedGeometry, ::Ifc4x3_add1::IfcPreferredSurfaceCurveRepresentation::Value v3_MasterRepresentation) { set_attribute_value(0, (v1_Curve3D));set_attribute_value(1, cast_vector(v2_AssociatedGeometry));set_attribute_value(2, (enumeration_reference(&::Ifc4x3_add1::IfcPreferredSurfaceCurveRepresentation::Class(),(size_t)v3_MasterRepresentation)));; return *this; } +Ifc4x3_add1::IfcIntersectionCurve Ifc4x3_add1::IfcIntersectionCurve::initialize(::Ifc4x3_add1::IfcCurve v1_Curve3D, std::vector< ::Ifc4x3_add1::IfcPcurve > v2_AssociatedGeometry, ::Ifc4x3_add1::IfcPreferredSurfaceCurveRepresentation::Value v3_MasterRepresentation) { set_attribute_value(0, (v1_Curve3D));set_attribute_value(1, cast_vector(v2_AssociatedGeometry));set_attribute_value(2, (enumeration_reference(&::Ifc4x3_add1::IfcPreferredSurfaceCurveRepresentation::Class(),(size_t)v3_MasterRepresentation)));; return *this; } // Function implementations for IfcInventory std::optional< ::Ifc4x3_add1::IfcInventoryTypeEnum::Value > Ifc4x3_add1::IfcInventory::PredefinedType() const { if(get_attribute_value(5).isNull()) { return std::nullopt; } return ::Ifc4x3_add1::IfcInventoryTypeEnum::FromString(get_attribute_value(5)); } void Ifc4x3_add1::IfcInventory::setPredefinedType(const std::optional< ::Ifc4x3_add1::IfcInventoryTypeEnum::Value >& v) { if (v) {set_attribute_value(5, enumeration_reference(&::Ifc4x3_add1::IfcInventoryTypeEnum::Class(), (size_t) *v));} else {unset_attribute_value(5);} } -::Ifc4x3_add1::IfcActorSelect Ifc4x3_add1::IfcInventory::Jurisdiction() const { if(get_attribute_value(6).isNull()) { return ::Ifc4x3_add1::IfcActorSelect{}; } return ((express::Base)(get_attribute_value(6))).as<::Ifc4x3_add1::IfcActorSelect>(); } +::Ifc4x3_add1::IfcActorSelect Ifc4x3_add1::IfcInventory::Jurisdiction() const { if(get_attribute_value(6).isNull()) { return ::Ifc4x3_add1::IfcActorSelect{}; } return ((express::base)(get_attribute_value(6))).as<::Ifc4x3_add1::IfcActorSelect>(); } void Ifc4x3_add1::IfcInventory::setJurisdiction(const ::Ifc4x3_add1::IfcActorSelect& v) { set_attribute_value(6, v);if constexpr (false)unset_attribute_value(6); } -std::optional< std::vector< ::Ifc4x3_add1::IfcPerson > > Ifc4x3_add1::IfcInventory::ResponsiblePersons() const { if(get_attribute_value(7).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(7); return cast_vector<::Ifc4x3_add1::IfcPerson>(es); } -void Ifc4x3_add1::IfcInventory::setResponsiblePersons(const std::optional< std::vector< ::Ifc4x3_add1::IfcPerson > >& v) { if (v) {set_attribute_value(7, cast_vector(*v));} else {unset_attribute_value(7);} } +std::optional< std::vector< ::Ifc4x3_add1::IfcPerson > > Ifc4x3_add1::IfcInventory::ResponsiblePersons() const { if(get_attribute_value(7).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(7); return cast_vector<::Ifc4x3_add1::IfcPerson>(es); } +void Ifc4x3_add1::IfcInventory::setResponsiblePersons(const std::optional< std::vector< ::Ifc4x3_add1::IfcPerson > >& v) { if (v) {set_attribute_value(7, cast_vector(*v));} else {unset_attribute_value(7);} } std::optional< std::string > Ifc4x3_add1::IfcInventory::LastUpdateDate() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } std::string v = get_attribute_value(8); return v; } void Ifc4x3_add1::IfcInventory::setLastUpdateDate(const std::optional< std::string >& v) { if (v) {set_attribute_value(8, *v);} else {unset_attribute_value(8);} } -::Ifc4x3_add1::IfcCostValue Ifc4x3_add1::IfcInventory::CurrentValue() const { if(get_attribute_value(9).isNull()) { return ::Ifc4x3_add1::IfcCostValue{}; } return ((express::Base)(get_attribute_value(9))).as<::Ifc4x3_add1::IfcCostValue>(); } +::Ifc4x3_add1::IfcCostValue Ifc4x3_add1::IfcInventory::CurrentValue() const { if(get_attribute_value(9).isNull()) { return ::Ifc4x3_add1::IfcCostValue{}; } return ((express::base)(get_attribute_value(9))).as<::Ifc4x3_add1::IfcCostValue>(); } void Ifc4x3_add1::IfcInventory::setCurrentValue(const ::Ifc4x3_add1::IfcCostValue& v) { set_attribute_value(9, v);if constexpr (false)unset_attribute_value(9); } -::Ifc4x3_add1::IfcCostValue Ifc4x3_add1::IfcInventory::OriginalValue() const { if(get_attribute_value(10).isNull()) { return ::Ifc4x3_add1::IfcCostValue{}; } return ((express::Base)(get_attribute_value(10))).as<::Ifc4x3_add1::IfcCostValue>(); } +::Ifc4x3_add1::IfcCostValue Ifc4x3_add1::IfcInventory::OriginalValue() const { if(get_attribute_value(10).isNull()) { return ::Ifc4x3_add1::IfcCostValue{}; } return ((express::base)(get_attribute_value(10))).as<::Ifc4x3_add1::IfcCostValue>(); } void Ifc4x3_add1::IfcInventory::setOriginalValue(const ::Ifc4x3_add1::IfcCostValue& v) { set_attribute_value(10, v);if constexpr (false)unset_attribute_value(10); } const ifcopenshell::entity& Ifc4x3_add1::IfcInventory::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[558]); } -Ifc4x3_add1::IfcInventory Ifc4x3_add1::IfcInventory::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, std::optional< ::Ifc4x3_add1::IfcInventoryTypeEnum::Value > v6_PredefinedType, ::Ifc4x3_add1::IfcActorSelect v7_Jurisdiction, std::optional< std::vector< ::Ifc4x3_add1::IfcPerson > > v8_ResponsiblePersons, std::optional< std::string > v9_LastUpdateDate, ::Ifc4x3_add1::IfcCostValue v10_CurrentValue, ::Ifc4x3_add1::IfcCostValue v11_OriginalValue) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); } if (v6_PredefinedType) {set_attribute_value(5, (enumeration_reference(&::Ifc4x3_add1::IfcInventoryTypeEnum::Class(),(size_t)*v6_PredefinedType))); }set_attribute_value(6, (v7_Jurisdiction)); if (v8_ResponsiblePersons) {set_attribute_value(7, cast_vector(*v8_ResponsiblePersons)); } if (v9_LastUpdateDate) {set_attribute_value(8, (*v9_LastUpdateDate)); }set_attribute_value(9, (v10_CurrentValue));set_attribute_value(10, (v11_OriginalValue));; return *this; } +Ifc4x3_add1::IfcInventory Ifc4x3_add1::IfcInventory::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, std::optional< ::Ifc4x3_add1::IfcInventoryTypeEnum::Value > v6_PredefinedType, ::Ifc4x3_add1::IfcActorSelect v7_Jurisdiction, std::optional< std::vector< ::Ifc4x3_add1::IfcPerson > > v8_ResponsiblePersons, std::optional< std::string > v9_LastUpdateDate, ::Ifc4x3_add1::IfcCostValue v10_CurrentValue, ::Ifc4x3_add1::IfcCostValue v11_OriginalValue) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); } if (v6_PredefinedType) {set_attribute_value(5, (enumeration_reference(&::Ifc4x3_add1::IfcInventoryTypeEnum::Class(),(size_t)*v6_PredefinedType))); }set_attribute_value(6, (v7_Jurisdiction)); if (v8_ResponsiblePersons) {set_attribute_value(7, cast_vector(*v8_ResponsiblePersons)); } if (v9_LastUpdateDate) {set_attribute_value(8, (*v9_LastUpdateDate)); }set_attribute_value(9, (v10_CurrentValue));set_attribute_value(10, (v11_OriginalValue));; return *this; } // Function implementations for IfcIrregularTimeSeries -std::vector< ::Ifc4x3_add1::IfcIrregularTimeSeriesValue > Ifc4x3_add1::IfcIrregularTimeSeries::Values() const { std::vector es = get_attribute_value(8); return cast_vector<::Ifc4x3_add1::IfcIrregularTimeSeriesValue>(es); } -void Ifc4x3_add1::IfcIrregularTimeSeries::setValues(const std::vector< ::Ifc4x3_add1::IfcIrregularTimeSeriesValue >& v) { set_attribute_value(8, cast_vector(v));if constexpr (false)unset_attribute_value(8); } +std::vector< ::Ifc4x3_add1::IfcIrregularTimeSeriesValue > Ifc4x3_add1::IfcIrregularTimeSeries::Values() const { std::vector es = get_attribute_value(8); return cast_vector<::Ifc4x3_add1::IfcIrregularTimeSeriesValue>(es); } +void Ifc4x3_add1::IfcIrregularTimeSeries::setValues(const std::vector< ::Ifc4x3_add1::IfcIrregularTimeSeriesValue >& v) { set_attribute_value(8, cast_vector(v));if constexpr (false)unset_attribute_value(8); } const ifcopenshell::entity& Ifc4x3_add1::IfcIrregularTimeSeries::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[561]); } -Ifc4x3_add1::IfcIrregularTimeSeries Ifc4x3_add1::IfcIrregularTimeSeries::initialize(std::string v1_Name, std::optional< std::string > v2_Description, std::string v3_StartTime, std::string v4_EndTime, ::Ifc4x3_add1::IfcTimeSeriesDataTypeEnum::Value v5_TimeSeriesDataType, ::Ifc4x3_add1::IfcDataOriginEnum::Value v6_DataOrigin, std::optional< std::string > v7_UserDefinedDataOrigin, ::Ifc4x3_add1::IfcUnit v8_Unit, std::vector< ::Ifc4x3_add1::IfcIrregularTimeSeriesValue > v9_Values) { set_attribute_value(0, (v1_Name)); if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, (v3_StartTime));set_attribute_value(3, (v4_EndTime));set_attribute_value(4, (enumeration_reference(&::Ifc4x3_add1::IfcTimeSeriesDataTypeEnum::Class(),(size_t)v5_TimeSeriesDataType)));set_attribute_value(5, (enumeration_reference(&::Ifc4x3_add1::IfcDataOriginEnum::Class(),(size_t)v6_DataOrigin))); if (v7_UserDefinedDataOrigin) {set_attribute_value(6, (*v7_UserDefinedDataOrigin)); }set_attribute_value(7, (v8_Unit));set_attribute_value(8, cast_vector(v9_Values));; return *this; } +Ifc4x3_add1::IfcIrregularTimeSeries Ifc4x3_add1::IfcIrregularTimeSeries::initialize(std::string v1_Name, std::optional< std::string > v2_Description, std::string v3_StartTime, std::string v4_EndTime, ::Ifc4x3_add1::IfcTimeSeriesDataTypeEnum::Value v5_TimeSeriesDataType, ::Ifc4x3_add1::IfcDataOriginEnum::Value v6_DataOrigin, std::optional< std::string > v7_UserDefinedDataOrigin, ::Ifc4x3_add1::IfcUnit v8_Unit, std::vector< ::Ifc4x3_add1::IfcIrregularTimeSeriesValue > v9_Values) { set_attribute_value(0, (v1_Name)); if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, (v3_StartTime));set_attribute_value(3, (v4_EndTime));set_attribute_value(4, (enumeration_reference(&::Ifc4x3_add1::IfcTimeSeriesDataTypeEnum::Class(),(size_t)v5_TimeSeriesDataType)));set_attribute_value(5, (enumeration_reference(&::Ifc4x3_add1::IfcDataOriginEnum::Class(),(size_t)v6_DataOrigin))); if (v7_UserDefinedDataOrigin) {set_attribute_value(6, (*v7_UserDefinedDataOrigin)); }set_attribute_value(7, (v8_Unit));set_attribute_value(8, cast_vector(v9_Values));; return *this; } // Function implementations for IfcIrregularTimeSeriesValue std::string Ifc4x3_add1::IfcIrregularTimeSeriesValue::TimeStamp() const { std::string v = get_attribute_value(0); return v; } void Ifc4x3_add1::IfcIrregularTimeSeriesValue::setTimeStamp(const std::string& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } -std::vector< ::Ifc4x3_add1::IfcValue > Ifc4x3_add1::IfcIrregularTimeSeriesValue::ListValues() const { std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3_add1::IfcValue>(es); } -void Ifc4x3_add1::IfcIrregularTimeSeriesValue::setListValues(const std::vector< ::Ifc4x3_add1::IfcValue >& v) { set_attribute_value(1, cast_vector(v));if constexpr (false)unset_attribute_value(1); } +std::vector< ::Ifc4x3_add1::IfcValue > Ifc4x3_add1::IfcIrregularTimeSeriesValue::ListValues() const { std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3_add1::IfcValue>(es); } +void Ifc4x3_add1::IfcIrregularTimeSeriesValue::setListValues(const std::vector< ::Ifc4x3_add1::IfcValue >& v) { set_attribute_value(1, cast_vector(v));if constexpr (false)unset_attribute_value(1); } const ifcopenshell::entity& Ifc4x3_add1::IfcIrregularTimeSeriesValue::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[562]); } -Ifc4x3_add1::IfcIrregularTimeSeriesValue Ifc4x3_add1::IfcIrregularTimeSeriesValue::initialize(std::string v1_TimeStamp, std::vector< ::Ifc4x3_add1::IfcValue > v2_ListValues) { set_attribute_value(0, (v1_TimeStamp));set_attribute_value(1, cast_vector(v2_ListValues));; return *this; } +Ifc4x3_add1::IfcIrregularTimeSeriesValue Ifc4x3_add1::IfcIrregularTimeSeriesValue::initialize(std::string v1_TimeStamp, std::vector< ::Ifc4x3_add1::IfcValue > v2_ListValues) { set_attribute_value(0, (v1_TimeStamp));set_attribute_value(1, cast_vector(v2_ListValues));; return *this; } // Function implementations for IfcJunctionBox std::optional< ::Ifc4x3_add1::IfcJunctionBoxTypeEnum::Value > Ifc4x3_add1::IfcJunctionBox::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_add1::IfcJunctionBoxTypeEnum::FromString(get_attribute_value(8)); } @@ -11409,7 +11409,7 @@ void Ifc4x3_add1::IfcJunctionBoxType::setPredefinedType(const ::Ifc4x3_add1::Ifc const ifcopenshell::entity& Ifc4x3_add1::IfcJunctionBoxType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[566]); } -Ifc4x3_add1::IfcJunctionBoxType Ifc4x3_add1::IfcJunctionBoxType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcJunctionBoxTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcJunctionBoxTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_add1::IfcJunctionBoxType Ifc4x3_add1::IfcJunctionBoxType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcJunctionBoxTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcJunctionBoxTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcKerb std::optional< ::Ifc4x3_add1::IfcKerbTypeEnum::Value > Ifc4x3_add1::IfcKerb::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_add1::IfcKerbTypeEnum::FromString(get_attribute_value(8)); } @@ -11425,7 +11425,7 @@ void Ifc4x3_add1::IfcKerbType::setPredefinedType(const ::Ifc4x3_add1::IfcKerbTyp const ifcopenshell::entity& Ifc4x3_add1::IfcKerbType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[569]); } -Ifc4x3_add1::IfcKerbType Ifc4x3_add1::IfcKerbType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcKerbTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcKerbTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_add1::IfcKerbType Ifc4x3_add1::IfcKerbType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcKerbTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcKerbTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcLShapeProfileDef double Ifc4x3_add1::IfcLShapeProfileDef::Depth() const { double v = get_attribute_value(3); return v; } @@ -11451,7 +11451,7 @@ void Ifc4x3_add1::IfcLaborResource::setPredefinedType(const std::optional< ::Ifc const ifcopenshell::entity& Ifc4x3_add1::IfcLaborResource::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[574]); } -Ifc4x3_add1::IfcLaborResource Ifc4x3_add1::IfcLaborResource::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, std::optional< std::string > v6_Identification, std::optional< std::string > v7_LongDescription, ::Ifc4x3_add1::IfcResourceTime v8_Usage, std::optional< std::vector< ::Ifc4x3_add1::IfcAppliedValue > > v9_BaseCosts, ::Ifc4x3_add1::IfcPhysicalQuantity v10_BaseQuantity, std::optional< ::Ifc4x3_add1::IfcLaborResourceTypeEnum::Value > v11_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); } if (v6_Identification) {set_attribute_value(5, (*v6_Identification)); } if (v7_LongDescription) {set_attribute_value(6, (*v7_LongDescription)); }set_attribute_value(7, (v8_Usage)); if (v9_BaseCosts) {set_attribute_value(8, cast_vector(*v9_BaseCosts)); }set_attribute_value(9, (v10_BaseQuantity)); if (v11_PredefinedType) {set_attribute_value(10, (enumeration_reference(&::Ifc4x3_add1::IfcLaborResourceTypeEnum::Class(),(size_t)*v11_PredefinedType))); }; return *this; } +Ifc4x3_add1::IfcLaborResource Ifc4x3_add1::IfcLaborResource::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, std::optional< std::string > v6_Identification, std::optional< std::string > v7_LongDescription, ::Ifc4x3_add1::IfcResourceTime v8_Usage, std::optional< std::vector< ::Ifc4x3_add1::IfcAppliedValue > > v9_BaseCosts, ::Ifc4x3_add1::IfcPhysicalQuantity v10_BaseQuantity, std::optional< ::Ifc4x3_add1::IfcLaborResourceTypeEnum::Value > v11_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); } if (v6_Identification) {set_attribute_value(5, (*v6_Identification)); } if (v7_LongDescription) {set_attribute_value(6, (*v7_LongDescription)); }set_attribute_value(7, (v8_Usage)); if (v9_BaseCosts) {set_attribute_value(8, cast_vector(*v9_BaseCosts)); }set_attribute_value(9, (v10_BaseQuantity)); if (v11_PredefinedType) {set_attribute_value(10, (enumeration_reference(&::Ifc4x3_add1::IfcLaborResourceTypeEnum::Class(),(size_t)*v11_PredefinedType))); }; return *this; } // Function implementations for IfcLaborResourceType ::Ifc4x3_add1::IfcLaborResourceTypeEnum::Value Ifc4x3_add1::IfcLaborResourceType::PredefinedType() const { return ::Ifc4x3_add1::IfcLaborResourceTypeEnum::FromString(get_attribute_value(11)); } @@ -11459,10 +11459,10 @@ void Ifc4x3_add1::IfcLaborResourceType::setPredefinedType(const ::Ifc4x3_add1::I const ifcopenshell::entity& Ifc4x3_add1::IfcLaborResourceType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[575]); } -Ifc4x3_add1::IfcLaborResourceType Ifc4x3_add1::IfcLaborResourceType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::string > v7_Identification, std::optional< std::string > v8_LongDescription, std::optional< std::string > v9_ResourceType, std::optional< std::vector< ::Ifc4x3_add1::IfcAppliedValue > > v10_BaseCosts, ::Ifc4x3_add1::IfcPhysicalQuantity v11_BaseQuantity, ::Ifc4x3_add1::IfcLaborResourceTypeEnum::Value v12_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_Identification) {set_attribute_value(6, (*v7_Identification)); } if (v8_LongDescription) {set_attribute_value(7, (*v8_LongDescription)); } if (v9_ResourceType) {set_attribute_value(8, (*v9_ResourceType)); } if (v10_BaseCosts) {set_attribute_value(9, cast_vector(*v10_BaseCosts)); }set_attribute_value(10, (v11_BaseQuantity));set_attribute_value(11, (enumeration_reference(&::Ifc4x3_add1::IfcLaborResourceTypeEnum::Class(),(size_t)v12_PredefinedType)));; return *this; } +Ifc4x3_add1::IfcLaborResourceType Ifc4x3_add1::IfcLaborResourceType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::string > v7_Identification, std::optional< std::string > v8_LongDescription, std::optional< std::string > v9_ResourceType, std::optional< std::vector< ::Ifc4x3_add1::IfcAppliedValue > > v10_BaseCosts, ::Ifc4x3_add1::IfcPhysicalQuantity v11_BaseQuantity, ::Ifc4x3_add1::IfcLaborResourceTypeEnum::Value v12_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_Identification) {set_attribute_value(6, (*v7_Identification)); } if (v8_LongDescription) {set_attribute_value(7, (*v8_LongDescription)); } if (v9_ResourceType) {set_attribute_value(8, (*v9_ResourceType)); } if (v10_BaseCosts) {set_attribute_value(9, cast_vector(*v10_BaseCosts)); }set_attribute_value(10, (v11_BaseQuantity));set_attribute_value(11, (enumeration_reference(&::Ifc4x3_add1::IfcLaborResourceTypeEnum::Class(),(size_t)v12_PredefinedType)));; return *this; } // Function implementations for IfcLagTime -::Ifc4x3_add1::IfcTimeOrRatioSelect Ifc4x3_add1::IfcLagTime::LagValue() const { return ((express::Base)(get_attribute_value(3))).as<::Ifc4x3_add1::IfcTimeOrRatioSelect>(); } +::Ifc4x3_add1::IfcTimeOrRatioSelect Ifc4x3_add1::IfcLagTime::LagValue() const { return ((express::base)(get_attribute_value(3))).as<::Ifc4x3_add1::IfcTimeOrRatioSelect>(); } void Ifc4x3_add1::IfcLagTime::setLagValue(const ::Ifc4x3_add1::IfcTimeOrRatioSelect& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } ::Ifc4x3_add1::IfcTaskDurationEnum::Value Ifc4x3_add1::IfcLagTime::DurationType() const { return ::Ifc4x3_add1::IfcTaskDurationEnum::FromString(get_attribute_value(4)); } void Ifc4x3_add1::IfcLagTime::setDurationType(const ::Ifc4x3_add1::IfcTaskDurationEnum::Value& v) { set_attribute_value(4, enumeration_reference(&::Ifc4x3_add1::IfcTaskDurationEnum::Class(), (size_t) v));if constexpr (false)unset_attribute_value(4); } @@ -11485,14 +11485,14 @@ void Ifc4x3_add1::IfcLampType::setPredefinedType(const ::Ifc4x3_add1::IfcLampTyp const ifcopenshell::entity& Ifc4x3_add1::IfcLampType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[579]); } -Ifc4x3_add1::IfcLampType Ifc4x3_add1::IfcLampType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcLampTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcLampTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_add1::IfcLampType Ifc4x3_add1::IfcLampType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcLampTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcLampTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcLibraryInformation std::string Ifc4x3_add1::IfcLibraryInformation::Name() const { std::string v = get_attribute_value(0); return v; } void Ifc4x3_add1::IfcLibraryInformation::setName(const std::string& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } std::optional< std::string > Ifc4x3_add1::IfcLibraryInformation::Version() const { if(get_attribute_value(1).isNull()) { return std::nullopt; } std::string v = get_attribute_value(1); return v; } void Ifc4x3_add1::IfcLibraryInformation::setVersion(const std::optional< std::string >& v) { if (v) {set_attribute_value(1, *v);} else {unset_attribute_value(1);} } -::Ifc4x3_add1::IfcActorSelect Ifc4x3_add1::IfcLibraryInformation::Publisher() const { if(get_attribute_value(2).isNull()) { return ::Ifc4x3_add1::IfcActorSelect{}; } return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3_add1::IfcActorSelect>(); } +::Ifc4x3_add1::IfcActorSelect Ifc4x3_add1::IfcLibraryInformation::Publisher() const { if(get_attribute_value(2).isNull()) { return ::Ifc4x3_add1::IfcActorSelect{}; } return ((express::base)(get_attribute_value(2))).as<::Ifc4x3_add1::IfcActorSelect>(); } void Ifc4x3_add1::IfcLibraryInformation::setPublisher(const ::Ifc4x3_add1::IfcActorSelect& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } std::optional< std::string > Ifc4x3_add1::IfcLibraryInformation::VersionDate() const { if(get_attribute_value(3).isNull()) { return std::nullopt; } std::string v = get_attribute_value(3); return v; } void Ifc4x3_add1::IfcLibraryInformation::setVersionDate(const std::optional< std::string >& v) { if (v) {set_attribute_value(3, *v);} else {unset_attribute_value(3);} } @@ -11512,7 +11512,7 @@ std::optional< std::string > Ifc4x3_add1::IfcLibraryReference::Description() con void Ifc4x3_add1::IfcLibraryReference::setDescription(const std::optional< std::string >& v) { if (v) {set_attribute_value(3, *v);} else {unset_attribute_value(3);} } std::optional< std::string > Ifc4x3_add1::IfcLibraryReference::Language() const { if(get_attribute_value(4).isNull()) { return std::nullopt; } std::string v = get_attribute_value(4); return v; } void Ifc4x3_add1::IfcLibraryReference::setLanguage(const std::optional< std::string >& v) { if (v) {set_attribute_value(4, *v);} else {unset_attribute_value(4);} } -::Ifc4x3_add1::IfcLibraryInformation Ifc4x3_add1::IfcLibraryReference::ReferencedLibrary() const { if(get_attribute_value(5).isNull()) { return ::Ifc4x3_add1::IfcLibraryInformation{}; } return ((express::Base)(get_attribute_value(5))).as<::Ifc4x3_add1::IfcLibraryInformation>(); } +::Ifc4x3_add1::IfcLibraryInformation Ifc4x3_add1::IfcLibraryReference::ReferencedLibrary() const { if(get_attribute_value(5).isNull()) { return ::Ifc4x3_add1::IfcLibraryInformation{}; } return ((express::base)(get_attribute_value(5))).as<::Ifc4x3_add1::IfcLibraryInformation>(); } void Ifc4x3_add1::IfcLibraryReference::setReferencedLibrary(const ::Ifc4x3_add1::IfcLibraryInformation& v) { set_attribute_value(5, v);if constexpr (false)unset_attribute_value(5); } std::vector<::Ifc4x3_add1::IfcRelAssociatesLibrary> Ifc4x3_add1::IfcLibraryReference::LibraryRefForObjects() const { return cast_vector(file()->get_inverse(data()->id(), IFC4X3_ADD1_types[913], 5)); } @@ -11546,22 +11546,22 @@ void Ifc4x3_add1::IfcLightFixtureType::setPredefinedType(const ::Ifc4x3_add1::If const ifcopenshell::entity& Ifc4x3_add1::IfcLightFixtureType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[593]); } -Ifc4x3_add1::IfcLightFixtureType Ifc4x3_add1::IfcLightFixtureType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcLightFixtureTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcLightFixtureTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_add1::IfcLightFixtureType Ifc4x3_add1::IfcLightFixtureType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcLightFixtureTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcLightFixtureTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcLightIntensityDistribution ::Ifc4x3_add1::IfcLightDistributionCurveEnum::Value Ifc4x3_add1::IfcLightIntensityDistribution::LightDistributionCurve() const { return ::Ifc4x3_add1::IfcLightDistributionCurveEnum::FromString(get_attribute_value(0)); } void Ifc4x3_add1::IfcLightIntensityDistribution::setLightDistributionCurve(const ::Ifc4x3_add1::IfcLightDistributionCurveEnum::Value& v) { set_attribute_value(0, enumeration_reference(&::Ifc4x3_add1::IfcLightDistributionCurveEnum::Class(), (size_t) v));if constexpr (false)unset_attribute_value(0); } -std::vector< ::Ifc4x3_add1::IfcLightDistributionData > Ifc4x3_add1::IfcLightIntensityDistribution::DistributionData() const { std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3_add1::IfcLightDistributionData>(es); } -void Ifc4x3_add1::IfcLightIntensityDistribution::setDistributionData(const std::vector< ::Ifc4x3_add1::IfcLightDistributionData >& v) { set_attribute_value(1, cast_vector(v));if constexpr (false)unset_attribute_value(1); } +std::vector< ::Ifc4x3_add1::IfcLightDistributionData > Ifc4x3_add1::IfcLightIntensityDistribution::DistributionData() const { std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3_add1::IfcLightDistributionData>(es); } +void Ifc4x3_add1::IfcLightIntensityDistribution::setDistributionData(const std::vector< ::Ifc4x3_add1::IfcLightDistributionData >& v) { set_attribute_value(1, cast_vector(v));if constexpr (false)unset_attribute_value(1); } const ifcopenshell::entity& Ifc4x3_add1::IfcLightIntensityDistribution::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[595]); } -Ifc4x3_add1::IfcLightIntensityDistribution Ifc4x3_add1::IfcLightIntensityDistribution::initialize(::Ifc4x3_add1::IfcLightDistributionCurveEnum::Value v1_LightDistributionCurve, std::vector< ::Ifc4x3_add1::IfcLightDistributionData > v2_DistributionData) { set_attribute_value(0, (enumeration_reference(&::Ifc4x3_add1::IfcLightDistributionCurveEnum::Class(),(size_t)v1_LightDistributionCurve)));set_attribute_value(1, cast_vector(v2_DistributionData));; return *this; } +Ifc4x3_add1::IfcLightIntensityDistribution Ifc4x3_add1::IfcLightIntensityDistribution::initialize(::Ifc4x3_add1::IfcLightDistributionCurveEnum::Value v1_LightDistributionCurve, std::vector< ::Ifc4x3_add1::IfcLightDistributionData > v2_DistributionData) { set_attribute_value(0, (enumeration_reference(&::Ifc4x3_add1::IfcLightDistributionCurveEnum::Class(),(size_t)v1_LightDistributionCurve)));set_attribute_value(1, cast_vector(v2_DistributionData));; return *this; } // Function implementations for IfcLightSource std::optional< std::string > Ifc4x3_add1::IfcLightSource::Name() const { if(get_attribute_value(0).isNull()) { return std::nullopt; } std::string v = get_attribute_value(0); return v; } void Ifc4x3_add1::IfcLightSource::setName(const std::optional< std::string >& v) { if (v) {set_attribute_value(0, *v);} else {unset_attribute_value(0);} } -::Ifc4x3_add1::IfcColourRgb Ifc4x3_add1::IfcLightSource::LightColour() const { return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3_add1::IfcColourRgb>(); } +::Ifc4x3_add1::IfcColourRgb Ifc4x3_add1::IfcLightSource::LightColour() const { return ((express::base)(get_attribute_value(1))).as<::Ifc4x3_add1::IfcColourRgb>(); } void Ifc4x3_add1::IfcLightSource::setLightColour(const ::Ifc4x3_add1::IfcColourRgb& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } std::optional< double > Ifc4x3_add1::IfcLightSource::AmbientIntensity() const { if(get_attribute_value(2).isNull()) { return std::nullopt; } double v = get_attribute_value(2); return v; } void Ifc4x3_add1::IfcLightSource::setAmbientIntensity(const std::optional< double >& v) { if (v) {set_attribute_value(2, *v);} else {unset_attribute_value(2);} } @@ -11579,7 +11579,7 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcLightSourceAmbient::Class() { return Ifc4x3_add1::IfcLightSourceAmbient Ifc4x3_add1::IfcLightSourceAmbient::initialize(std::optional< std::string > v1_Name, ::Ifc4x3_add1::IfcColourRgb v2_LightColour, std::optional< double > v3_AmbientIntensity, std::optional< double > v4_Intensity) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); }set_attribute_value(1, (v2_LightColour)); if (v3_AmbientIntensity) {set_attribute_value(2, (*v3_AmbientIntensity)); } if (v4_Intensity) {set_attribute_value(3, (*v4_Intensity)); }; return *this; } // Function implementations for IfcLightSourceDirectional -::Ifc4x3_add1::IfcDirection Ifc4x3_add1::IfcLightSourceDirectional::Orientation() const { return ((express::Base)(get_attribute_value(4))).as<::Ifc4x3_add1::IfcDirection>(); } +::Ifc4x3_add1::IfcDirection Ifc4x3_add1::IfcLightSourceDirectional::Orientation() const { return ((express::base)(get_attribute_value(4))).as<::Ifc4x3_add1::IfcDirection>(); } void Ifc4x3_add1::IfcLightSourceDirectional::setOrientation(const ::Ifc4x3_add1::IfcDirection& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } @@ -11587,9 +11587,9 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcLightSourceDirectional::Class() { re Ifc4x3_add1::IfcLightSourceDirectional Ifc4x3_add1::IfcLightSourceDirectional::initialize(std::optional< std::string > v1_Name, ::Ifc4x3_add1::IfcColourRgb v2_LightColour, std::optional< double > v3_AmbientIntensity, std::optional< double > v4_Intensity, ::Ifc4x3_add1::IfcDirection v5_Orientation) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); }set_attribute_value(1, (v2_LightColour)); if (v3_AmbientIntensity) {set_attribute_value(2, (*v3_AmbientIntensity)); } if (v4_Intensity) {set_attribute_value(3, (*v4_Intensity)); }set_attribute_value(4, (v5_Orientation));; return *this; } // Function implementations for IfcLightSourceGoniometric -::Ifc4x3_add1::IfcAxis2Placement3D Ifc4x3_add1::IfcLightSourceGoniometric::Position() const { return ((express::Base)(get_attribute_value(4))).as<::Ifc4x3_add1::IfcAxis2Placement3D>(); } +::Ifc4x3_add1::IfcAxis2Placement3D Ifc4x3_add1::IfcLightSourceGoniometric::Position() const { return ((express::base)(get_attribute_value(4))).as<::Ifc4x3_add1::IfcAxis2Placement3D>(); } void Ifc4x3_add1::IfcLightSourceGoniometric::setPosition(const ::Ifc4x3_add1::IfcAxis2Placement3D& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } -::Ifc4x3_add1::IfcColourRgb Ifc4x3_add1::IfcLightSourceGoniometric::ColourAppearance() const { if(get_attribute_value(5).isNull()) { return ::Ifc4x3_add1::IfcColourRgb{}; } return ((express::Base)(get_attribute_value(5))).as<::Ifc4x3_add1::IfcColourRgb>(); } +::Ifc4x3_add1::IfcColourRgb Ifc4x3_add1::IfcLightSourceGoniometric::ColourAppearance() const { if(get_attribute_value(5).isNull()) { return ::Ifc4x3_add1::IfcColourRgb{}; } return ((express::base)(get_attribute_value(5))).as<::Ifc4x3_add1::IfcColourRgb>(); } void Ifc4x3_add1::IfcLightSourceGoniometric::setColourAppearance(const ::Ifc4x3_add1::IfcColourRgb& v) { set_attribute_value(5, v);if constexpr (false)unset_attribute_value(5); } double Ifc4x3_add1::IfcLightSourceGoniometric::ColourTemperature() const { double v = get_attribute_value(6); return v; } void Ifc4x3_add1::IfcLightSourceGoniometric::setColourTemperature(const double& v) { set_attribute_value(6, v);if constexpr (false)unset_attribute_value(6); } @@ -11597,7 +11597,7 @@ double Ifc4x3_add1::IfcLightSourceGoniometric::LuminousFlux() const { double v void Ifc4x3_add1::IfcLightSourceGoniometric::setLuminousFlux(const double& v) { set_attribute_value(7, v);if constexpr (false)unset_attribute_value(7); } ::Ifc4x3_add1::IfcLightEmissionSourceEnum::Value Ifc4x3_add1::IfcLightSourceGoniometric::LightEmissionSource() const { return ::Ifc4x3_add1::IfcLightEmissionSourceEnum::FromString(get_attribute_value(8)); } void Ifc4x3_add1::IfcLightSourceGoniometric::setLightEmissionSource(const ::Ifc4x3_add1::IfcLightEmissionSourceEnum::Value& v) { set_attribute_value(8, enumeration_reference(&::Ifc4x3_add1::IfcLightEmissionSourceEnum::Class(), (size_t) v));if constexpr (false)unset_attribute_value(8); } -::Ifc4x3_add1::IfcLightDistributionDataSourceSelect Ifc4x3_add1::IfcLightSourceGoniometric::LightDistributionDataSource() const { return ((express::Base)(get_attribute_value(9))).as<::Ifc4x3_add1::IfcLightDistributionDataSourceSelect>(); } +::Ifc4x3_add1::IfcLightDistributionDataSourceSelect Ifc4x3_add1::IfcLightSourceGoniometric::LightDistributionDataSource() const { return ((express::base)(get_attribute_value(9))).as<::Ifc4x3_add1::IfcLightDistributionDataSourceSelect>(); } void Ifc4x3_add1::IfcLightSourceGoniometric::setLightDistributionDataSource(const ::Ifc4x3_add1::IfcLightDistributionDataSourceSelect& v) { set_attribute_value(9, v);if constexpr (false)unset_attribute_value(9); } @@ -11605,7 +11605,7 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcLightSourceGoniometric::Class() { re Ifc4x3_add1::IfcLightSourceGoniometric Ifc4x3_add1::IfcLightSourceGoniometric::initialize(std::optional< std::string > v1_Name, ::Ifc4x3_add1::IfcColourRgb v2_LightColour, std::optional< double > v3_AmbientIntensity, std::optional< double > v4_Intensity, ::Ifc4x3_add1::IfcAxis2Placement3D v5_Position, ::Ifc4x3_add1::IfcColourRgb v6_ColourAppearance, double v7_ColourTemperature, double v8_LuminousFlux, ::Ifc4x3_add1::IfcLightEmissionSourceEnum::Value v9_LightEmissionSource, ::Ifc4x3_add1::IfcLightDistributionDataSourceSelect v10_LightDistributionDataSource) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); }set_attribute_value(1, (v2_LightColour)); if (v3_AmbientIntensity) {set_attribute_value(2, (*v3_AmbientIntensity)); } if (v4_Intensity) {set_attribute_value(3, (*v4_Intensity)); }set_attribute_value(4, (v5_Position));set_attribute_value(5, (v6_ColourAppearance));set_attribute_value(6, (v7_ColourTemperature));set_attribute_value(7, (v8_LuminousFlux));set_attribute_value(8, (enumeration_reference(&::Ifc4x3_add1::IfcLightEmissionSourceEnum::Class(),(size_t)v9_LightEmissionSource)));set_attribute_value(9, (v10_LightDistributionDataSource));; return *this; } // Function implementations for IfcLightSourcePositional -::Ifc4x3_add1::IfcCartesianPoint Ifc4x3_add1::IfcLightSourcePositional::Position() const { return ((express::Base)(get_attribute_value(4))).as<::Ifc4x3_add1::IfcCartesianPoint>(); } +::Ifc4x3_add1::IfcCartesianPoint Ifc4x3_add1::IfcLightSourcePositional::Position() const { return ((express::base)(get_attribute_value(4))).as<::Ifc4x3_add1::IfcCartesianPoint>(); } void Ifc4x3_add1::IfcLightSourcePositional::setPosition(const ::Ifc4x3_add1::IfcCartesianPoint& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } double Ifc4x3_add1::IfcLightSourcePositional::Radius() const { double v = get_attribute_value(5); return v; } void Ifc4x3_add1::IfcLightSourcePositional::setRadius(const double& v) { set_attribute_value(5, v);if constexpr (false)unset_attribute_value(5); } @@ -11621,7 +11621,7 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcLightSourcePositional::Class() { ret Ifc4x3_add1::IfcLightSourcePositional Ifc4x3_add1::IfcLightSourcePositional::initialize(std::optional< std::string > v1_Name, ::Ifc4x3_add1::IfcColourRgb v2_LightColour, std::optional< double > v3_AmbientIntensity, std::optional< double > v4_Intensity, ::Ifc4x3_add1::IfcCartesianPoint v5_Position, double v6_Radius, double v7_ConstantAttenuation, double v8_DistanceAttenuation, double v9_QuadricAttenuation) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); }set_attribute_value(1, (v2_LightColour)); if (v3_AmbientIntensity) {set_attribute_value(2, (*v3_AmbientIntensity)); } if (v4_Intensity) {set_attribute_value(3, (*v4_Intensity)); }set_attribute_value(4, (v5_Position));set_attribute_value(5, (v6_Radius));set_attribute_value(6, (v7_ConstantAttenuation));set_attribute_value(7, (v8_DistanceAttenuation));set_attribute_value(8, (v9_QuadricAttenuation));; return *this; } // Function implementations for IfcLightSourceSpot -::Ifc4x3_add1::IfcDirection Ifc4x3_add1::IfcLightSourceSpot::Orientation() const { return ((express::Base)(get_attribute_value(9))).as<::Ifc4x3_add1::IfcDirection>(); } +::Ifc4x3_add1::IfcDirection Ifc4x3_add1::IfcLightSourceSpot::Orientation() const { return ((express::base)(get_attribute_value(9))).as<::Ifc4x3_add1::IfcDirection>(); } void Ifc4x3_add1::IfcLightSourceSpot::setOrientation(const ::Ifc4x3_add1::IfcDirection& v) { set_attribute_value(9, v);if constexpr (false)unset_attribute_value(9); } std::optional< double > Ifc4x3_add1::IfcLightSourceSpot::ConcentrationExponent() const { if(get_attribute_value(10).isNull()) { return std::nullopt; } double v = get_attribute_value(10); return v; } void Ifc4x3_add1::IfcLightSourceSpot::setConcentrationExponent(const std::optional< double >& v) { if (v) {set_attribute_value(10, *v);} else {unset_attribute_value(10);} } @@ -11635,9 +11635,9 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcLightSourceSpot::Class() { return *( Ifc4x3_add1::IfcLightSourceSpot Ifc4x3_add1::IfcLightSourceSpot::initialize(std::optional< std::string > v1_Name, ::Ifc4x3_add1::IfcColourRgb v2_LightColour, std::optional< double > v3_AmbientIntensity, std::optional< double > v4_Intensity, ::Ifc4x3_add1::IfcCartesianPoint v5_Position, double v6_Radius, double v7_ConstantAttenuation, double v8_DistanceAttenuation, double v9_QuadricAttenuation, ::Ifc4x3_add1::IfcDirection v10_Orientation, std::optional< double > v11_ConcentrationExponent, double v12_SpreadAngle, double v13_BeamWidthAngle) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); }set_attribute_value(1, (v2_LightColour)); if (v3_AmbientIntensity) {set_attribute_value(2, (*v3_AmbientIntensity)); } if (v4_Intensity) {set_attribute_value(3, (*v4_Intensity)); }set_attribute_value(4, (v5_Position));set_attribute_value(5, (v6_Radius));set_attribute_value(6, (v7_ConstantAttenuation));set_attribute_value(7, (v8_DistanceAttenuation));set_attribute_value(8, (v9_QuadricAttenuation));set_attribute_value(9, (v10_Orientation)); if (v11_ConcentrationExponent) {set_attribute_value(10, (*v11_ConcentrationExponent)); }set_attribute_value(11, (v12_SpreadAngle));set_attribute_value(12, (v13_BeamWidthAngle));; return *this; } // Function implementations for IfcLine -::Ifc4x3_add1::IfcCartesianPoint Ifc4x3_add1::IfcLine::Pnt() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcCartesianPoint>(); } +::Ifc4x3_add1::IfcCartesianPoint Ifc4x3_add1::IfcLine::Pnt() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcCartesianPoint>(); } void Ifc4x3_add1::IfcLine::setPnt(const ::Ifc4x3_add1::IfcCartesianPoint& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } -::Ifc4x3_add1::IfcVector Ifc4x3_add1::IfcLine::Dir() const { return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3_add1::IfcVector>(); } +::Ifc4x3_add1::IfcVector Ifc4x3_add1::IfcLine::Dir() const { return ((express::base)(get_attribute_value(1))).as<::Ifc4x3_add1::IfcVector>(); } void Ifc4x3_add1::IfcLine::setDir(const ::Ifc4x3_add1::IfcVector& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } @@ -11651,9 +11651,9 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcLinearElement::Class() { return *((i Ifc4x3_add1::IfcLinearElement Ifc4x3_add1::IfcLinearElement::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, ::Ifc4x3_add1::IfcObjectPlacement v6_ObjectPlacement, ::Ifc4x3_add1::IfcProductRepresentation v7_Representation) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); }set_attribute_value(5, (v6_ObjectPlacement));set_attribute_value(6, (v7_Representation));; return *this; } // Function implementations for IfcLinearPlacement -::Ifc4x3_add1::IfcAxis2PlacementLinear Ifc4x3_add1::IfcLinearPlacement::RelativePlacement() const { return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3_add1::IfcAxis2PlacementLinear>(); } +::Ifc4x3_add1::IfcAxis2PlacementLinear Ifc4x3_add1::IfcLinearPlacement::RelativePlacement() const { return ((express::base)(get_attribute_value(1))).as<::Ifc4x3_add1::IfcAxis2PlacementLinear>(); } void Ifc4x3_add1::IfcLinearPlacement::setRelativePlacement(const ::Ifc4x3_add1::IfcAxis2PlacementLinear& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } -::Ifc4x3_add1::IfcAxis2Placement3D Ifc4x3_add1::IfcLinearPlacement::CartesianPosition() const { if(get_attribute_value(2).isNull()) { return ::Ifc4x3_add1::IfcAxis2Placement3D{}; } return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3_add1::IfcAxis2Placement3D>(); } +::Ifc4x3_add1::IfcAxis2Placement3D Ifc4x3_add1::IfcLinearPlacement::CartesianPosition() const { if(get_attribute_value(2).isNull()) { return ::Ifc4x3_add1::IfcAxis2Placement3D{}; } return ((express::base)(get_attribute_value(2))).as<::Ifc4x3_add1::IfcAxis2Placement3D>(); } void Ifc4x3_add1::IfcLinearPlacement::setCartesianPosition(const ::Ifc4x3_add1::IfcAxis2Placement3D& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } @@ -11680,10 +11680,10 @@ void Ifc4x3_add1::IfcLiquidTerminalType::setPredefinedType(const ::Ifc4x3_add1:: const ifcopenshell::entity& Ifc4x3_add1::IfcLiquidTerminalType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[612]); } -Ifc4x3_add1::IfcLiquidTerminalType Ifc4x3_add1::IfcLiquidTerminalType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcLiquidTerminalTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcLiquidTerminalTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_add1::IfcLiquidTerminalType Ifc4x3_add1::IfcLiquidTerminalType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcLiquidTerminalTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcLiquidTerminalTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcLocalPlacement -::Ifc4x3_add1::IfcAxis2Placement Ifc4x3_add1::IfcLocalPlacement::RelativePlacement() const { return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3_add1::IfcAxis2Placement>(); } +::Ifc4x3_add1::IfcAxis2Placement Ifc4x3_add1::IfcLocalPlacement::RelativePlacement() const { return ((express::base)(get_attribute_value(1))).as<::Ifc4x3_add1::IfcAxis2Placement>(); } void Ifc4x3_add1::IfcLocalPlacement::setRelativePlacement(const ::Ifc4x3_add1::IfcAxis2Placement& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } @@ -11697,7 +11697,7 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcLoop::Class() { return *((ifcopenshe Ifc4x3_add1::IfcLoop Ifc4x3_add1::IfcLoop::initialize() { ; return *this; } // Function implementations for IfcManifoldSolidBrep -::Ifc4x3_add1::IfcClosedShell Ifc4x3_add1::IfcManifoldSolidBrep::Outer() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcClosedShell>(); } +::Ifc4x3_add1::IfcClosedShell Ifc4x3_add1::IfcManifoldSolidBrep::Outer() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcClosedShell>(); } void Ifc4x3_add1::IfcManifoldSolidBrep::setOuter(const ::Ifc4x3_add1::IfcClosedShell& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } @@ -11735,9 +11735,9 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcMapConversionScaled::Class() { retur Ifc4x3_add1::IfcMapConversionScaled Ifc4x3_add1::IfcMapConversionScaled::initialize(::Ifc4x3_add1::IfcCoordinateReferenceSystemSelect v1_SourceCRS, ::Ifc4x3_add1::IfcCoordinateReferenceSystem v2_TargetCRS, double v3_Eastings, double v4_Northings, double v5_OrthogonalHeight, std::optional< double > v6_XAxisAbscissa, std::optional< double > v7_XAxisOrdinate, std::optional< double > v8_Scale, double v9_ScaleX, double v10_ScaleY, double v11_ScaleZ) { set_attribute_value(0, (v1_SourceCRS));set_attribute_value(1, (v2_TargetCRS));set_attribute_value(2, (v3_Eastings));set_attribute_value(3, (v4_Northings));set_attribute_value(4, (v5_OrthogonalHeight)); if (v6_XAxisAbscissa) {set_attribute_value(5, (*v6_XAxisAbscissa)); } if (v7_XAxisOrdinate) {set_attribute_value(6, (*v7_XAxisOrdinate)); } if (v8_Scale) {set_attribute_value(7, (*v8_Scale)); }set_attribute_value(8, (v9_ScaleX));set_attribute_value(9, (v10_ScaleY));set_attribute_value(10, (v11_ScaleZ));; return *this; } // Function implementations for IfcMappedItem -::Ifc4x3_add1::IfcRepresentationMap Ifc4x3_add1::IfcMappedItem::MappingSource() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcRepresentationMap>(); } +::Ifc4x3_add1::IfcRepresentationMap Ifc4x3_add1::IfcMappedItem::MappingSource() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcRepresentationMap>(); } void Ifc4x3_add1::IfcMappedItem::setMappingSource(const ::Ifc4x3_add1::IfcRepresentationMap& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } -::Ifc4x3_add1::IfcCartesianTransformationOperator Ifc4x3_add1::IfcMappedItem::MappingTarget() const { return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3_add1::IfcCartesianTransformationOperator>(); } +::Ifc4x3_add1::IfcCartesianTransformationOperator Ifc4x3_add1::IfcMappedItem::MappingTarget() const { return ((express::base)(get_attribute_value(1))).as<::Ifc4x3_add1::IfcCartesianTransformationOperator>(); } void Ifc4x3_add1::IfcMappedItem::setMappingTarget(const ::Ifc4x3_add1::IfcCartesianTransformationOperator& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } @@ -11776,21 +11776,21 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcMaterial::Class() { return *((ifcope Ifc4x3_add1::IfcMaterial Ifc4x3_add1::IfcMaterial::initialize(std::string v1_Name, std::optional< std::string > v2_Description, std::optional< std::string > v3_Category) { set_attribute_value(0, (v1_Name)); if (v2_Description) {set_attribute_value(1, (*v2_Description)); } if (v3_Category) {set_attribute_value(2, (*v3_Category)); }; return *this; } // Function implementations for IfcMaterialClassificationRelationship -std::vector< ::Ifc4x3_add1::IfcClassificationSelect > Ifc4x3_add1::IfcMaterialClassificationRelationship::MaterialClassifications() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3_add1::IfcClassificationSelect>(es); } -void Ifc4x3_add1::IfcMaterialClassificationRelationship::setMaterialClassifications(const std::vector< ::Ifc4x3_add1::IfcClassificationSelect >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } -::Ifc4x3_add1::IfcMaterial Ifc4x3_add1::IfcMaterialClassificationRelationship::ClassifiedMaterial() const { return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3_add1::IfcMaterial>(); } +std::vector< ::Ifc4x3_add1::IfcClassificationSelect > Ifc4x3_add1::IfcMaterialClassificationRelationship::MaterialClassifications() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3_add1::IfcClassificationSelect>(es); } +void Ifc4x3_add1::IfcMaterialClassificationRelationship::setMaterialClassifications(const std::vector< ::Ifc4x3_add1::IfcClassificationSelect >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } +::Ifc4x3_add1::IfcMaterial Ifc4x3_add1::IfcMaterialClassificationRelationship::ClassifiedMaterial() const { return ((express::base)(get_attribute_value(1))).as<::Ifc4x3_add1::IfcMaterial>(); } void Ifc4x3_add1::IfcMaterialClassificationRelationship::setClassifiedMaterial(const ::Ifc4x3_add1::IfcMaterial& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } const ifcopenshell::entity& Ifc4x3_add1::IfcMaterialClassificationRelationship::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[638]); } -Ifc4x3_add1::IfcMaterialClassificationRelationship Ifc4x3_add1::IfcMaterialClassificationRelationship::initialize(std::vector< ::Ifc4x3_add1::IfcClassificationSelect > v1_MaterialClassifications, ::Ifc4x3_add1::IfcMaterial v2_ClassifiedMaterial) { set_attribute_value(0, cast_vector(v1_MaterialClassifications));set_attribute_value(1, (v2_ClassifiedMaterial));; return *this; } +Ifc4x3_add1::IfcMaterialClassificationRelationship Ifc4x3_add1::IfcMaterialClassificationRelationship::initialize(std::vector< ::Ifc4x3_add1::IfcClassificationSelect > v1_MaterialClassifications, ::Ifc4x3_add1::IfcMaterial v2_ClassifiedMaterial) { set_attribute_value(0, cast_vector(v1_MaterialClassifications));set_attribute_value(1, (v2_ClassifiedMaterial));; return *this; } // Function implementations for IfcMaterialConstituent std::optional< std::string > Ifc4x3_add1::IfcMaterialConstituent::Name() const { if(get_attribute_value(0).isNull()) { return std::nullopt; } std::string v = get_attribute_value(0); return v; } void Ifc4x3_add1::IfcMaterialConstituent::setName(const std::optional< std::string >& v) { if (v) {set_attribute_value(0, *v);} else {unset_attribute_value(0);} } std::optional< std::string > Ifc4x3_add1::IfcMaterialConstituent::Description() const { if(get_attribute_value(1).isNull()) { return std::nullopt; } std::string v = get_attribute_value(1); return v; } void Ifc4x3_add1::IfcMaterialConstituent::setDescription(const std::optional< std::string >& v) { if (v) {set_attribute_value(1, *v);} else {unset_attribute_value(1);} } -::Ifc4x3_add1::IfcMaterial Ifc4x3_add1::IfcMaterialConstituent::Material() const { return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3_add1::IfcMaterial>(); } +::Ifc4x3_add1::IfcMaterial Ifc4x3_add1::IfcMaterialConstituent::Material() const { return ((express::base)(get_attribute_value(2))).as<::Ifc4x3_add1::IfcMaterial>(); } void Ifc4x3_add1::IfcMaterialConstituent::setMaterial(const ::Ifc4x3_add1::IfcMaterial& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } std::optional< double > Ifc4x3_add1::IfcMaterialConstituent::Fraction() const { if(get_attribute_value(3).isNull()) { return std::nullopt; } double v = get_attribute_value(3); return v; } void Ifc4x3_add1::IfcMaterialConstituent::setFraction(const std::optional< double >& v) { if (v) {set_attribute_value(3, *v);} else {unset_attribute_value(3);} } @@ -11807,12 +11807,12 @@ std::optional< std::string > Ifc4x3_add1::IfcMaterialConstituentSet::Name() cons void Ifc4x3_add1::IfcMaterialConstituentSet::setName(const std::optional< std::string >& v) { if (v) {set_attribute_value(0, *v);} else {unset_attribute_value(0);} } std::optional< std::string > Ifc4x3_add1::IfcMaterialConstituentSet::Description() const { if(get_attribute_value(1).isNull()) { return std::nullopt; } std::string v = get_attribute_value(1); return v; } void Ifc4x3_add1::IfcMaterialConstituentSet::setDescription(const std::optional< std::string >& v) { if (v) {set_attribute_value(1, *v);} else {unset_attribute_value(1);} } -std::optional< std::vector< ::Ifc4x3_add1::IfcMaterialConstituent > > Ifc4x3_add1::IfcMaterialConstituentSet::MaterialConstituents() const { if(get_attribute_value(2).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(2); return cast_vector<::Ifc4x3_add1::IfcMaterialConstituent>(es); } -void Ifc4x3_add1::IfcMaterialConstituentSet::setMaterialConstituents(const std::optional< std::vector< ::Ifc4x3_add1::IfcMaterialConstituent > >& v) { if (v) {set_attribute_value(2, cast_vector(*v));} else {unset_attribute_value(2);} } +std::optional< std::vector< ::Ifc4x3_add1::IfcMaterialConstituent > > Ifc4x3_add1::IfcMaterialConstituentSet::MaterialConstituents() const { if(get_attribute_value(2).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(2); return cast_vector<::Ifc4x3_add1::IfcMaterialConstituent>(es); } +void Ifc4x3_add1::IfcMaterialConstituentSet::setMaterialConstituents(const std::optional< std::vector< ::Ifc4x3_add1::IfcMaterialConstituent > >& v) { if (v) {set_attribute_value(2, cast_vector(*v));} else {unset_attribute_value(2);} } const ifcopenshell::entity& Ifc4x3_add1::IfcMaterialConstituentSet::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[640]); } -Ifc4x3_add1::IfcMaterialConstituentSet Ifc4x3_add1::IfcMaterialConstituentSet::initialize(std::optional< std::string > v1_Name, std::optional< std::string > v2_Description, std::optional< std::vector< ::Ifc4x3_add1::IfcMaterialConstituent > > v3_MaterialConstituents) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); } if (v2_Description) {set_attribute_value(1, (*v2_Description)); } if (v3_MaterialConstituents) {set_attribute_value(2, cast_vector(*v3_MaterialConstituents)); }; return *this; } +Ifc4x3_add1::IfcMaterialConstituentSet Ifc4x3_add1::IfcMaterialConstituentSet::initialize(std::optional< std::string > v1_Name, std::optional< std::string > v2_Description, std::optional< std::vector< ::Ifc4x3_add1::IfcMaterialConstituent > > v3_MaterialConstituents) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); } if (v2_Description) {set_attribute_value(1, (*v2_Description)); } if (v3_MaterialConstituents) {set_attribute_value(2, cast_vector(*v3_MaterialConstituents)); }; return *this; } // Function implementations for IfcMaterialDefinition @@ -11824,15 +11824,15 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcMaterialDefinition::Class() { return Ifc4x3_add1::IfcMaterialDefinition Ifc4x3_add1::IfcMaterialDefinition::initialize() { ; return *this; } // Function implementations for IfcMaterialDefinitionRepresentation -::Ifc4x3_add1::IfcMaterial Ifc4x3_add1::IfcMaterialDefinitionRepresentation::RepresentedMaterial() const { return ((express::Base)(get_attribute_value(3))).as<::Ifc4x3_add1::IfcMaterial>(); } +::Ifc4x3_add1::IfcMaterial Ifc4x3_add1::IfcMaterialDefinitionRepresentation::RepresentedMaterial() const { return ((express::base)(get_attribute_value(3))).as<::Ifc4x3_add1::IfcMaterial>(); } void Ifc4x3_add1::IfcMaterialDefinitionRepresentation::setRepresentedMaterial(const ::Ifc4x3_add1::IfcMaterial& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } const ifcopenshell::entity& Ifc4x3_add1::IfcMaterialDefinitionRepresentation::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[642]); } -Ifc4x3_add1::IfcMaterialDefinitionRepresentation Ifc4x3_add1::IfcMaterialDefinitionRepresentation::initialize(std::optional< std::string > v1_Name, std::optional< std::string > v2_Description, std::vector< ::Ifc4x3_add1::IfcRepresentation > v3_Representations, ::Ifc4x3_add1::IfcMaterial v4_RepresentedMaterial) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); } if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, cast_vector(v3_Representations));set_attribute_value(3, (v4_RepresentedMaterial));; return *this; } +Ifc4x3_add1::IfcMaterialDefinitionRepresentation Ifc4x3_add1::IfcMaterialDefinitionRepresentation::initialize(std::optional< std::string > v1_Name, std::optional< std::string > v2_Description, std::vector< ::Ifc4x3_add1::IfcRepresentation > v3_Representations, ::Ifc4x3_add1::IfcMaterial v4_RepresentedMaterial) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); } if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, cast_vector(v3_Representations));set_attribute_value(3, (v4_RepresentedMaterial));; return *this; } // Function implementations for IfcMaterialLayer -::Ifc4x3_add1::IfcMaterial Ifc4x3_add1::IfcMaterialLayer::Material() const { if(get_attribute_value(0).isNull()) { return ::Ifc4x3_add1::IfcMaterial{}; } return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcMaterial>(); } +::Ifc4x3_add1::IfcMaterial Ifc4x3_add1::IfcMaterialLayer::Material() const { if(get_attribute_value(0).isNull()) { return ::Ifc4x3_add1::IfcMaterial{}; } return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcMaterial>(); } void Ifc4x3_add1::IfcMaterialLayer::setMaterial(const ::Ifc4x3_add1::IfcMaterial& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } double Ifc4x3_add1::IfcMaterialLayer::LayerThickness() const { double v = get_attribute_value(1); return v; } void Ifc4x3_add1::IfcMaterialLayer::setLayerThickness(const double& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } @@ -11853,8 +11853,8 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcMaterialLayer::Class() { return *((i Ifc4x3_add1::IfcMaterialLayer Ifc4x3_add1::IfcMaterialLayer::initialize(::Ifc4x3_add1::IfcMaterial v1_Material, double v2_LayerThickness, std::optional< boost::logic::tribool > v3_IsVentilated, std::optional< std::string > v4_Name, std::optional< std::string > v5_Description, std::optional< std::string > v6_Category, std::optional< int64_t > v7_Priority) { set_attribute_value(0, (v1_Material));set_attribute_value(1, (v2_LayerThickness)); if (v3_IsVentilated) {set_attribute_value(2, (*v3_IsVentilated)); } if (v4_Name) {set_attribute_value(3, (*v4_Name)); } if (v5_Description) {set_attribute_value(4, (*v5_Description)); } if (v6_Category) {set_attribute_value(5, (*v6_Category)); } if (v7_Priority) {set_attribute_value(6, (*v7_Priority)); }; return *this; } // Function implementations for IfcMaterialLayerSet -std::vector< ::Ifc4x3_add1::IfcMaterialLayer > Ifc4x3_add1::IfcMaterialLayerSet::MaterialLayers() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3_add1::IfcMaterialLayer>(es); } -void Ifc4x3_add1::IfcMaterialLayerSet::setMaterialLayers(const std::vector< ::Ifc4x3_add1::IfcMaterialLayer >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } +std::vector< ::Ifc4x3_add1::IfcMaterialLayer > Ifc4x3_add1::IfcMaterialLayerSet::MaterialLayers() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3_add1::IfcMaterialLayer>(es); } +void Ifc4x3_add1::IfcMaterialLayerSet::setMaterialLayers(const std::vector< ::Ifc4x3_add1::IfcMaterialLayer >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } std::optional< std::string > Ifc4x3_add1::IfcMaterialLayerSet::LayerSetName() const { if(get_attribute_value(1).isNull()) { return std::nullopt; } std::string v = get_attribute_value(1); return v; } void Ifc4x3_add1::IfcMaterialLayerSet::setLayerSetName(const std::optional< std::string >& v) { if (v) {set_attribute_value(1, *v);} else {unset_attribute_value(1);} } std::optional< std::string > Ifc4x3_add1::IfcMaterialLayerSet::Description() const { if(get_attribute_value(2).isNull()) { return std::nullopt; } std::string v = get_attribute_value(2); return v; } @@ -11862,10 +11862,10 @@ void Ifc4x3_add1::IfcMaterialLayerSet::setDescription(const std::optional< std:: const ifcopenshell::entity& Ifc4x3_add1::IfcMaterialLayerSet::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[644]); } -Ifc4x3_add1::IfcMaterialLayerSet Ifc4x3_add1::IfcMaterialLayerSet::initialize(std::vector< ::Ifc4x3_add1::IfcMaterialLayer > v1_MaterialLayers, std::optional< std::string > v2_LayerSetName, std::optional< std::string > v3_Description) { set_attribute_value(0, cast_vector(v1_MaterialLayers)); if (v2_LayerSetName) {set_attribute_value(1, (*v2_LayerSetName)); } if (v3_Description) {set_attribute_value(2, (*v3_Description)); }; return *this; } +Ifc4x3_add1::IfcMaterialLayerSet Ifc4x3_add1::IfcMaterialLayerSet::initialize(std::vector< ::Ifc4x3_add1::IfcMaterialLayer > v1_MaterialLayers, std::optional< std::string > v2_LayerSetName, std::optional< std::string > v3_Description) { set_attribute_value(0, cast_vector(v1_MaterialLayers)); if (v2_LayerSetName) {set_attribute_value(1, (*v2_LayerSetName)); } if (v3_Description) {set_attribute_value(2, (*v3_Description)); }; return *this; } // Function implementations for IfcMaterialLayerSetUsage -::Ifc4x3_add1::IfcMaterialLayerSet Ifc4x3_add1::IfcMaterialLayerSetUsage::ForLayerSet() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcMaterialLayerSet>(); } +::Ifc4x3_add1::IfcMaterialLayerSet Ifc4x3_add1::IfcMaterialLayerSetUsage::ForLayerSet() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcMaterialLayerSet>(); } void Ifc4x3_add1::IfcMaterialLayerSetUsage::setForLayerSet(const ::Ifc4x3_add1::IfcMaterialLayerSet& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } ::Ifc4x3_add1::IfcLayerSetDirectionEnum::Value Ifc4x3_add1::IfcMaterialLayerSetUsage::LayerSetDirection() const { return ::Ifc4x3_add1::IfcLayerSetDirectionEnum::FromString(get_attribute_value(1)); } void Ifc4x3_add1::IfcMaterialLayerSetUsage::setLayerSetDirection(const ::Ifc4x3_add1::IfcLayerSetDirectionEnum::Value& v) { set_attribute_value(1, enumeration_reference(&::Ifc4x3_add1::IfcLayerSetDirectionEnum::Class(), (size_t) v));if constexpr (false)unset_attribute_value(1); } @@ -11891,21 +11891,21 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcMaterialLayerWithOffsets::Class() { Ifc4x3_add1::IfcMaterialLayerWithOffsets Ifc4x3_add1::IfcMaterialLayerWithOffsets::initialize(::Ifc4x3_add1::IfcMaterial v1_Material, double v2_LayerThickness, std::optional< boost::logic::tribool > v3_IsVentilated, std::optional< std::string > v4_Name, std::optional< std::string > v5_Description, std::optional< std::string > v6_Category, std::optional< int64_t > v7_Priority, ::Ifc4x3_add1::IfcLayerSetDirectionEnum::Value v8_OffsetDirection, std::vector< double > /*[1:2]*/ v9_OffsetValues) { set_attribute_value(0, (v1_Material));set_attribute_value(1, (v2_LayerThickness)); if (v3_IsVentilated) {set_attribute_value(2, (*v3_IsVentilated)); } if (v4_Name) {set_attribute_value(3, (*v4_Name)); } if (v5_Description) {set_attribute_value(4, (*v5_Description)); } if (v6_Category) {set_attribute_value(5, (*v6_Category)); } if (v7_Priority) {set_attribute_value(6, (*v7_Priority)); }set_attribute_value(7, (enumeration_reference(&::Ifc4x3_add1::IfcLayerSetDirectionEnum::Class(),(size_t)v8_OffsetDirection)));set_attribute_value(8, (v9_OffsetValues));; return *this; } // Function implementations for IfcMaterialList -std::vector< ::Ifc4x3_add1::IfcMaterial > Ifc4x3_add1::IfcMaterialList::Materials() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3_add1::IfcMaterial>(es); } -void Ifc4x3_add1::IfcMaterialList::setMaterials(const std::vector< ::Ifc4x3_add1::IfcMaterial >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } +std::vector< ::Ifc4x3_add1::IfcMaterial > Ifc4x3_add1::IfcMaterialList::Materials() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3_add1::IfcMaterial>(es); } +void Ifc4x3_add1::IfcMaterialList::setMaterials(const std::vector< ::Ifc4x3_add1::IfcMaterial >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } const ifcopenshell::entity& Ifc4x3_add1::IfcMaterialList::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[647]); } -Ifc4x3_add1::IfcMaterialList Ifc4x3_add1::IfcMaterialList::initialize(std::vector< ::Ifc4x3_add1::IfcMaterial > v1_Materials) { set_attribute_value(0, cast_vector(v1_Materials));; return *this; } +Ifc4x3_add1::IfcMaterialList Ifc4x3_add1::IfcMaterialList::initialize(std::vector< ::Ifc4x3_add1::IfcMaterial > v1_Materials) { set_attribute_value(0, cast_vector(v1_Materials));; return *this; } // Function implementations for IfcMaterialProfile std::optional< std::string > Ifc4x3_add1::IfcMaterialProfile::Name() const { if(get_attribute_value(0).isNull()) { return std::nullopt; } std::string v = get_attribute_value(0); return v; } void Ifc4x3_add1::IfcMaterialProfile::setName(const std::optional< std::string >& v) { if (v) {set_attribute_value(0, *v);} else {unset_attribute_value(0);} } std::optional< std::string > Ifc4x3_add1::IfcMaterialProfile::Description() const { if(get_attribute_value(1).isNull()) { return std::nullopt; } std::string v = get_attribute_value(1); return v; } void Ifc4x3_add1::IfcMaterialProfile::setDescription(const std::optional< std::string >& v) { if (v) {set_attribute_value(1, *v);} else {unset_attribute_value(1);} } -::Ifc4x3_add1::IfcMaterial Ifc4x3_add1::IfcMaterialProfile::Material() const { if(get_attribute_value(2).isNull()) { return ::Ifc4x3_add1::IfcMaterial{}; } return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3_add1::IfcMaterial>(); } +::Ifc4x3_add1::IfcMaterial Ifc4x3_add1::IfcMaterialProfile::Material() const { if(get_attribute_value(2).isNull()) { return ::Ifc4x3_add1::IfcMaterial{}; } return ((express::base)(get_attribute_value(2))).as<::Ifc4x3_add1::IfcMaterial>(); } void Ifc4x3_add1::IfcMaterialProfile::setMaterial(const ::Ifc4x3_add1::IfcMaterial& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } -::Ifc4x3_add1::IfcProfileDef Ifc4x3_add1::IfcMaterialProfile::Profile() const { return ((express::Base)(get_attribute_value(3))).as<::Ifc4x3_add1::IfcProfileDef>(); } +::Ifc4x3_add1::IfcProfileDef Ifc4x3_add1::IfcMaterialProfile::Profile() const { return ((express::base)(get_attribute_value(3))).as<::Ifc4x3_add1::IfcProfileDef>(); } void Ifc4x3_add1::IfcMaterialProfile::setProfile(const ::Ifc4x3_add1::IfcProfileDef& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } std::optional< int64_t > Ifc4x3_add1::IfcMaterialProfile::Priority() const { if(get_attribute_value(4).isNull()) { return std::nullopt; } int64_t v = get_attribute_value(4); return v; } void Ifc4x3_add1::IfcMaterialProfile::setPriority(const std::optional< int64_t >& v) { if (v) {set_attribute_value(4, *v);} else {unset_attribute_value(4);} } @@ -11922,17 +11922,17 @@ std::optional< std::string > Ifc4x3_add1::IfcMaterialProfileSet::Name() const { void Ifc4x3_add1::IfcMaterialProfileSet::setName(const std::optional< std::string >& v) { if (v) {set_attribute_value(0, *v);} else {unset_attribute_value(0);} } std::optional< std::string > Ifc4x3_add1::IfcMaterialProfileSet::Description() const { if(get_attribute_value(1).isNull()) { return std::nullopt; } std::string v = get_attribute_value(1); return v; } void Ifc4x3_add1::IfcMaterialProfileSet::setDescription(const std::optional< std::string >& v) { if (v) {set_attribute_value(1, *v);} else {unset_attribute_value(1);} } -std::vector< ::Ifc4x3_add1::IfcMaterialProfile > Ifc4x3_add1::IfcMaterialProfileSet::MaterialProfiles() const { std::vector es = get_attribute_value(2); return cast_vector<::Ifc4x3_add1::IfcMaterialProfile>(es); } -void Ifc4x3_add1::IfcMaterialProfileSet::setMaterialProfiles(const std::vector< ::Ifc4x3_add1::IfcMaterialProfile >& v) { set_attribute_value(2, cast_vector(v));if constexpr (false)unset_attribute_value(2); } -::Ifc4x3_add1::IfcCompositeProfileDef Ifc4x3_add1::IfcMaterialProfileSet::CompositeProfile() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3_add1::IfcCompositeProfileDef{}; } return ((express::Base)(get_attribute_value(3))).as<::Ifc4x3_add1::IfcCompositeProfileDef>(); } +std::vector< ::Ifc4x3_add1::IfcMaterialProfile > Ifc4x3_add1::IfcMaterialProfileSet::MaterialProfiles() const { std::vector es = get_attribute_value(2); return cast_vector<::Ifc4x3_add1::IfcMaterialProfile>(es); } +void Ifc4x3_add1::IfcMaterialProfileSet::setMaterialProfiles(const std::vector< ::Ifc4x3_add1::IfcMaterialProfile >& v) { set_attribute_value(2, cast_vector(v));if constexpr (false)unset_attribute_value(2); } +::Ifc4x3_add1::IfcCompositeProfileDef Ifc4x3_add1::IfcMaterialProfileSet::CompositeProfile() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3_add1::IfcCompositeProfileDef{}; } return ((express::base)(get_attribute_value(3))).as<::Ifc4x3_add1::IfcCompositeProfileDef>(); } void Ifc4x3_add1::IfcMaterialProfileSet::setCompositeProfile(const ::Ifc4x3_add1::IfcCompositeProfileDef& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } const ifcopenshell::entity& Ifc4x3_add1::IfcMaterialProfileSet::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[649]); } -Ifc4x3_add1::IfcMaterialProfileSet Ifc4x3_add1::IfcMaterialProfileSet::initialize(std::optional< std::string > v1_Name, std::optional< std::string > v2_Description, std::vector< ::Ifc4x3_add1::IfcMaterialProfile > v3_MaterialProfiles, ::Ifc4x3_add1::IfcCompositeProfileDef v4_CompositeProfile) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); } if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, cast_vector(v3_MaterialProfiles));set_attribute_value(3, (v4_CompositeProfile));; return *this; } +Ifc4x3_add1::IfcMaterialProfileSet Ifc4x3_add1::IfcMaterialProfileSet::initialize(std::optional< std::string > v1_Name, std::optional< std::string > v2_Description, std::vector< ::Ifc4x3_add1::IfcMaterialProfile > v3_MaterialProfiles, ::Ifc4x3_add1::IfcCompositeProfileDef v4_CompositeProfile) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); } if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, cast_vector(v3_MaterialProfiles));set_attribute_value(3, (v4_CompositeProfile));; return *this; } // Function implementations for IfcMaterialProfileSetUsage -::Ifc4x3_add1::IfcMaterialProfileSet Ifc4x3_add1::IfcMaterialProfileSetUsage::ForProfileSet() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcMaterialProfileSet>(); } +::Ifc4x3_add1::IfcMaterialProfileSet Ifc4x3_add1::IfcMaterialProfileSetUsage::ForProfileSet() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcMaterialProfileSet>(); } void Ifc4x3_add1::IfcMaterialProfileSetUsage::setForProfileSet(const ::Ifc4x3_add1::IfcMaterialProfileSet& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } std::optional< int64_t > Ifc4x3_add1::IfcMaterialProfileSetUsage::CardinalPoint() const { if(get_attribute_value(1).isNull()) { return std::nullopt; } int64_t v = get_attribute_value(1); return v; } void Ifc4x3_add1::IfcMaterialProfileSetUsage::setCardinalPoint(const std::optional< int64_t >& v) { if (v) {set_attribute_value(1, *v);} else {unset_attribute_value(1);} } @@ -11944,7 +11944,7 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcMaterialProfileSetUsage::Class() { r Ifc4x3_add1::IfcMaterialProfileSetUsage Ifc4x3_add1::IfcMaterialProfileSetUsage::initialize(::Ifc4x3_add1::IfcMaterialProfileSet v1_ForProfileSet, std::optional< int64_t > v2_CardinalPoint, std::optional< double > v3_ReferenceExtent) { set_attribute_value(0, (v1_ForProfileSet)); if (v2_CardinalPoint) {set_attribute_value(1, (*v2_CardinalPoint)); } if (v3_ReferenceExtent) {set_attribute_value(2, (*v3_ReferenceExtent)); }; return *this; } // Function implementations for IfcMaterialProfileSetUsageTapering -::Ifc4x3_add1::IfcMaterialProfileSet Ifc4x3_add1::IfcMaterialProfileSetUsageTapering::ForProfileEndSet() const { return ((express::Base)(get_attribute_value(3))).as<::Ifc4x3_add1::IfcMaterialProfileSet>(); } +::Ifc4x3_add1::IfcMaterialProfileSet Ifc4x3_add1::IfcMaterialProfileSetUsageTapering::ForProfileEndSet() const { return ((express::base)(get_attribute_value(3))).as<::Ifc4x3_add1::IfcMaterialProfileSet>(); } void Ifc4x3_add1::IfcMaterialProfileSetUsageTapering::setForProfileEndSet(const ::Ifc4x3_add1::IfcMaterialProfileSet& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } std::optional< int64_t > Ifc4x3_add1::IfcMaterialProfileSetUsageTapering::CardinalEndPoint() const { if(get_attribute_value(4).isNull()) { return std::nullopt; } int64_t v = get_attribute_value(4); return v; } void Ifc4x3_add1::IfcMaterialProfileSetUsageTapering::setCardinalEndPoint(const std::optional< int64_t >& v) { if (v) {set_attribute_value(4, *v);} else {unset_attribute_value(4);} } @@ -11962,24 +11962,24 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcMaterialProfileWithOffsets::Class() Ifc4x3_add1::IfcMaterialProfileWithOffsets Ifc4x3_add1::IfcMaterialProfileWithOffsets::initialize(std::optional< std::string > v1_Name, std::optional< std::string > v2_Description, ::Ifc4x3_add1::IfcMaterial v3_Material, ::Ifc4x3_add1::IfcProfileDef v4_Profile, std::optional< int64_t > v5_Priority, std::optional< std::string > v6_Category, std::vector< double > /*[1:2]*/ v7_OffsetValues) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); } if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, (v3_Material));set_attribute_value(3, (v4_Profile)); if (v5_Priority) {set_attribute_value(4, (*v5_Priority)); } if (v6_Category) {set_attribute_value(5, (*v6_Category)); }set_attribute_value(6, (v7_OffsetValues));; return *this; } // Function implementations for IfcMaterialProperties -::Ifc4x3_add1::IfcMaterialDefinition Ifc4x3_add1::IfcMaterialProperties::Material() const { return ((express::Base)(get_attribute_value(3))).as<::Ifc4x3_add1::IfcMaterialDefinition>(); } +::Ifc4x3_add1::IfcMaterialDefinition Ifc4x3_add1::IfcMaterialProperties::Material() const { return ((express::base)(get_attribute_value(3))).as<::Ifc4x3_add1::IfcMaterialDefinition>(); } void Ifc4x3_add1::IfcMaterialProperties::setMaterial(const ::Ifc4x3_add1::IfcMaterialDefinition& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } const ifcopenshell::entity& Ifc4x3_add1::IfcMaterialProperties::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[653]); } -Ifc4x3_add1::IfcMaterialProperties Ifc4x3_add1::IfcMaterialProperties::initialize(std::optional< std::string > v1_Name, std::optional< std::string > v2_Description, std::vector< ::Ifc4x3_add1::IfcProperty > v3_Properties, ::Ifc4x3_add1::IfcMaterialDefinition v4_Material) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); } if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, cast_vector(v3_Properties));set_attribute_value(3, (v4_Material));; return *this; } +Ifc4x3_add1::IfcMaterialProperties Ifc4x3_add1::IfcMaterialProperties::initialize(std::optional< std::string > v1_Name, std::optional< std::string > v2_Description, std::vector< ::Ifc4x3_add1::IfcProperty > v3_Properties, ::Ifc4x3_add1::IfcMaterialDefinition v4_Material) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); } if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, cast_vector(v3_Properties));set_attribute_value(3, (v4_Material));; return *this; } // Function implementations for IfcMaterialRelationship -::Ifc4x3_add1::IfcMaterial Ifc4x3_add1::IfcMaterialRelationship::RelatingMaterial() const { return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3_add1::IfcMaterial>(); } +::Ifc4x3_add1::IfcMaterial Ifc4x3_add1::IfcMaterialRelationship::RelatingMaterial() const { return ((express::base)(get_attribute_value(2))).as<::Ifc4x3_add1::IfcMaterial>(); } void Ifc4x3_add1::IfcMaterialRelationship::setRelatingMaterial(const ::Ifc4x3_add1::IfcMaterial& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } -std::vector< ::Ifc4x3_add1::IfcMaterial > Ifc4x3_add1::IfcMaterialRelationship::RelatedMaterials() const { std::vector es = get_attribute_value(3); return cast_vector<::Ifc4x3_add1::IfcMaterial>(es); } -void Ifc4x3_add1::IfcMaterialRelationship::setRelatedMaterials(const std::vector< ::Ifc4x3_add1::IfcMaterial >& v) { set_attribute_value(3, cast_vector(v));if constexpr (false)unset_attribute_value(3); } +std::vector< ::Ifc4x3_add1::IfcMaterial > Ifc4x3_add1::IfcMaterialRelationship::RelatedMaterials() const { std::vector es = get_attribute_value(3); return cast_vector<::Ifc4x3_add1::IfcMaterial>(es); } +void Ifc4x3_add1::IfcMaterialRelationship::setRelatedMaterials(const std::vector< ::Ifc4x3_add1::IfcMaterial >& v) { set_attribute_value(3, cast_vector(v));if constexpr (false)unset_attribute_value(3); } std::optional< std::string > Ifc4x3_add1::IfcMaterialRelationship::MaterialExpression() const { if(get_attribute_value(4).isNull()) { return std::nullopt; } std::string v = get_attribute_value(4); return v; } void Ifc4x3_add1::IfcMaterialRelationship::setMaterialExpression(const std::optional< std::string >& v) { if (v) {set_attribute_value(4, *v);} else {unset_attribute_value(4);} } const ifcopenshell::entity& Ifc4x3_add1::IfcMaterialRelationship::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[654]); } -Ifc4x3_add1::IfcMaterialRelationship Ifc4x3_add1::IfcMaterialRelationship::initialize(std::optional< std::string > v1_Name, std::optional< std::string > v2_Description, ::Ifc4x3_add1::IfcMaterial v3_RelatingMaterial, std::vector< ::Ifc4x3_add1::IfcMaterial > v4_RelatedMaterials, std::optional< std::string > v5_MaterialExpression) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); } if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, (v3_RelatingMaterial));set_attribute_value(3, cast_vector(v4_RelatedMaterials)); if (v5_MaterialExpression) {set_attribute_value(4, (*v5_MaterialExpression)); }; return *this; } +Ifc4x3_add1::IfcMaterialRelationship Ifc4x3_add1::IfcMaterialRelationship::initialize(std::optional< std::string > v1_Name, std::optional< std::string > v2_Description, ::Ifc4x3_add1::IfcMaterial v3_RelatingMaterial, std::vector< ::Ifc4x3_add1::IfcMaterial > v4_RelatedMaterials, std::optional< std::string > v5_MaterialExpression) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); } if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, (v3_RelatingMaterial));set_attribute_value(3, cast_vector(v4_RelatedMaterials)); if (v5_MaterialExpression) {set_attribute_value(4, (*v5_MaterialExpression)); }; return *this; } // Function implementations for IfcMaterialUsageDefinition @@ -11989,9 +11989,9 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcMaterialUsageDefinition::Class() { r Ifc4x3_add1::IfcMaterialUsageDefinition Ifc4x3_add1::IfcMaterialUsageDefinition::initialize() { ; return *this; } // Function implementations for IfcMeasureWithUnit -::Ifc4x3_add1::IfcValue Ifc4x3_add1::IfcMeasureWithUnit::ValueComponent() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcValue>(); } +::Ifc4x3_add1::IfcValue Ifc4x3_add1::IfcMeasureWithUnit::ValueComponent() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcValue>(); } void Ifc4x3_add1::IfcMeasureWithUnit::setValueComponent(const ::Ifc4x3_add1::IfcValue& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } -::Ifc4x3_add1::IfcUnit Ifc4x3_add1::IfcMeasureWithUnit::UnitComponent() const { return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3_add1::IfcUnit>(); } +::Ifc4x3_add1::IfcUnit Ifc4x3_add1::IfcMeasureWithUnit::UnitComponent() const { return ((express::base)(get_attribute_value(1))).as<::Ifc4x3_add1::IfcUnit>(); } void Ifc4x3_add1::IfcMeasureWithUnit::setUnitComponent(const ::Ifc4x3_add1::IfcUnit& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } @@ -12020,7 +12020,7 @@ void Ifc4x3_add1::IfcMechanicalFastenerType::setNominalLength(const std::optiona const ifcopenshell::entity& Ifc4x3_add1::IfcMechanicalFastenerType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[660]); } -Ifc4x3_add1::IfcMechanicalFastenerType Ifc4x3_add1::IfcMechanicalFastenerType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcMechanicalFastenerTypeEnum::Value v10_PredefinedType, std::optional< double > v11_NominalDiameter, std::optional< double > v12_NominalLength) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcMechanicalFastenerTypeEnum::Class(),(size_t)v10_PredefinedType))); if (v11_NominalDiameter) {set_attribute_value(10, (*v11_NominalDiameter)); } if (v12_NominalLength) {set_attribute_value(11, (*v12_NominalLength)); }; return *this; } +Ifc4x3_add1::IfcMechanicalFastenerType Ifc4x3_add1::IfcMechanicalFastenerType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcMechanicalFastenerTypeEnum::Value v10_PredefinedType, std::optional< double > v11_NominalDiameter, std::optional< double > v12_NominalLength) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcMechanicalFastenerTypeEnum::Class(),(size_t)v10_PredefinedType))); if (v11_NominalDiameter) {set_attribute_value(10, (*v11_NominalDiameter)); } if (v12_NominalLength) {set_attribute_value(11, (*v12_NominalLength)); }; return *this; } // Function implementations for IfcMedicalDevice std::optional< ::Ifc4x3_add1::IfcMedicalDeviceTypeEnum::Value > Ifc4x3_add1::IfcMedicalDevice::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_add1::IfcMedicalDeviceTypeEnum::FromString(get_attribute_value(8)); } @@ -12036,7 +12036,7 @@ void Ifc4x3_add1::IfcMedicalDeviceType::setPredefinedType(const ::Ifc4x3_add1::I const ifcopenshell::entity& Ifc4x3_add1::IfcMedicalDeviceType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[663]); } -Ifc4x3_add1::IfcMedicalDeviceType Ifc4x3_add1::IfcMedicalDeviceType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcMedicalDeviceTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcMedicalDeviceTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_add1::IfcMedicalDeviceType Ifc4x3_add1::IfcMedicalDeviceType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcMedicalDeviceTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcMedicalDeviceTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcMember std::optional< ::Ifc4x3_add1::IfcMemberTypeEnum::Value > Ifc4x3_add1::IfcMember::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_add1::IfcMemberTypeEnum::FromString(get_attribute_value(8)); } @@ -12052,16 +12052,16 @@ void Ifc4x3_add1::IfcMemberType::setPredefinedType(const ::Ifc4x3_add1::IfcMembe const ifcopenshell::entity& Ifc4x3_add1::IfcMemberType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[666]); } -Ifc4x3_add1::IfcMemberType Ifc4x3_add1::IfcMemberType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcMemberTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcMemberTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_add1::IfcMemberType Ifc4x3_add1::IfcMemberType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcMemberTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcMemberTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcMetric ::Ifc4x3_add1::IfcBenchmarkEnum::Value Ifc4x3_add1::IfcMetric::Benchmark() const { return ::Ifc4x3_add1::IfcBenchmarkEnum::FromString(get_attribute_value(7)); } void Ifc4x3_add1::IfcMetric::setBenchmark(const ::Ifc4x3_add1::IfcBenchmarkEnum::Value& v) { set_attribute_value(7, enumeration_reference(&::Ifc4x3_add1::IfcBenchmarkEnum::Class(), (size_t) v));if constexpr (false)unset_attribute_value(7); } std::optional< std::string > Ifc4x3_add1::IfcMetric::ValueSource() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } std::string v = get_attribute_value(8); return v; } void Ifc4x3_add1::IfcMetric::setValueSource(const std::optional< std::string >& v) { if (v) {set_attribute_value(8, *v);} else {unset_attribute_value(8);} } -::Ifc4x3_add1::IfcMetricValueSelect Ifc4x3_add1::IfcMetric::DataValue() const { if(get_attribute_value(9).isNull()) { return ::Ifc4x3_add1::IfcMetricValueSelect{}; } return ((express::Base)(get_attribute_value(9))).as<::Ifc4x3_add1::IfcMetricValueSelect>(); } +::Ifc4x3_add1::IfcMetricValueSelect Ifc4x3_add1::IfcMetric::DataValue() const { if(get_attribute_value(9).isNull()) { return ::Ifc4x3_add1::IfcMetricValueSelect{}; } return ((express::base)(get_attribute_value(9))).as<::Ifc4x3_add1::IfcMetricValueSelect>(); } void Ifc4x3_add1::IfcMetric::setDataValue(const ::Ifc4x3_add1::IfcMetricValueSelect& v) { set_attribute_value(9, v);if constexpr (false)unset_attribute_value(9); } -::Ifc4x3_add1::IfcReference Ifc4x3_add1::IfcMetric::ReferencePath() const { if(get_attribute_value(10).isNull()) { return ::Ifc4x3_add1::IfcReference{}; } return ((express::Base)(get_attribute_value(10))).as<::Ifc4x3_add1::IfcReference>(); } +::Ifc4x3_add1::IfcReference Ifc4x3_add1::IfcMetric::ReferencePath() const { if(get_attribute_value(10).isNull()) { return ::Ifc4x3_add1::IfcReference{}; } return ((express::base)(get_attribute_value(10))).as<::Ifc4x3_add1::IfcReference>(); } void Ifc4x3_add1::IfcMetric::setReferencePath(const ::Ifc4x3_add1::IfcReference& v) { set_attribute_value(10, v);if constexpr (false)unset_attribute_value(10); } @@ -12088,7 +12088,7 @@ void Ifc4x3_add1::IfcMobileTelecommunicationsApplianceType::setPredefinedType(co const ifcopenshell::entity& Ifc4x3_add1::IfcMobileTelecommunicationsApplianceType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[672]); } -Ifc4x3_add1::IfcMobileTelecommunicationsApplianceType Ifc4x3_add1::IfcMobileTelecommunicationsApplianceType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcMobileTelecommunicationsApplianceTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcMobileTelecommunicationsApplianceTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_add1::IfcMobileTelecommunicationsApplianceType Ifc4x3_add1::IfcMobileTelecommunicationsApplianceType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcMobileTelecommunicationsApplianceTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcMobileTelecommunicationsApplianceTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcMonetaryUnit std::string Ifc4x3_add1::IfcMonetaryUnit::Currency() const { std::string v = get_attribute_value(0); return v; } @@ -12112,7 +12112,7 @@ void Ifc4x3_add1::IfcMooringDeviceType::setPredefinedType(const ::Ifc4x3_add1::I const ifcopenshell::entity& Ifc4x3_add1::IfcMooringDeviceType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[688]); } -Ifc4x3_add1::IfcMooringDeviceType Ifc4x3_add1::IfcMooringDeviceType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcMooringDeviceTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcMooringDeviceTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_add1::IfcMooringDeviceType Ifc4x3_add1::IfcMooringDeviceType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcMooringDeviceTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcMooringDeviceTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcMotorConnection std::optional< ::Ifc4x3_add1::IfcMotorConnectionTypeEnum::Value > Ifc4x3_add1::IfcMotorConnection::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_add1::IfcMotorConnectionTypeEnum::FromString(get_attribute_value(8)); } @@ -12128,10 +12128,10 @@ void Ifc4x3_add1::IfcMotorConnectionType::setPredefinedType(const ::Ifc4x3_add1: const ifcopenshell::entity& Ifc4x3_add1::IfcMotorConnectionType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[691]); } -Ifc4x3_add1::IfcMotorConnectionType Ifc4x3_add1::IfcMotorConnectionType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcMotorConnectionTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcMotorConnectionTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_add1::IfcMotorConnectionType Ifc4x3_add1::IfcMotorConnectionType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcMotorConnectionTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcMotorConnectionTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcNamedUnit -::Ifc4x3_add1::IfcDimensionalExponents Ifc4x3_add1::IfcNamedUnit::Dimensions() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcDimensionalExponents>(); } +::Ifc4x3_add1::IfcDimensionalExponents Ifc4x3_add1::IfcNamedUnit::Dimensions() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcDimensionalExponents>(); } void Ifc4x3_add1::IfcNamedUnit::setDimensions(const ::Ifc4x3_add1::IfcDimensionalExponents& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } ::Ifc4x3_add1::IfcUnitEnum::Value Ifc4x3_add1::IfcNamedUnit::UnitType() const { return ::Ifc4x3_add1::IfcUnitEnum::FromString(get_attribute_value(1)); } void Ifc4x3_add1::IfcNamedUnit::setUnitType(const ::Ifc4x3_add1::IfcUnitEnum::Value& v) { set_attribute_value(1, enumeration_reference(&::Ifc4x3_add1::IfcUnitEnum::Class(), (size_t) v));if constexpr (false)unset_attribute_value(1); } @@ -12154,7 +12154,7 @@ void Ifc4x3_add1::IfcNavigationElementType::setPredefinedType(const ::Ifc4x3_add const ifcopenshell::entity& Ifc4x3_add1::IfcNavigationElementType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[695]); } -Ifc4x3_add1::IfcNavigationElementType Ifc4x3_add1::IfcNavigationElementType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcNavigationElementTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcNavigationElementTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_add1::IfcNavigationElementType Ifc4x3_add1::IfcNavigationElementType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcNavigationElementTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcNavigationElementTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcObject std::optional< std::string > Ifc4x3_add1::IfcObject::ObjectType() const { if(get_attribute_value(4).isNull()) { return std::nullopt; } std::string v = get_attribute_value(4); return v; } @@ -12182,7 +12182,7 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcObjectDefinition::Class() { return * Ifc4x3_add1::IfcObjectDefinition Ifc4x3_add1::IfcObjectDefinition::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }; return *this; } // Function implementations for IfcObjectPlacement -::Ifc4x3_add1::IfcObjectPlacement Ifc4x3_add1::IfcObjectPlacement::PlacementRelTo() const { if(get_attribute_value(0).isNull()) { return ::Ifc4x3_add1::IfcObjectPlacement{}; } return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcObjectPlacement>(); } +::Ifc4x3_add1::IfcObjectPlacement Ifc4x3_add1::IfcObjectPlacement::PlacementRelTo() const { if(get_attribute_value(0).isNull()) { return ::Ifc4x3_add1::IfcObjectPlacement{}; } return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcObjectPlacement>(); } void Ifc4x3_add1::IfcObjectPlacement::setPlacementRelTo(const ::Ifc4x3_add1::IfcObjectPlacement& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } std::vector<::Ifc4x3_add1::IfcProduct> Ifc4x3_add1::IfcObjectPlacement::PlacesObject() const { return cast_vector(file()->get_inverse(data()->id(), IFC4X3_ADD1_types[800], 5)); } @@ -12192,8 +12192,8 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcObjectPlacement::Class() { return *( Ifc4x3_add1::IfcObjectPlacement Ifc4x3_add1::IfcObjectPlacement::initialize(::Ifc4x3_add1::IfcObjectPlacement v1_PlacementRelTo) { set_attribute_value(0, (v1_PlacementRelTo));; return *this; } // Function implementations for IfcObjective -std::optional< std::vector< ::Ifc4x3_add1::IfcConstraint > > Ifc4x3_add1::IfcObjective::BenchmarkValues() const { if(get_attribute_value(7).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(7); return cast_vector<::Ifc4x3_add1::IfcConstraint>(es); } -void Ifc4x3_add1::IfcObjective::setBenchmarkValues(const std::optional< std::vector< ::Ifc4x3_add1::IfcConstraint > >& v) { if (v) {set_attribute_value(7, cast_vector(*v));} else {unset_attribute_value(7);} } +std::optional< std::vector< ::Ifc4x3_add1::IfcConstraint > > Ifc4x3_add1::IfcObjective::BenchmarkValues() const { if(get_attribute_value(7).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(7); return cast_vector<::Ifc4x3_add1::IfcConstraint>(es); } +void Ifc4x3_add1::IfcObjective::setBenchmarkValues(const std::optional< std::vector< ::Ifc4x3_add1::IfcConstraint > >& v) { if (v) {set_attribute_value(7, cast_vector(*v));} else {unset_attribute_value(7);} } std::optional< ::Ifc4x3_add1::IfcLogicalOperatorEnum::Value > Ifc4x3_add1::IfcObjective::LogicalAggregator() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_add1::IfcLogicalOperatorEnum::FromString(get_attribute_value(8)); } void Ifc4x3_add1::IfcObjective::setLogicalAggregator(const std::optional< ::Ifc4x3_add1::IfcLogicalOperatorEnum::Value >& v) { if (v) {set_attribute_value(8, enumeration_reference(&::Ifc4x3_add1::IfcLogicalOperatorEnum::Class(), (size_t) *v));} else {unset_attribute_value(8);} } ::Ifc4x3_add1::IfcObjectiveEnum::Value Ifc4x3_add1::IfcObjective::ObjectiveQualifier() const { return ::Ifc4x3_add1::IfcObjectiveEnum::FromString(get_attribute_value(9)); } @@ -12203,7 +12203,7 @@ void Ifc4x3_add1::IfcObjective::setUserDefinedQualifier(const std::optional< std const ifcopenshell::entity& Ifc4x3_add1::IfcObjective::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[702]); } -Ifc4x3_add1::IfcObjective Ifc4x3_add1::IfcObjective::initialize(std::string v1_Name, std::optional< std::string > v2_Description, ::Ifc4x3_add1::IfcConstraintEnum::Value v3_ConstraintGrade, std::optional< std::string > v4_ConstraintSource, ::Ifc4x3_add1::IfcActorSelect v5_CreatingActor, std::optional< std::string > v6_CreationTime, std::optional< std::string > v7_UserDefinedGrade, std::optional< std::vector< ::Ifc4x3_add1::IfcConstraint > > v8_BenchmarkValues, std::optional< ::Ifc4x3_add1::IfcLogicalOperatorEnum::Value > v9_LogicalAggregator, ::Ifc4x3_add1::IfcObjectiveEnum::Value v10_ObjectiveQualifier, std::optional< std::string > v11_UserDefinedQualifier) { set_attribute_value(0, (v1_Name)); if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, (enumeration_reference(&::Ifc4x3_add1::IfcConstraintEnum::Class(),(size_t)v3_ConstraintGrade))); if (v4_ConstraintSource) {set_attribute_value(3, (*v4_ConstraintSource)); }set_attribute_value(4, (v5_CreatingActor)); if (v6_CreationTime) {set_attribute_value(5, (*v6_CreationTime)); } if (v7_UserDefinedGrade) {set_attribute_value(6, (*v7_UserDefinedGrade)); } if (v8_BenchmarkValues) {set_attribute_value(7, cast_vector(*v8_BenchmarkValues)); } if (v9_LogicalAggregator) {set_attribute_value(8, (enumeration_reference(&::Ifc4x3_add1::IfcLogicalOperatorEnum::Class(),(size_t)*v9_LogicalAggregator))); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcObjectiveEnum::Class(),(size_t)v10_ObjectiveQualifier))); if (v11_UserDefinedQualifier) {set_attribute_value(10, (*v11_UserDefinedQualifier)); }; return *this; } +Ifc4x3_add1::IfcObjective Ifc4x3_add1::IfcObjective::initialize(std::string v1_Name, std::optional< std::string > v2_Description, ::Ifc4x3_add1::IfcConstraintEnum::Value v3_ConstraintGrade, std::optional< std::string > v4_ConstraintSource, ::Ifc4x3_add1::IfcActorSelect v5_CreatingActor, std::optional< std::string > v6_CreationTime, std::optional< std::string > v7_UserDefinedGrade, std::optional< std::vector< ::Ifc4x3_add1::IfcConstraint > > v8_BenchmarkValues, std::optional< ::Ifc4x3_add1::IfcLogicalOperatorEnum::Value > v9_LogicalAggregator, ::Ifc4x3_add1::IfcObjectiveEnum::Value v10_ObjectiveQualifier, std::optional< std::string > v11_UserDefinedQualifier) { set_attribute_value(0, (v1_Name)); if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, (enumeration_reference(&::Ifc4x3_add1::IfcConstraintEnum::Class(),(size_t)v3_ConstraintGrade))); if (v4_ConstraintSource) {set_attribute_value(3, (*v4_ConstraintSource)); }set_attribute_value(4, (v5_CreatingActor)); if (v6_CreationTime) {set_attribute_value(5, (*v6_CreationTime)); } if (v7_UserDefinedGrade) {set_attribute_value(6, (*v7_UserDefinedGrade)); } if (v8_BenchmarkValues) {set_attribute_value(7, cast_vector(*v8_BenchmarkValues)); } if (v9_LogicalAggregator) {set_attribute_value(8, (enumeration_reference(&::Ifc4x3_add1::IfcLogicalOperatorEnum::Class(),(size_t)*v9_LogicalAggregator))); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcObjectiveEnum::Class(),(size_t)v10_ObjectiveQualifier))); if (v11_UserDefinedQualifier) {set_attribute_value(10, (*v11_UserDefinedQualifier)); }; return *this; } // Function implementations for IfcOccupant std::optional< ::Ifc4x3_add1::IfcOccupantTypeEnum::Value > Ifc4x3_add1::IfcOccupant::PredefinedType() const { if(get_attribute_value(6).isNull()) { return std::nullopt; } return ::Ifc4x3_add1::IfcOccupantTypeEnum::FromString(get_attribute_value(6)); } @@ -12214,7 +12214,7 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcOccupant::Class() { return *((ifcope Ifc4x3_add1::IfcOccupant Ifc4x3_add1::IfcOccupant::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, ::Ifc4x3_add1::IfcActorSelect v6_TheActor, std::optional< ::Ifc4x3_add1::IfcOccupantTypeEnum::Value > v7_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); }set_attribute_value(5, (v6_TheActor)); if (v7_PredefinedType) {set_attribute_value(6, (enumeration_reference(&::Ifc4x3_add1::IfcOccupantTypeEnum::Class(),(size_t)*v7_PredefinedType))); }; return *this; } // Function implementations for IfcOffsetCurve -::Ifc4x3_add1::IfcCurve Ifc4x3_add1::IfcOffsetCurve::BasisCurve() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcCurve>(); } +::Ifc4x3_add1::IfcCurve Ifc4x3_add1::IfcOffsetCurve::BasisCurve() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcCurve>(); } void Ifc4x3_add1::IfcOffsetCurve::setBasisCurve(const ::Ifc4x3_add1::IfcCurve& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } @@ -12236,7 +12236,7 @@ double Ifc4x3_add1::IfcOffsetCurve3D::Distance() const { double v = get_attribu void Ifc4x3_add1::IfcOffsetCurve3D::setDistance(const double& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } boost::logic::tribool Ifc4x3_add1::IfcOffsetCurve3D::SelfIntersect() const { boost::logic::tribool v = get_attribute_value(2); return v; } void Ifc4x3_add1::IfcOffsetCurve3D::setSelfIntersect(const boost::logic::tribool& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } -::Ifc4x3_add1::IfcDirection Ifc4x3_add1::IfcOffsetCurve3D::RefDirection() const { return ((express::Base)(get_attribute_value(3))).as<::Ifc4x3_add1::IfcDirection>(); } +::Ifc4x3_add1::IfcDirection Ifc4x3_add1::IfcOffsetCurve3D::RefDirection() const { return ((express::base)(get_attribute_value(3))).as<::Ifc4x3_add1::IfcDirection>(); } void Ifc4x3_add1::IfcOffsetCurve3D::setRefDirection(const ::Ifc4x3_add1::IfcDirection& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } @@ -12244,14 +12244,14 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcOffsetCurve3D::Class() { return *((i Ifc4x3_add1::IfcOffsetCurve3D Ifc4x3_add1::IfcOffsetCurve3D::initialize(::Ifc4x3_add1::IfcCurve v1_BasisCurve, double v2_Distance, boost::logic::tribool v3_SelfIntersect, ::Ifc4x3_add1::IfcDirection v4_RefDirection) { set_attribute_value(0, (v1_BasisCurve));set_attribute_value(1, (v2_Distance));set_attribute_value(2, (v3_SelfIntersect));set_attribute_value(3, (v4_RefDirection));; return *this; } // Function implementations for IfcOffsetCurveByDistances -std::vector< ::Ifc4x3_add1::IfcPointByDistanceExpression > Ifc4x3_add1::IfcOffsetCurveByDistances::OffsetValues() const { std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3_add1::IfcPointByDistanceExpression>(es); } -void Ifc4x3_add1::IfcOffsetCurveByDistances::setOffsetValues(const std::vector< ::Ifc4x3_add1::IfcPointByDistanceExpression >& v) { set_attribute_value(1, cast_vector(v));if constexpr (false)unset_attribute_value(1); } +std::vector< ::Ifc4x3_add1::IfcPointByDistanceExpression > Ifc4x3_add1::IfcOffsetCurveByDistances::OffsetValues() const { std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3_add1::IfcPointByDistanceExpression>(es); } +void Ifc4x3_add1::IfcOffsetCurveByDistances::setOffsetValues(const std::vector< ::Ifc4x3_add1::IfcPointByDistanceExpression >& v) { set_attribute_value(1, cast_vector(v));if constexpr (false)unset_attribute_value(1); } std::optional< std::string > Ifc4x3_add1::IfcOffsetCurveByDistances::Tag() const { if(get_attribute_value(2).isNull()) { return std::nullopt; } std::string v = get_attribute_value(2); return v; } void Ifc4x3_add1::IfcOffsetCurveByDistances::setTag(const std::optional< std::string >& v) { if (v) {set_attribute_value(2, *v);} else {unset_attribute_value(2);} } const ifcopenshell::entity& Ifc4x3_add1::IfcOffsetCurveByDistances::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[711]); } -Ifc4x3_add1::IfcOffsetCurveByDistances Ifc4x3_add1::IfcOffsetCurveByDistances::initialize(::Ifc4x3_add1::IfcCurve v1_BasisCurve, std::vector< ::Ifc4x3_add1::IfcPointByDistanceExpression > v2_OffsetValues, std::optional< std::string > v3_Tag) { set_attribute_value(0, (v1_BasisCurve));set_attribute_value(1, cast_vector(v2_OffsetValues)); if (v3_Tag) {set_attribute_value(2, (*v3_Tag)); }; return *this; } +Ifc4x3_add1::IfcOffsetCurveByDistances Ifc4x3_add1::IfcOffsetCurveByDistances::initialize(::Ifc4x3_add1::IfcCurve v1_BasisCurve, std::vector< ::Ifc4x3_add1::IfcPointByDistanceExpression > v2_OffsetValues, std::optional< std::string > v3_Tag) { set_attribute_value(0, (v1_BasisCurve));set_attribute_value(1, cast_vector(v2_OffsetValues)); if (v3_Tag) {set_attribute_value(2, (*v3_Tag)); }; return *this; } // Function implementations for IfcOpenCrossProfileDef bool Ifc4x3_add1::IfcOpenCrossProfileDef::HorizontalWidths() const { bool v = get_attribute_value(2); return v; } @@ -12262,7 +12262,7 @@ std::vector< double > /*[1:?]*/ Ifc4x3_add1::IfcOpenCrossProfileDef::Slopes() co void Ifc4x3_add1::IfcOpenCrossProfileDef::setSlopes(const std::vector< double > /*[1:?]*/& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } std::optional< std::vector< std::string > /*[2:?]*/ > Ifc4x3_add1::IfcOpenCrossProfileDef::Tags() const { if(get_attribute_value(5).isNull()) { return std::nullopt; } std::vector< std::string > /*[2:?]*/ v = get_attribute_value(5); return v; } void Ifc4x3_add1::IfcOpenCrossProfileDef::setTags(const std::optional< std::vector< std::string > /*[2:?]*/ >& v) { if (v) {set_attribute_value(5, *v);} else {unset_attribute_value(5);} } -::Ifc4x3_add1::IfcCartesianPoint Ifc4x3_add1::IfcOpenCrossProfileDef::OffsetPoint() const { if(get_attribute_value(6).isNull()) { return ::Ifc4x3_add1::IfcCartesianPoint{}; } return ((express::Base)(get_attribute_value(6))).as<::Ifc4x3_add1::IfcCartesianPoint>(); } +::Ifc4x3_add1::IfcCartesianPoint Ifc4x3_add1::IfcOpenCrossProfileDef::OffsetPoint() const { if(get_attribute_value(6).isNull()) { return ::Ifc4x3_add1::IfcCartesianPoint{}; } return ((express::base)(get_attribute_value(6))).as<::Ifc4x3_add1::IfcCartesianPoint>(); } void Ifc4x3_add1::IfcOpenCrossProfileDef::setOffsetPoint(const ::Ifc4x3_add1::IfcCartesianPoint& v) { set_attribute_value(6, v);if constexpr (false)unset_attribute_value(6); } @@ -12273,7 +12273,7 @@ Ifc4x3_add1::IfcOpenCrossProfileDef Ifc4x3_add1::IfcOpenCrossProfileDef::initial const ifcopenshell::entity& Ifc4x3_add1::IfcOpenShell::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[715]); } -Ifc4x3_add1::IfcOpenShell Ifc4x3_add1::IfcOpenShell::initialize(std::vector< ::Ifc4x3_add1::IfcFace > v1_CfsFaces) { set_attribute_value(0, cast_vector(v1_CfsFaces));; return *this; } +Ifc4x3_add1::IfcOpenShell Ifc4x3_add1::IfcOpenShell::initialize(std::vector< ::Ifc4x3_add1::IfcFace > v1_CfsFaces) { set_attribute_value(0, cast_vector(v1_CfsFaces));; return *this; } // Function implementations for IfcOpeningElement std::optional< ::Ifc4x3_add1::IfcOpeningElementTypeEnum::Value > Ifc4x3_add1::IfcOpeningElement::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_add1::IfcOpeningElementTypeEnum::FromString(get_attribute_value(8)); } @@ -12291,30 +12291,30 @@ std::string Ifc4x3_add1::IfcOrganization::Name() const { std::string v = get_at void Ifc4x3_add1::IfcOrganization::setName(const std::string& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } std::optional< std::string > Ifc4x3_add1::IfcOrganization::Description() const { if(get_attribute_value(2).isNull()) { return std::nullopt; } std::string v = get_attribute_value(2); return v; } void Ifc4x3_add1::IfcOrganization::setDescription(const std::optional< std::string >& v) { if (v) {set_attribute_value(2, *v);} else {unset_attribute_value(2);} } -std::optional< std::vector< ::Ifc4x3_add1::IfcActorRole > > Ifc4x3_add1::IfcOrganization::Roles() const { if(get_attribute_value(3).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(3); return cast_vector<::Ifc4x3_add1::IfcActorRole>(es); } -void Ifc4x3_add1::IfcOrganization::setRoles(const std::optional< std::vector< ::Ifc4x3_add1::IfcActorRole > >& v) { if (v) {set_attribute_value(3, cast_vector(*v));} else {unset_attribute_value(3);} } -std::optional< std::vector< ::Ifc4x3_add1::IfcAddress > > Ifc4x3_add1::IfcOrganization::Addresses() const { if(get_attribute_value(4).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(4); return cast_vector<::Ifc4x3_add1::IfcAddress>(es); } -void Ifc4x3_add1::IfcOrganization::setAddresses(const std::optional< std::vector< ::Ifc4x3_add1::IfcAddress > >& v) { if (v) {set_attribute_value(4, cast_vector(*v));} else {unset_attribute_value(4);} } +std::optional< std::vector< ::Ifc4x3_add1::IfcActorRole > > Ifc4x3_add1::IfcOrganization::Roles() const { if(get_attribute_value(3).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(3); return cast_vector<::Ifc4x3_add1::IfcActorRole>(es); } +void Ifc4x3_add1::IfcOrganization::setRoles(const std::optional< std::vector< ::Ifc4x3_add1::IfcActorRole > >& v) { if (v) {set_attribute_value(3, cast_vector(*v));} else {unset_attribute_value(3);} } +std::optional< std::vector< ::Ifc4x3_add1::IfcAddress > > Ifc4x3_add1::IfcOrganization::Addresses() const { if(get_attribute_value(4).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(4); return cast_vector<::Ifc4x3_add1::IfcAddress>(es); } +void Ifc4x3_add1::IfcOrganization::setAddresses(const std::optional< std::vector< ::Ifc4x3_add1::IfcAddress > >& v) { if (v) {set_attribute_value(4, cast_vector(*v));} else {unset_attribute_value(4);} } std::vector<::Ifc4x3_add1::IfcOrganizationRelationship> Ifc4x3_add1::IfcOrganization::IsRelatedBy() const { return cast_vector(file()->get_inverse(data()->id(), IFC4X3_ADD1_types[717], 3)); } std::vector<::Ifc4x3_add1::IfcOrganizationRelationship> Ifc4x3_add1::IfcOrganization::Relates() const { return cast_vector(file()->get_inverse(data()->id(), IFC4X3_ADD1_types[717], 2)); } std::vector<::Ifc4x3_add1::IfcPersonAndOrganization> Ifc4x3_add1::IfcOrganization::Engages() const { return cast_vector(file()->get_inverse(data()->id(), IFC4X3_ADD1_types[738], 1)); } const ifcopenshell::entity& Ifc4x3_add1::IfcOrganization::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[716]); } -Ifc4x3_add1::IfcOrganization Ifc4x3_add1::IfcOrganization::initialize(std::optional< std::string > v1_Identification, std::string v2_Name, std::optional< std::string > v3_Description, std::optional< std::vector< ::Ifc4x3_add1::IfcActorRole > > v4_Roles, std::optional< std::vector< ::Ifc4x3_add1::IfcAddress > > v5_Addresses) { if (v1_Identification) {set_attribute_value(0, (*v1_Identification)); }set_attribute_value(1, (v2_Name)); if (v3_Description) {set_attribute_value(2, (*v3_Description)); } if (v4_Roles) {set_attribute_value(3, cast_vector(*v4_Roles)); } if (v5_Addresses) {set_attribute_value(4, cast_vector(*v5_Addresses)); }; return *this; } +Ifc4x3_add1::IfcOrganization Ifc4x3_add1::IfcOrganization::initialize(std::optional< std::string > v1_Identification, std::string v2_Name, std::optional< std::string > v3_Description, std::optional< std::vector< ::Ifc4x3_add1::IfcActorRole > > v4_Roles, std::optional< std::vector< ::Ifc4x3_add1::IfcAddress > > v5_Addresses) { if (v1_Identification) {set_attribute_value(0, (*v1_Identification)); }set_attribute_value(1, (v2_Name)); if (v3_Description) {set_attribute_value(2, (*v3_Description)); } if (v4_Roles) {set_attribute_value(3, cast_vector(*v4_Roles)); } if (v5_Addresses) {set_attribute_value(4, cast_vector(*v5_Addresses)); }; return *this; } // Function implementations for IfcOrganizationRelationship -::Ifc4x3_add1::IfcOrganization Ifc4x3_add1::IfcOrganizationRelationship::RelatingOrganization() const { return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3_add1::IfcOrganization>(); } +::Ifc4x3_add1::IfcOrganization Ifc4x3_add1::IfcOrganizationRelationship::RelatingOrganization() const { return ((express::base)(get_attribute_value(2))).as<::Ifc4x3_add1::IfcOrganization>(); } void Ifc4x3_add1::IfcOrganizationRelationship::setRelatingOrganization(const ::Ifc4x3_add1::IfcOrganization& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } -std::vector< ::Ifc4x3_add1::IfcOrganization > Ifc4x3_add1::IfcOrganizationRelationship::RelatedOrganizations() const { std::vector es = get_attribute_value(3); return cast_vector<::Ifc4x3_add1::IfcOrganization>(es); } -void Ifc4x3_add1::IfcOrganizationRelationship::setRelatedOrganizations(const std::vector< ::Ifc4x3_add1::IfcOrganization >& v) { set_attribute_value(3, cast_vector(v));if constexpr (false)unset_attribute_value(3); } +std::vector< ::Ifc4x3_add1::IfcOrganization > Ifc4x3_add1::IfcOrganizationRelationship::RelatedOrganizations() const { std::vector es = get_attribute_value(3); return cast_vector<::Ifc4x3_add1::IfcOrganization>(es); } +void Ifc4x3_add1::IfcOrganizationRelationship::setRelatedOrganizations(const std::vector< ::Ifc4x3_add1::IfcOrganization >& v) { set_attribute_value(3, cast_vector(v));if constexpr (false)unset_attribute_value(3); } const ifcopenshell::entity& Ifc4x3_add1::IfcOrganizationRelationship::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[717]); } -Ifc4x3_add1::IfcOrganizationRelationship Ifc4x3_add1::IfcOrganizationRelationship::initialize(std::optional< std::string > v1_Name, std::optional< std::string > v2_Description, ::Ifc4x3_add1::IfcOrganization v3_RelatingOrganization, std::vector< ::Ifc4x3_add1::IfcOrganization > v4_RelatedOrganizations) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); } if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, (v3_RelatingOrganization));set_attribute_value(3, cast_vector(v4_RelatedOrganizations));; return *this; } +Ifc4x3_add1::IfcOrganizationRelationship Ifc4x3_add1::IfcOrganizationRelationship::initialize(std::optional< std::string > v1_Name, std::optional< std::string > v2_Description, ::Ifc4x3_add1::IfcOrganization v3_RelatingOrganization, std::vector< ::Ifc4x3_add1::IfcOrganization > v4_RelatedOrganizations) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); } if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, (v3_RelatingOrganization));set_attribute_value(3, cast_vector(v4_RelatedOrganizations));; return *this; } // Function implementations for IfcOrientedEdge -::Ifc4x3_add1::IfcEdge Ifc4x3_add1::IfcOrientedEdge::EdgeElement() const { return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3_add1::IfcEdge>(); } +::Ifc4x3_add1::IfcEdge Ifc4x3_add1::IfcOrientedEdge::EdgeElement() const { return ((express::base)(get_attribute_value(2))).as<::Ifc4x3_add1::IfcEdge>(); } void Ifc4x3_add1::IfcOrientedEdge::setEdgeElement(const ::Ifc4x3_add1::IfcEdge& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } bool Ifc4x3_add1::IfcOrientedEdge::Orientation() const { bool v = get_attribute_value(3); return v; } void Ifc4x3_add1::IfcOrientedEdge::setOrientation(const bool& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } @@ -12327,7 +12327,7 @@ Ifc4x3_add1::IfcOrientedEdge Ifc4x3_add1::IfcOrientedEdge::initialize(::Ifc4x3_a const ifcopenshell::entity& Ifc4x3_add1::IfcOuterBoundaryCurve::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[719]); } -Ifc4x3_add1::IfcOuterBoundaryCurve Ifc4x3_add1::IfcOuterBoundaryCurve::initialize(std::vector< ::Ifc4x3_add1::IfcSegment > v1_Segments, boost::logic::tribool v2_SelfIntersect) { set_attribute_value(0, cast_vector(v1_Segments));set_attribute_value(1, (v2_SelfIntersect));; return *this; } +Ifc4x3_add1::IfcOuterBoundaryCurve Ifc4x3_add1::IfcOuterBoundaryCurve::initialize(std::vector< ::Ifc4x3_add1::IfcSegment > v1_Segments, boost::logic::tribool v2_SelfIntersect) { set_attribute_value(0, cast_vector(v1_Segments));set_attribute_value(1, (v2_SelfIntersect));; return *this; } // Function implementations for IfcOutlet std::optional< ::Ifc4x3_add1::IfcOutletTypeEnum::Value > Ifc4x3_add1::IfcOutlet::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_add1::IfcOutletTypeEnum::FromString(get_attribute_value(8)); } @@ -12343,12 +12343,12 @@ void Ifc4x3_add1::IfcOutletType::setPredefinedType(const ::Ifc4x3_add1::IfcOutle const ifcopenshell::entity& Ifc4x3_add1::IfcOutletType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[721]); } -Ifc4x3_add1::IfcOutletType Ifc4x3_add1::IfcOutletType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcOutletTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcOutletTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_add1::IfcOutletType Ifc4x3_add1::IfcOutletType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcOutletTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcOutletTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcOwnerHistory -::Ifc4x3_add1::IfcPersonAndOrganization Ifc4x3_add1::IfcOwnerHistory::OwningUser() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcPersonAndOrganization>(); } +::Ifc4x3_add1::IfcPersonAndOrganization Ifc4x3_add1::IfcOwnerHistory::OwningUser() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcPersonAndOrganization>(); } void Ifc4x3_add1::IfcOwnerHistory::setOwningUser(const ::Ifc4x3_add1::IfcPersonAndOrganization& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } -::Ifc4x3_add1::IfcApplication Ifc4x3_add1::IfcOwnerHistory::OwningApplication() const { return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3_add1::IfcApplication>(); } +::Ifc4x3_add1::IfcApplication Ifc4x3_add1::IfcOwnerHistory::OwningApplication() const { return ((express::base)(get_attribute_value(1))).as<::Ifc4x3_add1::IfcApplication>(); } void Ifc4x3_add1::IfcOwnerHistory::setOwningApplication(const ::Ifc4x3_add1::IfcApplication& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } std::optional< ::Ifc4x3_add1::IfcStateEnum::Value > Ifc4x3_add1::IfcOwnerHistory::State() const { if(get_attribute_value(2).isNull()) { return std::nullopt; } return ::Ifc4x3_add1::IfcStateEnum::FromString(get_attribute_value(2)); } void Ifc4x3_add1::IfcOwnerHistory::setState(const std::optional< ::Ifc4x3_add1::IfcStateEnum::Value >& v) { if (v) {set_attribute_value(2, enumeration_reference(&::Ifc4x3_add1::IfcStateEnum::Class(), (size_t) *v));} else {unset_attribute_value(2);} } @@ -12356,9 +12356,9 @@ std::optional< ::Ifc4x3_add1::IfcChangeActionEnum::Value > Ifc4x3_add1::IfcOwner void Ifc4x3_add1::IfcOwnerHistory::setChangeAction(const std::optional< ::Ifc4x3_add1::IfcChangeActionEnum::Value >& v) { if (v) {set_attribute_value(3, enumeration_reference(&::Ifc4x3_add1::IfcChangeActionEnum::Class(), (size_t) *v));} else {unset_attribute_value(3);} } std::optional< int64_t > Ifc4x3_add1::IfcOwnerHistory::LastModifiedDate() const { if(get_attribute_value(4).isNull()) { return std::nullopt; } int64_t v = get_attribute_value(4); return v; } void Ifc4x3_add1::IfcOwnerHistory::setLastModifiedDate(const std::optional< int64_t >& v) { if (v) {set_attribute_value(4, *v);} else {unset_attribute_value(4);} } -::Ifc4x3_add1::IfcPersonAndOrganization Ifc4x3_add1::IfcOwnerHistory::LastModifyingUser() const { if(get_attribute_value(5).isNull()) { return ::Ifc4x3_add1::IfcPersonAndOrganization{}; } return ((express::Base)(get_attribute_value(5))).as<::Ifc4x3_add1::IfcPersonAndOrganization>(); } +::Ifc4x3_add1::IfcPersonAndOrganization Ifc4x3_add1::IfcOwnerHistory::LastModifyingUser() const { if(get_attribute_value(5).isNull()) { return ::Ifc4x3_add1::IfcPersonAndOrganization{}; } return ((express::base)(get_attribute_value(5))).as<::Ifc4x3_add1::IfcPersonAndOrganization>(); } void Ifc4x3_add1::IfcOwnerHistory::setLastModifyingUser(const ::Ifc4x3_add1::IfcPersonAndOrganization& v) { set_attribute_value(5, v);if constexpr (false)unset_attribute_value(5); } -::Ifc4x3_add1::IfcApplication Ifc4x3_add1::IfcOwnerHistory::LastModifyingApplication() const { if(get_attribute_value(6).isNull()) { return ::Ifc4x3_add1::IfcApplication{}; } return ((express::Base)(get_attribute_value(6))).as<::Ifc4x3_add1::IfcApplication>(); } +::Ifc4x3_add1::IfcApplication Ifc4x3_add1::IfcOwnerHistory::LastModifyingApplication() const { if(get_attribute_value(6).isNull()) { return ::Ifc4x3_add1::IfcApplication{}; } return ((express::base)(get_attribute_value(6))).as<::Ifc4x3_add1::IfcApplication>(); } void Ifc4x3_add1::IfcOwnerHistory::setLastModifyingApplication(const ::Ifc4x3_add1::IfcApplication& v) { set_attribute_value(6, v);if constexpr (false)unset_attribute_value(6); } int64_t Ifc4x3_add1::IfcOwnerHistory::CreationDate() const { int64_t v = get_attribute_value(7); return v; } void Ifc4x3_add1::IfcOwnerHistory::setCreationDate(const int64_t& v) { set_attribute_value(7, v);if constexpr (false)unset_attribute_value(7); } @@ -12368,7 +12368,7 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcOwnerHistory::Class() { return *((if Ifc4x3_add1::IfcOwnerHistory Ifc4x3_add1::IfcOwnerHistory::initialize(::Ifc4x3_add1::IfcPersonAndOrganization v1_OwningUser, ::Ifc4x3_add1::IfcApplication v2_OwningApplication, std::optional< ::Ifc4x3_add1::IfcStateEnum::Value > v3_State, std::optional< ::Ifc4x3_add1::IfcChangeActionEnum::Value > v4_ChangeAction, std::optional< int64_t > v5_LastModifiedDate, ::Ifc4x3_add1::IfcPersonAndOrganization v6_LastModifyingUser, ::Ifc4x3_add1::IfcApplication v7_LastModifyingApplication, int64_t v8_CreationDate) { set_attribute_value(0, (v1_OwningUser));set_attribute_value(1, (v2_OwningApplication)); if (v3_State) {set_attribute_value(2, (enumeration_reference(&::Ifc4x3_add1::IfcStateEnum::Class(),(size_t)*v3_State))); } if (v4_ChangeAction) {set_attribute_value(3, (enumeration_reference(&::Ifc4x3_add1::IfcChangeActionEnum::Class(),(size_t)*v4_ChangeAction))); } if (v5_LastModifiedDate) {set_attribute_value(4, (*v5_LastModifiedDate)); }set_attribute_value(5, (v6_LastModifyingUser));set_attribute_value(6, (v7_LastModifyingApplication));set_attribute_value(7, (v8_CreationDate));; return *this; } // Function implementations for IfcParameterizedProfileDef -::Ifc4x3_add1::IfcAxis2Placement2D Ifc4x3_add1::IfcParameterizedProfileDef::Position() const { if(get_attribute_value(2).isNull()) { return ::Ifc4x3_add1::IfcAxis2Placement2D{}; } return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3_add1::IfcAxis2Placement2D>(); } +::Ifc4x3_add1::IfcAxis2Placement2D Ifc4x3_add1::IfcParameterizedProfileDef::Position() const { if(get_attribute_value(2).isNull()) { return ::Ifc4x3_add1::IfcAxis2Placement2D{}; } return ((express::base)(get_attribute_value(2))).as<::Ifc4x3_add1::IfcAxis2Placement2D>(); } void Ifc4x3_add1::IfcParameterizedProfileDef::setPosition(const ::Ifc4x3_add1::IfcAxis2Placement2D& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } @@ -12376,12 +12376,12 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcParameterizedProfileDef::Class() { r Ifc4x3_add1::IfcParameterizedProfileDef Ifc4x3_add1::IfcParameterizedProfileDef::initialize(::Ifc4x3_add1::IfcProfileTypeEnum::Value v1_ProfileType, std::optional< std::string > v2_ProfileName, ::Ifc4x3_add1::IfcAxis2Placement2D v3_Position) { set_attribute_value(0, (enumeration_reference(&::Ifc4x3_add1::IfcProfileTypeEnum::Class(),(size_t)v1_ProfileType))); if (v2_ProfileName) {set_attribute_value(1, (*v2_ProfileName)); }set_attribute_value(2, (v3_Position));; return *this; } // Function implementations for IfcPath -std::vector< ::Ifc4x3_add1::IfcOrientedEdge > Ifc4x3_add1::IfcPath::EdgeList() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3_add1::IfcOrientedEdge>(es); } -void Ifc4x3_add1::IfcPath::setEdgeList(const std::vector< ::Ifc4x3_add1::IfcOrientedEdge >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } +std::vector< ::Ifc4x3_add1::IfcOrientedEdge > Ifc4x3_add1::IfcPath::EdgeList() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3_add1::IfcOrientedEdge>(es); } +void Ifc4x3_add1::IfcPath::setEdgeList(const std::vector< ::Ifc4x3_add1::IfcOrientedEdge >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } const ifcopenshell::entity& Ifc4x3_add1::IfcPath::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[726]); } -Ifc4x3_add1::IfcPath Ifc4x3_add1::IfcPath::initialize(std::vector< ::Ifc4x3_add1::IfcOrientedEdge > v1_EdgeList) { set_attribute_value(0, cast_vector(v1_EdgeList));; return *this; } +Ifc4x3_add1::IfcPath Ifc4x3_add1::IfcPath::initialize(std::vector< ::Ifc4x3_add1::IfcOrientedEdge > v1_EdgeList) { set_attribute_value(0, cast_vector(v1_EdgeList));; return *this; } // Function implementations for IfcPavement std::optional< ::Ifc4x3_add1::IfcPavementTypeEnum::Value > Ifc4x3_add1::IfcPavement::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_add1::IfcPavementTypeEnum::FromString(get_attribute_value(8)); } @@ -12397,12 +12397,12 @@ void Ifc4x3_add1::IfcPavementType::setPredefinedType(const ::Ifc4x3_add1::IfcPav const ifcopenshell::entity& Ifc4x3_add1::IfcPavementType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[728]); } -Ifc4x3_add1::IfcPavementType Ifc4x3_add1::IfcPavementType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcPavementTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcPavementTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_add1::IfcPavementType Ifc4x3_add1::IfcPavementType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcPavementTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcPavementTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcPcurve -::Ifc4x3_add1::IfcSurface Ifc4x3_add1::IfcPcurve::BasisSurface() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcSurface>(); } +::Ifc4x3_add1::IfcSurface Ifc4x3_add1::IfcPcurve::BasisSurface() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcSurface>(); } void Ifc4x3_add1::IfcPcurve::setBasisSurface(const ::Ifc4x3_add1::IfcSurface& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } -::Ifc4x3_add1::IfcCurve Ifc4x3_add1::IfcPcurve::ReferenceCurve() const { return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3_add1::IfcCurve>(); } +::Ifc4x3_add1::IfcCurve Ifc4x3_add1::IfcPcurve::ReferenceCurve() const { return ((express::base)(get_attribute_value(1))).as<::Ifc4x3_add1::IfcCurve>(); } void Ifc4x3_add1::IfcPcurve::setReferenceCurve(const ::Ifc4x3_add1::IfcCurve& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } @@ -12428,7 +12428,7 @@ std::optional< double > Ifc4x3_add1::IfcPermeableCoveringProperties::FrameDepth( void Ifc4x3_add1::IfcPermeableCoveringProperties::setFrameDepth(const std::optional< double >& v) { if (v) {set_attribute_value(6, *v);} else {unset_attribute_value(6);} } std::optional< double > Ifc4x3_add1::IfcPermeableCoveringProperties::FrameThickness() const { if(get_attribute_value(7).isNull()) { return std::nullopt; } double v = get_attribute_value(7); return v; } void Ifc4x3_add1::IfcPermeableCoveringProperties::setFrameThickness(const std::optional< double >& v) { if (v) {set_attribute_value(7, *v);} else {unset_attribute_value(7);} } -::Ifc4x3_add1::IfcShapeAspect Ifc4x3_add1::IfcPermeableCoveringProperties::ShapeAspectStyle() const { if(get_attribute_value(8).isNull()) { return ::Ifc4x3_add1::IfcShapeAspect{}; } return ((express::Base)(get_attribute_value(8))).as<::Ifc4x3_add1::IfcShapeAspect>(); } +::Ifc4x3_add1::IfcShapeAspect Ifc4x3_add1::IfcPermeableCoveringProperties::ShapeAspectStyle() const { if(get_attribute_value(8).isNull()) { return ::Ifc4x3_add1::IfcShapeAspect{}; } return ((express::base)(get_attribute_value(8))).as<::Ifc4x3_add1::IfcShapeAspect>(); } void Ifc4x3_add1::IfcPermeableCoveringProperties::setShapeAspectStyle(const ::Ifc4x3_add1::IfcShapeAspect& v) { set_attribute_value(8, v);if constexpr (false)unset_attribute_value(8); } @@ -12460,31 +12460,31 @@ std::optional< std::vector< std::string > /*[1:?]*/ > Ifc4x3_add1::IfcPerson::Pr void Ifc4x3_add1::IfcPerson::setPrefixTitles(const std::optional< std::vector< std::string > /*[1:?]*/ >& v) { if (v) {set_attribute_value(4, *v);} else {unset_attribute_value(4);} } std::optional< std::vector< std::string > /*[1:?]*/ > Ifc4x3_add1::IfcPerson::SuffixTitles() const { if(get_attribute_value(5).isNull()) { return std::nullopt; } std::vector< std::string > /*[1:?]*/ v = get_attribute_value(5); return v; } void Ifc4x3_add1::IfcPerson::setSuffixTitles(const std::optional< std::vector< std::string > /*[1:?]*/ >& v) { if (v) {set_attribute_value(5, *v);} else {unset_attribute_value(5);} } -std::optional< std::vector< ::Ifc4x3_add1::IfcActorRole > > Ifc4x3_add1::IfcPerson::Roles() const { if(get_attribute_value(6).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(6); return cast_vector<::Ifc4x3_add1::IfcActorRole>(es); } -void Ifc4x3_add1::IfcPerson::setRoles(const std::optional< std::vector< ::Ifc4x3_add1::IfcActorRole > >& v) { if (v) {set_attribute_value(6, cast_vector(*v));} else {unset_attribute_value(6);} } -std::optional< std::vector< ::Ifc4x3_add1::IfcAddress > > Ifc4x3_add1::IfcPerson::Addresses() const { if(get_attribute_value(7).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(7); return cast_vector<::Ifc4x3_add1::IfcAddress>(es); } -void Ifc4x3_add1::IfcPerson::setAddresses(const std::optional< std::vector< ::Ifc4x3_add1::IfcAddress > >& v) { if (v) {set_attribute_value(7, cast_vector(*v));} else {unset_attribute_value(7);} } +std::optional< std::vector< ::Ifc4x3_add1::IfcActorRole > > Ifc4x3_add1::IfcPerson::Roles() const { if(get_attribute_value(6).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(6); return cast_vector<::Ifc4x3_add1::IfcActorRole>(es); } +void Ifc4x3_add1::IfcPerson::setRoles(const std::optional< std::vector< ::Ifc4x3_add1::IfcActorRole > >& v) { if (v) {set_attribute_value(6, cast_vector(*v));} else {unset_attribute_value(6);} } +std::optional< std::vector< ::Ifc4x3_add1::IfcAddress > > Ifc4x3_add1::IfcPerson::Addresses() const { if(get_attribute_value(7).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(7); return cast_vector<::Ifc4x3_add1::IfcAddress>(es); } +void Ifc4x3_add1::IfcPerson::setAddresses(const std::optional< std::vector< ::Ifc4x3_add1::IfcAddress > >& v) { if (v) {set_attribute_value(7, cast_vector(*v));} else {unset_attribute_value(7);} } std::vector<::Ifc4x3_add1::IfcPersonAndOrganization> Ifc4x3_add1::IfcPerson::EngagedIn() const { return cast_vector(file()->get_inverse(data()->id(), IFC4X3_ADD1_types[738], 0)); } const ifcopenshell::entity& Ifc4x3_add1::IfcPerson::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[737]); } -Ifc4x3_add1::IfcPerson Ifc4x3_add1::IfcPerson::initialize(std::optional< std::string > v1_Identification, std::optional< std::string > v2_FamilyName, std::optional< std::string > v3_GivenName, std::optional< std::vector< std::string > /*[1:?]*/ > v4_MiddleNames, std::optional< std::vector< std::string > /*[1:?]*/ > v5_PrefixTitles, std::optional< std::vector< std::string > /*[1:?]*/ > v6_SuffixTitles, std::optional< std::vector< ::Ifc4x3_add1::IfcActorRole > > v7_Roles, std::optional< std::vector< ::Ifc4x3_add1::IfcAddress > > v8_Addresses) { if (v1_Identification) {set_attribute_value(0, (*v1_Identification)); } if (v2_FamilyName) {set_attribute_value(1, (*v2_FamilyName)); } if (v3_GivenName) {set_attribute_value(2, (*v3_GivenName)); } if (v4_MiddleNames) {set_attribute_value(3, (*v4_MiddleNames)); } if (v5_PrefixTitles) {set_attribute_value(4, (*v5_PrefixTitles)); } if (v6_SuffixTitles) {set_attribute_value(5, (*v6_SuffixTitles)); } if (v7_Roles) {set_attribute_value(6, cast_vector(*v7_Roles)); } if (v8_Addresses) {set_attribute_value(7, cast_vector(*v8_Addresses)); }; return *this; } +Ifc4x3_add1::IfcPerson Ifc4x3_add1::IfcPerson::initialize(std::optional< std::string > v1_Identification, std::optional< std::string > v2_FamilyName, std::optional< std::string > v3_GivenName, std::optional< std::vector< std::string > /*[1:?]*/ > v4_MiddleNames, std::optional< std::vector< std::string > /*[1:?]*/ > v5_PrefixTitles, std::optional< std::vector< std::string > /*[1:?]*/ > v6_SuffixTitles, std::optional< std::vector< ::Ifc4x3_add1::IfcActorRole > > v7_Roles, std::optional< std::vector< ::Ifc4x3_add1::IfcAddress > > v8_Addresses) { if (v1_Identification) {set_attribute_value(0, (*v1_Identification)); } if (v2_FamilyName) {set_attribute_value(1, (*v2_FamilyName)); } if (v3_GivenName) {set_attribute_value(2, (*v3_GivenName)); } if (v4_MiddleNames) {set_attribute_value(3, (*v4_MiddleNames)); } if (v5_PrefixTitles) {set_attribute_value(4, (*v5_PrefixTitles)); } if (v6_SuffixTitles) {set_attribute_value(5, (*v6_SuffixTitles)); } if (v7_Roles) {set_attribute_value(6, cast_vector(*v7_Roles)); } if (v8_Addresses) {set_attribute_value(7, cast_vector(*v8_Addresses)); }; return *this; } // Function implementations for IfcPersonAndOrganization -::Ifc4x3_add1::IfcPerson Ifc4x3_add1::IfcPersonAndOrganization::ThePerson() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcPerson>(); } +::Ifc4x3_add1::IfcPerson Ifc4x3_add1::IfcPersonAndOrganization::ThePerson() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcPerson>(); } void Ifc4x3_add1::IfcPersonAndOrganization::setThePerson(const ::Ifc4x3_add1::IfcPerson& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } -::Ifc4x3_add1::IfcOrganization Ifc4x3_add1::IfcPersonAndOrganization::TheOrganization() const { return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3_add1::IfcOrganization>(); } +::Ifc4x3_add1::IfcOrganization Ifc4x3_add1::IfcPersonAndOrganization::TheOrganization() const { return ((express::base)(get_attribute_value(1))).as<::Ifc4x3_add1::IfcOrganization>(); } void Ifc4x3_add1::IfcPersonAndOrganization::setTheOrganization(const ::Ifc4x3_add1::IfcOrganization& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } -std::optional< std::vector< ::Ifc4x3_add1::IfcActorRole > > Ifc4x3_add1::IfcPersonAndOrganization::Roles() const { if(get_attribute_value(2).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(2); return cast_vector<::Ifc4x3_add1::IfcActorRole>(es); } -void Ifc4x3_add1::IfcPersonAndOrganization::setRoles(const std::optional< std::vector< ::Ifc4x3_add1::IfcActorRole > >& v) { if (v) {set_attribute_value(2, cast_vector(*v));} else {unset_attribute_value(2);} } +std::optional< std::vector< ::Ifc4x3_add1::IfcActorRole > > Ifc4x3_add1::IfcPersonAndOrganization::Roles() const { if(get_attribute_value(2).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(2); return cast_vector<::Ifc4x3_add1::IfcActorRole>(es); } +void Ifc4x3_add1::IfcPersonAndOrganization::setRoles(const std::optional< std::vector< ::Ifc4x3_add1::IfcActorRole > >& v) { if (v) {set_attribute_value(2, cast_vector(*v));} else {unset_attribute_value(2);} } const ifcopenshell::entity& Ifc4x3_add1::IfcPersonAndOrganization::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[738]); } -Ifc4x3_add1::IfcPersonAndOrganization Ifc4x3_add1::IfcPersonAndOrganization::initialize(::Ifc4x3_add1::IfcPerson v1_ThePerson, ::Ifc4x3_add1::IfcOrganization v2_TheOrganization, std::optional< std::vector< ::Ifc4x3_add1::IfcActorRole > > v3_Roles) { set_attribute_value(0, (v1_ThePerson));set_attribute_value(1, (v2_TheOrganization)); if (v3_Roles) {set_attribute_value(2, cast_vector(*v3_Roles)); }; return *this; } +Ifc4x3_add1::IfcPersonAndOrganization Ifc4x3_add1::IfcPersonAndOrganization::initialize(::Ifc4x3_add1::IfcPerson v1_ThePerson, ::Ifc4x3_add1::IfcOrganization v2_TheOrganization, std::optional< std::vector< ::Ifc4x3_add1::IfcActorRole > > v3_Roles) { set_attribute_value(0, (v1_ThePerson));set_attribute_value(1, (v2_TheOrganization)); if (v3_Roles) {set_attribute_value(2, cast_vector(*v3_Roles)); }; return *this; } // Function implementations for IfcPhysicalComplexQuantity -std::vector< ::Ifc4x3_add1::IfcPhysicalQuantity > Ifc4x3_add1::IfcPhysicalComplexQuantity::HasQuantities() const { std::vector es = get_attribute_value(2); return cast_vector<::Ifc4x3_add1::IfcPhysicalQuantity>(es); } -void Ifc4x3_add1::IfcPhysicalComplexQuantity::setHasQuantities(const std::vector< ::Ifc4x3_add1::IfcPhysicalQuantity >& v) { set_attribute_value(2, cast_vector(v));if constexpr (false)unset_attribute_value(2); } +std::vector< ::Ifc4x3_add1::IfcPhysicalQuantity > Ifc4x3_add1::IfcPhysicalComplexQuantity::HasQuantities() const { std::vector es = get_attribute_value(2); return cast_vector<::Ifc4x3_add1::IfcPhysicalQuantity>(es); } +void Ifc4x3_add1::IfcPhysicalComplexQuantity::setHasQuantities(const std::vector< ::Ifc4x3_add1::IfcPhysicalQuantity >& v) { set_attribute_value(2, cast_vector(v));if constexpr (false)unset_attribute_value(2); } std::string Ifc4x3_add1::IfcPhysicalComplexQuantity::Discrimination() const { std::string v = get_attribute_value(3); return v; } void Ifc4x3_add1::IfcPhysicalComplexQuantity::setDiscrimination(const std::string& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } std::optional< std::string > Ifc4x3_add1::IfcPhysicalComplexQuantity::Quality() const { if(get_attribute_value(4).isNull()) { return std::nullopt; } std::string v = get_attribute_value(4); return v; } @@ -12494,7 +12494,7 @@ void Ifc4x3_add1::IfcPhysicalComplexQuantity::setUsage(const std::optional< std: const ifcopenshell::entity& Ifc4x3_add1::IfcPhysicalComplexQuantity::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[740]); } -Ifc4x3_add1::IfcPhysicalComplexQuantity Ifc4x3_add1::IfcPhysicalComplexQuantity::initialize(std::string v1_Name, std::optional< std::string > v2_Description, std::vector< ::Ifc4x3_add1::IfcPhysicalQuantity > v3_HasQuantities, std::string v4_Discrimination, std::optional< std::string > v5_Quality, std::optional< std::string > v6_Usage) { set_attribute_value(0, (v1_Name)); if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, cast_vector(v3_HasQuantities));set_attribute_value(3, (v4_Discrimination)); if (v5_Quality) {set_attribute_value(4, (*v5_Quality)); } if (v6_Usage) {set_attribute_value(5, (*v6_Usage)); }; return *this; } +Ifc4x3_add1::IfcPhysicalComplexQuantity Ifc4x3_add1::IfcPhysicalComplexQuantity::initialize(std::string v1_Name, std::optional< std::string > v2_Description, std::vector< ::Ifc4x3_add1::IfcPhysicalQuantity > v3_HasQuantities, std::string v4_Discrimination, std::optional< std::string > v5_Quality, std::optional< std::string > v6_Usage) { set_attribute_value(0, (v1_Name)); if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, cast_vector(v3_HasQuantities));set_attribute_value(3, (v4_Discrimination)); if (v5_Quality) {set_attribute_value(4, (*v5_Quality)); } if (v6_Usage) {set_attribute_value(5, (*v6_Usage)); }; return *this; } // Function implementations for IfcPhysicalQuantity std::string Ifc4x3_add1::IfcPhysicalQuantity::Name() const { std::string v = get_attribute_value(0); return v; } @@ -12509,7 +12509,7 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcPhysicalQuantity::Class() { return * Ifc4x3_add1::IfcPhysicalQuantity Ifc4x3_add1::IfcPhysicalQuantity::initialize(std::string v1_Name, std::optional< std::string > v2_Description) { set_attribute_value(0, (v1_Name)); if (v2_Description) {set_attribute_value(1, (*v2_Description)); }; return *this; } // Function implementations for IfcPhysicalSimpleQuantity -::Ifc4x3_add1::IfcNamedUnit Ifc4x3_add1::IfcPhysicalSimpleQuantity::Unit() const { if(get_attribute_value(2).isNull()) { return ::Ifc4x3_add1::IfcNamedUnit{}; } return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3_add1::IfcNamedUnit>(); } +::Ifc4x3_add1::IfcNamedUnit Ifc4x3_add1::IfcPhysicalSimpleQuantity::Unit() const { if(get_attribute_value(2).isNull()) { return ::Ifc4x3_add1::IfcNamedUnit{}; } return ((express::base)(get_attribute_value(2))).as<::Ifc4x3_add1::IfcNamedUnit>(); } void Ifc4x3_add1::IfcPhysicalSimpleQuantity::setUnit(const ::Ifc4x3_add1::IfcNamedUnit& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } @@ -12532,7 +12532,7 @@ void Ifc4x3_add1::IfcPileType::setPredefinedType(const ::Ifc4x3_add1::IfcPileTyp const ifcopenshell::entity& Ifc4x3_add1::IfcPileType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[746]); } -Ifc4x3_add1::IfcPileType Ifc4x3_add1::IfcPileType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcPileTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcPileTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_add1::IfcPileType Ifc4x3_add1::IfcPileType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcPileTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcPileTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcPipeFitting std::optional< ::Ifc4x3_add1::IfcPipeFittingTypeEnum::Value > Ifc4x3_add1::IfcPipeFitting::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_add1::IfcPipeFittingTypeEnum::FromString(get_attribute_value(8)); } @@ -12548,7 +12548,7 @@ void Ifc4x3_add1::IfcPipeFittingType::setPredefinedType(const ::Ifc4x3_add1::Ifc const ifcopenshell::entity& Ifc4x3_add1::IfcPipeFittingType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[749]); } -Ifc4x3_add1::IfcPipeFittingType Ifc4x3_add1::IfcPipeFittingType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcPipeFittingTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcPipeFittingTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_add1::IfcPipeFittingType Ifc4x3_add1::IfcPipeFittingType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcPipeFittingTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcPipeFittingTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcPipeSegment std::optional< ::Ifc4x3_add1::IfcPipeSegmentTypeEnum::Value > Ifc4x3_add1::IfcPipeSegment::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_add1::IfcPipeSegmentTypeEnum::FromString(get_attribute_value(8)); } @@ -12564,7 +12564,7 @@ void Ifc4x3_add1::IfcPipeSegmentType::setPredefinedType(const ::Ifc4x3_add1::Ifc const ifcopenshell::entity& Ifc4x3_add1::IfcPipeSegmentType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[752]); } -Ifc4x3_add1::IfcPipeSegmentType Ifc4x3_add1::IfcPipeSegmentType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcPipeSegmentTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcPipeSegmentTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_add1::IfcPipeSegmentType Ifc4x3_add1::IfcPipeSegmentType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcPipeSegmentTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcPipeSegmentTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcPixelTexture int64_t Ifc4x3_add1::IfcPixelTexture::Width() const { int64_t v = get_attribute_value(5); return v; } @@ -12581,7 +12581,7 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcPixelTexture::Class() { return *((if Ifc4x3_add1::IfcPixelTexture Ifc4x3_add1::IfcPixelTexture::initialize(bool v1_RepeatS, bool v2_RepeatT, std::optional< std::string > v3_Mode, ::Ifc4x3_add1::IfcCartesianTransformationOperator2D v4_TextureTransform, std::optional< std::vector< std::string > /*[1:?]*/ > v5_Parameter, int64_t v6_Width, int64_t v7_Height, int64_t v8_ColourComponents, std::vector< boost::dynamic_bitset<> > /*[1:?]*/ v9_Pixel) { set_attribute_value(0, (v1_RepeatS));set_attribute_value(1, (v2_RepeatT)); if (v3_Mode) {set_attribute_value(2, (*v3_Mode)); }set_attribute_value(3, (v4_TextureTransform)); if (v5_Parameter) {set_attribute_value(4, (*v5_Parameter)); }set_attribute_value(5, (v6_Width));set_attribute_value(6, (v7_Height));set_attribute_value(7, (v8_ColourComponents));set_attribute_value(8, (v9_Pixel));; return *this; } // Function implementations for IfcPlacement -::Ifc4x3_add1::IfcPoint Ifc4x3_add1::IfcPlacement::Location() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcPoint>(); } +::Ifc4x3_add1::IfcPoint Ifc4x3_add1::IfcPlacement::Location() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcPoint>(); } void Ifc4x3_add1::IfcPlacement::setLocation(const ::Ifc4x3_add1::IfcPoint& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } @@ -12589,7 +12589,7 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcPlacement::Class() { return *((ifcop Ifc4x3_add1::IfcPlacement Ifc4x3_add1::IfcPlacement::initialize(::Ifc4x3_add1::IfcPoint v1_Location) { set_attribute_value(0, (v1_Location));; return *this; } // Function implementations for IfcPlanarBox -::Ifc4x3_add1::IfcAxis2Placement Ifc4x3_add1::IfcPlanarBox::Placement() const { return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3_add1::IfcAxis2Placement>(); } +::Ifc4x3_add1::IfcAxis2Placement Ifc4x3_add1::IfcPlanarBox::Placement() const { return ((express::base)(get_attribute_value(2))).as<::Ifc4x3_add1::IfcAxis2Placement>(); } void Ifc4x3_add1::IfcPlanarBox::setPlacement(const ::Ifc4x3_add1::IfcAxis2Placement& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } @@ -12626,7 +12626,7 @@ void Ifc4x3_add1::IfcPlateType::setPredefinedType(const ::Ifc4x3_add1::IfcPlateT const ifcopenshell::entity& Ifc4x3_add1::IfcPlateType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[762]); } -Ifc4x3_add1::IfcPlateType Ifc4x3_add1::IfcPlateType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcPlateTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcPlateTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_add1::IfcPlateType Ifc4x3_add1::IfcPlateType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcPlateTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcPlateTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcPoint @@ -12635,7 +12635,7 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcPoint::Class() { return *((ifcopensh Ifc4x3_add1::IfcPoint Ifc4x3_add1::IfcPoint::initialize() { ; return *this; } // Function implementations for IfcPointByDistanceExpression -::Ifc4x3_add1::IfcCurveMeasureSelect Ifc4x3_add1::IfcPointByDistanceExpression::DistanceAlong() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcCurveMeasureSelect>(); } +::Ifc4x3_add1::IfcCurveMeasureSelect Ifc4x3_add1::IfcPointByDistanceExpression::DistanceAlong() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcCurveMeasureSelect>(); } void Ifc4x3_add1::IfcPointByDistanceExpression::setDistanceAlong(const ::Ifc4x3_add1::IfcCurveMeasureSelect& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } std::optional< double > Ifc4x3_add1::IfcPointByDistanceExpression::OffsetLateral() const { if(get_attribute_value(1).isNull()) { return std::nullopt; } double v = get_attribute_value(1); return v; } void Ifc4x3_add1::IfcPointByDistanceExpression::setOffsetLateral(const std::optional< double >& v) { if (v) {set_attribute_value(1, *v);} else {unset_attribute_value(1);} } @@ -12643,7 +12643,7 @@ std::optional< double > Ifc4x3_add1::IfcPointByDistanceExpression::OffsetVertica void Ifc4x3_add1::IfcPointByDistanceExpression::setOffsetVertical(const std::optional< double >& v) { if (v) {set_attribute_value(2, *v);} else {unset_attribute_value(2);} } std::optional< double > Ifc4x3_add1::IfcPointByDistanceExpression::OffsetLongitudinal() const { if(get_attribute_value(3).isNull()) { return std::nullopt; } double v = get_attribute_value(3); return v; } void Ifc4x3_add1::IfcPointByDistanceExpression::setOffsetLongitudinal(const std::optional< double >& v) { if (v) {set_attribute_value(3, *v);} else {unset_attribute_value(3);} } -::Ifc4x3_add1::IfcCurve Ifc4x3_add1::IfcPointByDistanceExpression::BasisCurve() const { return ((express::Base)(get_attribute_value(4))).as<::Ifc4x3_add1::IfcCurve>(); } +::Ifc4x3_add1::IfcCurve Ifc4x3_add1::IfcPointByDistanceExpression::BasisCurve() const { return ((express::base)(get_attribute_value(4))).as<::Ifc4x3_add1::IfcCurve>(); } void Ifc4x3_add1::IfcPointByDistanceExpression::setBasisCurve(const ::Ifc4x3_add1::IfcCurve& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } @@ -12651,7 +12651,7 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcPointByDistanceExpression::Class() { Ifc4x3_add1::IfcPointByDistanceExpression Ifc4x3_add1::IfcPointByDistanceExpression::initialize(::Ifc4x3_add1::IfcCurveMeasureSelect v1_DistanceAlong, std::optional< double > v2_OffsetLateral, std::optional< double > v3_OffsetVertical, std::optional< double > v4_OffsetLongitudinal, ::Ifc4x3_add1::IfcCurve v5_BasisCurve) { set_attribute_value(0, (v1_DistanceAlong)); if (v2_OffsetLateral) {set_attribute_value(1, (*v2_OffsetLateral)); } if (v3_OffsetVertical) {set_attribute_value(2, (*v3_OffsetVertical)); } if (v4_OffsetLongitudinal) {set_attribute_value(3, (*v4_OffsetLongitudinal)); }set_attribute_value(4, (v5_BasisCurve));; return *this; } // Function implementations for IfcPointOnCurve -::Ifc4x3_add1::IfcCurve Ifc4x3_add1::IfcPointOnCurve::BasisCurve() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcCurve>(); } +::Ifc4x3_add1::IfcCurve Ifc4x3_add1::IfcPointOnCurve::BasisCurve() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcCurve>(); } void Ifc4x3_add1::IfcPointOnCurve::setBasisCurve(const ::Ifc4x3_add1::IfcCurve& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } double Ifc4x3_add1::IfcPointOnCurve::PointParameter() const { double v = get_attribute_value(1); return v; } void Ifc4x3_add1::IfcPointOnCurve::setPointParameter(const double& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } @@ -12661,7 +12661,7 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcPointOnCurve::Class() { return *((if Ifc4x3_add1::IfcPointOnCurve Ifc4x3_add1::IfcPointOnCurve::initialize(::Ifc4x3_add1::IfcCurve v1_BasisCurve, double v2_PointParameter) { set_attribute_value(0, (v1_BasisCurve));set_attribute_value(1, (v2_PointParameter));; return *this; } // Function implementations for IfcPointOnSurface -::Ifc4x3_add1::IfcSurface Ifc4x3_add1::IfcPointOnSurface::BasisSurface() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcSurface>(); } +::Ifc4x3_add1::IfcSurface Ifc4x3_add1::IfcPointOnSurface::BasisSurface() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcSurface>(); } void Ifc4x3_add1::IfcPointOnSurface::setBasisSurface(const ::Ifc4x3_add1::IfcSurface& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } double Ifc4x3_add1::IfcPointOnSurface::PointParameterU() const { double v = get_attribute_value(1); return v; } void Ifc4x3_add1::IfcPointOnSurface::setPointParameterU(const double& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } @@ -12673,17 +12673,17 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcPointOnSurface::Class() { return *(( Ifc4x3_add1::IfcPointOnSurface Ifc4x3_add1::IfcPointOnSurface::initialize(::Ifc4x3_add1::IfcSurface v1_BasisSurface, double v2_PointParameterU, double v3_PointParameterV) { set_attribute_value(0, (v1_BasisSurface));set_attribute_value(1, (v2_PointParameterU));set_attribute_value(2, (v3_PointParameterV));; return *this; } // Function implementations for IfcPolyLoop -std::vector< ::Ifc4x3_add1::IfcCartesianPoint > Ifc4x3_add1::IfcPolyLoop::Polygon() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3_add1::IfcCartesianPoint>(es); } -void Ifc4x3_add1::IfcPolyLoop::setPolygon(const std::vector< ::Ifc4x3_add1::IfcCartesianPoint >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } +std::vector< ::Ifc4x3_add1::IfcCartesianPoint > Ifc4x3_add1::IfcPolyLoop::Polygon() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3_add1::IfcCartesianPoint>(es); } +void Ifc4x3_add1::IfcPolyLoop::setPolygon(const std::vector< ::Ifc4x3_add1::IfcCartesianPoint >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } const ifcopenshell::entity& Ifc4x3_add1::IfcPolyLoop::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[772]); } -Ifc4x3_add1::IfcPolyLoop Ifc4x3_add1::IfcPolyLoop::initialize(std::vector< ::Ifc4x3_add1::IfcCartesianPoint > v1_Polygon) { set_attribute_value(0, cast_vector(v1_Polygon));; return *this; } +Ifc4x3_add1::IfcPolyLoop Ifc4x3_add1::IfcPolyLoop::initialize(std::vector< ::Ifc4x3_add1::IfcCartesianPoint > v1_Polygon) { set_attribute_value(0, cast_vector(v1_Polygon));; return *this; } // Function implementations for IfcPolygonalBoundedHalfSpace -::Ifc4x3_add1::IfcAxis2Placement3D Ifc4x3_add1::IfcPolygonalBoundedHalfSpace::Position() const { return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3_add1::IfcAxis2Placement3D>(); } +::Ifc4x3_add1::IfcAxis2Placement3D Ifc4x3_add1::IfcPolygonalBoundedHalfSpace::Position() const { return ((express::base)(get_attribute_value(2))).as<::Ifc4x3_add1::IfcAxis2Placement3D>(); } void Ifc4x3_add1::IfcPolygonalBoundedHalfSpace::setPosition(const ::Ifc4x3_add1::IfcAxis2Placement3D& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } -::Ifc4x3_add1::IfcBoundedCurve Ifc4x3_add1::IfcPolygonalBoundedHalfSpace::PolygonalBoundary() const { return ((express::Base)(get_attribute_value(3))).as<::Ifc4x3_add1::IfcBoundedCurve>(); } +::Ifc4x3_add1::IfcBoundedCurve Ifc4x3_add1::IfcPolygonalBoundedHalfSpace::PolygonalBoundary() const { return ((express::base)(get_attribute_value(3))).as<::Ifc4x3_add1::IfcBoundedCurve>(); } void Ifc4x3_add1::IfcPolygonalBoundedHalfSpace::setPolygonalBoundary(const ::Ifc4x3_add1::IfcBoundedCurve& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } @@ -12693,25 +12693,25 @@ Ifc4x3_add1::IfcPolygonalBoundedHalfSpace Ifc4x3_add1::IfcPolygonalBoundedHalfSp // Function implementations for IfcPolygonalFaceSet std::optional< bool > Ifc4x3_add1::IfcPolygonalFaceSet::Closed() const { if(get_attribute_value(1).isNull()) { return std::nullopt; } bool v = get_attribute_value(1); return v; } void Ifc4x3_add1::IfcPolygonalFaceSet::setClosed(const std::optional< bool >& v) { if (v) {set_attribute_value(1, *v);} else {unset_attribute_value(1);} } -std::vector< ::Ifc4x3_add1::IfcIndexedPolygonalFace > Ifc4x3_add1::IfcPolygonalFaceSet::Faces() const { std::vector es = get_attribute_value(2); return cast_vector<::Ifc4x3_add1::IfcIndexedPolygonalFace>(es); } -void Ifc4x3_add1::IfcPolygonalFaceSet::setFaces(const std::vector< ::Ifc4x3_add1::IfcIndexedPolygonalFace >& v) { set_attribute_value(2, cast_vector(v));if constexpr (false)unset_attribute_value(2); } +std::vector< ::Ifc4x3_add1::IfcIndexedPolygonalFace > Ifc4x3_add1::IfcPolygonalFaceSet::Faces() const { std::vector es = get_attribute_value(2); return cast_vector<::Ifc4x3_add1::IfcIndexedPolygonalFace>(es); } +void Ifc4x3_add1::IfcPolygonalFaceSet::setFaces(const std::vector< ::Ifc4x3_add1::IfcIndexedPolygonalFace >& v) { set_attribute_value(2, cast_vector(v));if constexpr (false)unset_attribute_value(2); } std::optional< std::vector< int64_t > /*[1:?]*/ > Ifc4x3_add1::IfcPolygonalFaceSet::PnIndex() const { if(get_attribute_value(3).isNull()) { return std::nullopt; } std::vector< int64_t > /*[1:?]*/ v = get_attribute_value(3); return v; } void Ifc4x3_add1::IfcPolygonalFaceSet::setPnIndex(const std::optional< std::vector< int64_t > /*[1:?]*/ >& v) { if (v) {set_attribute_value(3, *v);} else {unset_attribute_value(3);} } const ifcopenshell::entity& Ifc4x3_add1::IfcPolygonalFaceSet::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[770]); } -Ifc4x3_add1::IfcPolygonalFaceSet Ifc4x3_add1::IfcPolygonalFaceSet::initialize(::Ifc4x3_add1::IfcCartesianPointList3D v1_Coordinates, std::optional< bool > v2_Closed, std::vector< ::Ifc4x3_add1::IfcIndexedPolygonalFace > v3_Faces, std::optional< std::vector< int64_t > /*[1:?]*/ > v4_PnIndex) { set_attribute_value(0, (v1_Coordinates)); if (v2_Closed) {set_attribute_value(1, (*v2_Closed)); }set_attribute_value(2, cast_vector(v3_Faces)); if (v4_PnIndex) {set_attribute_value(3, (*v4_PnIndex)); }; return *this; } +Ifc4x3_add1::IfcPolygonalFaceSet Ifc4x3_add1::IfcPolygonalFaceSet::initialize(::Ifc4x3_add1::IfcCartesianPointList3D v1_Coordinates, std::optional< bool > v2_Closed, std::vector< ::Ifc4x3_add1::IfcIndexedPolygonalFace > v3_Faces, std::optional< std::vector< int64_t > /*[1:?]*/ > v4_PnIndex) { set_attribute_value(0, (v1_Coordinates)); if (v2_Closed) {set_attribute_value(1, (*v2_Closed)); }set_attribute_value(2, cast_vector(v3_Faces)); if (v4_PnIndex) {set_attribute_value(3, (*v4_PnIndex)); }; return *this; } // Function implementations for IfcPolyline -std::vector< ::Ifc4x3_add1::IfcCartesianPoint > Ifc4x3_add1::IfcPolyline::Points() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3_add1::IfcCartesianPoint>(es); } -void Ifc4x3_add1::IfcPolyline::setPoints(const std::vector< ::Ifc4x3_add1::IfcCartesianPoint >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } +std::vector< ::Ifc4x3_add1::IfcCartesianPoint > Ifc4x3_add1::IfcPolyline::Points() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3_add1::IfcCartesianPoint>(es); } +void Ifc4x3_add1::IfcPolyline::setPoints(const std::vector< ::Ifc4x3_add1::IfcCartesianPoint >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } const ifcopenshell::entity& Ifc4x3_add1::IfcPolyline::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[771]); } -Ifc4x3_add1::IfcPolyline Ifc4x3_add1::IfcPolyline::initialize(std::vector< ::Ifc4x3_add1::IfcCartesianPoint > v1_Points) { set_attribute_value(0, cast_vector(v1_Points));; return *this; } +Ifc4x3_add1::IfcPolyline Ifc4x3_add1::IfcPolyline::initialize(std::vector< ::Ifc4x3_add1::IfcCartesianPoint > v1_Points) { set_attribute_value(0, cast_vector(v1_Points));; return *this; } // Function implementations for IfcPolynomialCurve -::Ifc4x3_add1::IfcPlacement Ifc4x3_add1::IfcPolynomialCurve::Position() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcPlacement>(); } +::Ifc4x3_add1::IfcPlacement Ifc4x3_add1::IfcPolynomialCurve::Position() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcPlacement>(); } void Ifc4x3_add1::IfcPolynomialCurve::setPosition(const ::Ifc4x3_add1::IfcPlacement& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } std::optional< std::vector< double > /*[2:?]*/ > Ifc4x3_add1::IfcPolynomialCurve::CoefficientsX() const { if(get_attribute_value(1).isNull()) { return std::nullopt; } std::vector< double > /*[2:?]*/ v = get_attribute_value(1); return v; } void Ifc4x3_add1::IfcPolynomialCurve::setCoefficientsX(const std::optional< std::vector< double > /*[2:?]*/ >& v) { if (v) {set_attribute_value(1, *v);} else {unset_attribute_value(1);} } @@ -12810,14 +12810,14 @@ std::string Ifc4x3_add1::IfcPresentationLayerAssignment::Name() const { std::st void Ifc4x3_add1::IfcPresentationLayerAssignment::setName(const std::string& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } std::optional< std::string > Ifc4x3_add1::IfcPresentationLayerAssignment::Description() const { if(get_attribute_value(1).isNull()) { return std::nullopt; } std::string v = get_attribute_value(1); return v; } void Ifc4x3_add1::IfcPresentationLayerAssignment::setDescription(const std::optional< std::string >& v) { if (v) {set_attribute_value(1, *v);} else {unset_attribute_value(1);} } -std::vector< ::Ifc4x3_add1::IfcLayeredItem > Ifc4x3_add1::IfcPresentationLayerAssignment::AssignedItems() const { std::vector es = get_attribute_value(2); return cast_vector<::Ifc4x3_add1::IfcLayeredItem>(es); } -void Ifc4x3_add1::IfcPresentationLayerAssignment::setAssignedItems(const std::vector< ::Ifc4x3_add1::IfcLayeredItem >& v) { set_attribute_value(2, cast_vector(v));if constexpr (false)unset_attribute_value(2); } +std::vector< ::Ifc4x3_add1::IfcLayeredItem > Ifc4x3_add1::IfcPresentationLayerAssignment::AssignedItems() const { std::vector es = get_attribute_value(2); return cast_vector<::Ifc4x3_add1::IfcLayeredItem>(es); } +void Ifc4x3_add1::IfcPresentationLayerAssignment::setAssignedItems(const std::vector< ::Ifc4x3_add1::IfcLayeredItem >& v) { set_attribute_value(2, cast_vector(v));if constexpr (false)unset_attribute_value(2); } std::optional< std::string > Ifc4x3_add1::IfcPresentationLayerAssignment::Identifier() const { if(get_attribute_value(3).isNull()) { return std::nullopt; } std::string v = get_attribute_value(3); return v; } void Ifc4x3_add1::IfcPresentationLayerAssignment::setIdentifier(const std::optional< std::string >& v) { if (v) {set_attribute_value(3, *v);} else {unset_attribute_value(3);} } const ifcopenshell::entity& Ifc4x3_add1::IfcPresentationLayerAssignment::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[791]); } -Ifc4x3_add1::IfcPresentationLayerAssignment Ifc4x3_add1::IfcPresentationLayerAssignment::initialize(std::string v1_Name, std::optional< std::string > v2_Description, std::vector< ::Ifc4x3_add1::IfcLayeredItem > v3_AssignedItems, std::optional< std::string > v4_Identifier) { set_attribute_value(0, (v1_Name)); if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, cast_vector(v3_AssignedItems)); if (v4_Identifier) {set_attribute_value(3, (*v4_Identifier)); }; return *this; } +Ifc4x3_add1::IfcPresentationLayerAssignment Ifc4x3_add1::IfcPresentationLayerAssignment::initialize(std::string v1_Name, std::optional< std::string > v2_Description, std::vector< ::Ifc4x3_add1::IfcLayeredItem > v3_AssignedItems, std::optional< std::string > v4_Identifier) { set_attribute_value(0, (v1_Name)); if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, cast_vector(v3_AssignedItems)); if (v4_Identifier) {set_attribute_value(3, (*v4_Identifier)); }; return *this; } // Function implementations for IfcPresentationLayerWithStyle boost::logic::tribool Ifc4x3_add1::IfcPresentationLayerWithStyle::LayerOn() const { boost::logic::tribool v = get_attribute_value(4); return v; } @@ -12826,12 +12826,12 @@ boost::logic::tribool Ifc4x3_add1::IfcPresentationLayerWithStyle::LayerFrozen() void Ifc4x3_add1::IfcPresentationLayerWithStyle::setLayerFrozen(const boost::logic::tribool& v) { set_attribute_value(5, v);if constexpr (false)unset_attribute_value(5); } boost::logic::tribool Ifc4x3_add1::IfcPresentationLayerWithStyle::LayerBlocked() const { boost::logic::tribool v = get_attribute_value(6); return v; } void Ifc4x3_add1::IfcPresentationLayerWithStyle::setLayerBlocked(const boost::logic::tribool& v) { set_attribute_value(6, v);if constexpr (false)unset_attribute_value(6); } -std::vector< ::Ifc4x3_add1::IfcPresentationStyle > Ifc4x3_add1::IfcPresentationLayerWithStyle::LayerStyles() const { std::vector es = get_attribute_value(7); return cast_vector<::Ifc4x3_add1::IfcPresentationStyle>(es); } -void Ifc4x3_add1::IfcPresentationLayerWithStyle::setLayerStyles(const std::vector< ::Ifc4x3_add1::IfcPresentationStyle >& v) { set_attribute_value(7, cast_vector(v));if constexpr (false)unset_attribute_value(7); } +std::vector< ::Ifc4x3_add1::IfcPresentationStyle > Ifc4x3_add1::IfcPresentationLayerWithStyle::LayerStyles() const { std::vector es = get_attribute_value(7); return cast_vector<::Ifc4x3_add1::IfcPresentationStyle>(es); } +void Ifc4x3_add1::IfcPresentationLayerWithStyle::setLayerStyles(const std::vector< ::Ifc4x3_add1::IfcPresentationStyle >& v) { set_attribute_value(7, cast_vector(v));if constexpr (false)unset_attribute_value(7); } const ifcopenshell::entity& Ifc4x3_add1::IfcPresentationLayerWithStyle::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[792]); } -Ifc4x3_add1::IfcPresentationLayerWithStyle Ifc4x3_add1::IfcPresentationLayerWithStyle::initialize(std::string v1_Name, std::optional< std::string > v2_Description, std::vector< ::Ifc4x3_add1::IfcLayeredItem > v3_AssignedItems, std::optional< std::string > v4_Identifier, boost::logic::tribool v5_LayerOn, boost::logic::tribool v6_LayerFrozen, boost::logic::tribool v7_LayerBlocked, std::vector< ::Ifc4x3_add1::IfcPresentationStyle > v8_LayerStyles) { set_attribute_value(0, (v1_Name)); if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, cast_vector(v3_AssignedItems)); if (v4_Identifier) {set_attribute_value(3, (*v4_Identifier)); }set_attribute_value(4, (v5_LayerOn));set_attribute_value(5, (v6_LayerFrozen));set_attribute_value(6, (v7_LayerBlocked));set_attribute_value(7, cast_vector(v8_LayerStyles));; return *this; } +Ifc4x3_add1::IfcPresentationLayerWithStyle Ifc4x3_add1::IfcPresentationLayerWithStyle::initialize(std::string v1_Name, std::optional< std::string > v2_Description, std::vector< ::Ifc4x3_add1::IfcLayeredItem > v3_AssignedItems, std::optional< std::string > v4_Identifier, boost::logic::tribool v5_LayerOn, boost::logic::tribool v6_LayerFrozen, boost::logic::tribool v7_LayerBlocked, std::vector< ::Ifc4x3_add1::IfcPresentationStyle > v8_LayerStyles) { set_attribute_value(0, (v1_Name)); if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, cast_vector(v3_AssignedItems)); if (v4_Identifier) {set_attribute_value(3, (*v4_Identifier)); }set_attribute_value(4, (v5_LayerOn));set_attribute_value(5, (v6_LayerFrozen));set_attribute_value(6, (v7_LayerBlocked));set_attribute_value(7, cast_vector(v8_LayerStyles));; return *this; } // Function implementations for IfcPresentationStyle std::optional< std::string > Ifc4x3_add1::IfcPresentationStyle::Name() const { if(get_attribute_value(0).isNull()) { return std::nullopt; } std::string v = get_attribute_value(0); return v; } @@ -12855,7 +12855,7 @@ void Ifc4x3_add1::IfcProcedureType::setPredefinedType(const ::Ifc4x3_add1::IfcPr const ifcopenshell::entity& Ifc4x3_add1::IfcProcedureType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[796]); } -Ifc4x3_add1::IfcProcedureType Ifc4x3_add1::IfcProcedureType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::string > v7_Identification, std::optional< std::string > v8_LongDescription, std::optional< std::string > v9_ProcessType, ::Ifc4x3_add1::IfcProcedureTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_Identification) {set_attribute_value(6, (*v7_Identification)); } if (v8_LongDescription) {set_attribute_value(7, (*v8_LongDescription)); } if (v9_ProcessType) {set_attribute_value(8, (*v9_ProcessType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcProcedureTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_add1::IfcProcedureType Ifc4x3_add1::IfcProcedureType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::string > v7_Identification, std::optional< std::string > v8_LongDescription, std::optional< std::string > v9_ProcessType, ::Ifc4x3_add1::IfcProcedureTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_Identification) {set_attribute_value(6, (*v7_Identification)); } if (v8_LongDescription) {set_attribute_value(7, (*v8_LongDescription)); } if (v9_ProcessType) {set_attribute_value(8, (*v9_ProcessType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcProcedureTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcProcess std::optional< std::string > Ifc4x3_add1::IfcProcess::Identification() const { if(get_attribute_value(5).isNull()) { return std::nullopt; } std::string v = get_attribute_value(5); return v; } @@ -12871,9 +12871,9 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcProcess::Class() { return *((ifcopen Ifc4x3_add1::IfcProcess Ifc4x3_add1::IfcProcess::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, std::optional< std::string > v6_Identification, std::optional< std::string > v7_LongDescription) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); } if (v6_Identification) {set_attribute_value(5, (*v6_Identification)); } if (v7_LongDescription) {set_attribute_value(6, (*v7_LongDescription)); }; return *this; } // Function implementations for IfcProduct -::Ifc4x3_add1::IfcObjectPlacement Ifc4x3_add1::IfcProduct::ObjectPlacement() const { if(get_attribute_value(5).isNull()) { return ::Ifc4x3_add1::IfcObjectPlacement{}; } return ((express::Base)(get_attribute_value(5))).as<::Ifc4x3_add1::IfcObjectPlacement>(); } +::Ifc4x3_add1::IfcObjectPlacement Ifc4x3_add1::IfcProduct::ObjectPlacement() const { if(get_attribute_value(5).isNull()) { return ::Ifc4x3_add1::IfcObjectPlacement{}; } return ((express::base)(get_attribute_value(5))).as<::Ifc4x3_add1::IfcObjectPlacement>(); } void Ifc4x3_add1::IfcProduct::setObjectPlacement(const ::Ifc4x3_add1::IfcObjectPlacement& v) { set_attribute_value(5, v);if constexpr (false)unset_attribute_value(5); } -::Ifc4x3_add1::IfcProductRepresentation Ifc4x3_add1::IfcProduct::Representation() const { if(get_attribute_value(6).isNull()) { return ::Ifc4x3_add1::IfcProductRepresentation{}; } return ((express::Base)(get_attribute_value(6))).as<::Ifc4x3_add1::IfcProductRepresentation>(); } +::Ifc4x3_add1::IfcProductRepresentation Ifc4x3_add1::IfcProduct::Representation() const { if(get_attribute_value(6).isNull()) { return ::Ifc4x3_add1::IfcProductRepresentation{}; } return ((express::base)(get_attribute_value(6))).as<::Ifc4x3_add1::IfcProductRepresentation>(); } void Ifc4x3_add1::IfcProduct::setRepresentation(const ::Ifc4x3_add1::IfcProductRepresentation& v) { set_attribute_value(6, v);if constexpr (false)unset_attribute_value(6); } std::vector<::Ifc4x3_add1::IfcRelAssignsToProduct> Ifc4x3_add1::IfcProduct::ReferencedBy() const { return cast_vector(file()->get_inverse(data()->id(), IFC4X3_ADD1_types[906], 6)); } @@ -12889,19 +12889,19 @@ std::vector<::Ifc4x3_add1::IfcProduct> Ifc4x3_add1::IfcProductDefinitionShape::S std::vector<::Ifc4x3_add1::IfcShapeAspect> Ifc4x3_add1::IfcProductDefinitionShape::HasShapeAspects() const { return cast_vector(file()->get_inverse(data()->id(), IFC4X3_ADD1_types[1006], 4)); } const ifcopenshell::entity& Ifc4x3_add1::IfcProductDefinitionShape::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[801]); } -Ifc4x3_add1::IfcProductDefinitionShape Ifc4x3_add1::IfcProductDefinitionShape::initialize(std::optional< std::string > v1_Name, std::optional< std::string > v2_Description, std::vector< ::Ifc4x3_add1::IfcRepresentation > v3_Representations) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); } if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, cast_vector(v3_Representations));; return *this; } +Ifc4x3_add1::IfcProductDefinitionShape Ifc4x3_add1::IfcProductDefinitionShape::initialize(std::optional< std::string > v1_Name, std::optional< std::string > v2_Description, std::vector< ::Ifc4x3_add1::IfcRepresentation > v3_Representations) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); } if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, cast_vector(v3_Representations));; return *this; } // Function implementations for IfcProductRepresentation std::optional< std::string > Ifc4x3_add1::IfcProductRepresentation::Name() const { if(get_attribute_value(0).isNull()) { return std::nullopt; } std::string v = get_attribute_value(0); return v; } void Ifc4x3_add1::IfcProductRepresentation::setName(const std::optional< std::string >& v) { if (v) {set_attribute_value(0, *v);} else {unset_attribute_value(0);} } std::optional< std::string > Ifc4x3_add1::IfcProductRepresentation::Description() const { if(get_attribute_value(1).isNull()) { return std::nullopt; } std::string v = get_attribute_value(1); return v; } void Ifc4x3_add1::IfcProductRepresentation::setDescription(const std::optional< std::string >& v) { if (v) {set_attribute_value(1, *v);} else {unset_attribute_value(1);} } -std::vector< ::Ifc4x3_add1::IfcRepresentation > Ifc4x3_add1::IfcProductRepresentation::Representations() const { std::vector es = get_attribute_value(2); return cast_vector<::Ifc4x3_add1::IfcRepresentation>(es); } -void Ifc4x3_add1::IfcProductRepresentation::setRepresentations(const std::vector< ::Ifc4x3_add1::IfcRepresentation >& v) { set_attribute_value(2, cast_vector(v));if constexpr (false)unset_attribute_value(2); } +std::vector< ::Ifc4x3_add1::IfcRepresentation > Ifc4x3_add1::IfcProductRepresentation::Representations() const { std::vector es = get_attribute_value(2); return cast_vector<::Ifc4x3_add1::IfcRepresentation>(es); } +void Ifc4x3_add1::IfcProductRepresentation::setRepresentations(const std::vector< ::Ifc4x3_add1::IfcRepresentation >& v) { set_attribute_value(2, cast_vector(v));if constexpr (false)unset_attribute_value(2); } const ifcopenshell::entity& Ifc4x3_add1::IfcProductRepresentation::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[802]); } -Ifc4x3_add1::IfcProductRepresentation Ifc4x3_add1::IfcProductRepresentation::initialize(std::optional< std::string > v1_Name, std::optional< std::string > v2_Description, std::vector< ::Ifc4x3_add1::IfcRepresentation > v3_Representations) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); } if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, cast_vector(v3_Representations));; return *this; } +Ifc4x3_add1::IfcProductRepresentation Ifc4x3_add1::IfcProductRepresentation::initialize(std::optional< std::string > v1_Name, std::optional< std::string > v2_Description, std::vector< ::Ifc4x3_add1::IfcRepresentation > v3_Representations) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); } if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, cast_vector(v3_Representations));; return *this; } // Function implementations for IfcProfileDef ::Ifc4x3_add1::IfcProfileTypeEnum::Value Ifc4x3_add1::IfcProfileDef::ProfileType() const { return ::Ifc4x3_add1::IfcProfileTypeEnum::FromString(get_attribute_value(0)); } @@ -12916,24 +12916,24 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcProfileDef::Class() { return *((ifco Ifc4x3_add1::IfcProfileDef Ifc4x3_add1::IfcProfileDef::initialize(::Ifc4x3_add1::IfcProfileTypeEnum::Value v1_ProfileType, std::optional< std::string > v2_ProfileName) { set_attribute_value(0, (enumeration_reference(&::Ifc4x3_add1::IfcProfileTypeEnum::Class(),(size_t)v1_ProfileType))); if (v2_ProfileName) {set_attribute_value(1, (*v2_ProfileName)); }; return *this; } // Function implementations for IfcProfileProperties -::Ifc4x3_add1::IfcProfileDef Ifc4x3_add1::IfcProfileProperties::ProfileDefinition() const { return ((express::Base)(get_attribute_value(3))).as<::Ifc4x3_add1::IfcProfileDef>(); } +::Ifc4x3_add1::IfcProfileDef Ifc4x3_add1::IfcProfileProperties::ProfileDefinition() const { return ((express::base)(get_attribute_value(3))).as<::Ifc4x3_add1::IfcProfileDef>(); } void Ifc4x3_add1::IfcProfileProperties::setProfileDefinition(const ::Ifc4x3_add1::IfcProfileDef& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } const ifcopenshell::entity& Ifc4x3_add1::IfcProfileProperties::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[806]); } -Ifc4x3_add1::IfcProfileProperties Ifc4x3_add1::IfcProfileProperties::initialize(std::optional< std::string > v1_Name, std::optional< std::string > v2_Description, std::vector< ::Ifc4x3_add1::IfcProperty > v3_Properties, ::Ifc4x3_add1::IfcProfileDef v4_ProfileDefinition) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); } if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, cast_vector(v3_Properties));set_attribute_value(3, (v4_ProfileDefinition));; return *this; } +Ifc4x3_add1::IfcProfileProperties Ifc4x3_add1::IfcProfileProperties::initialize(std::optional< std::string > v1_Name, std::optional< std::string > v2_Description, std::vector< ::Ifc4x3_add1::IfcProperty > v3_Properties, ::Ifc4x3_add1::IfcProfileDef v4_ProfileDefinition) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); } if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, cast_vector(v3_Properties));set_attribute_value(3, (v4_ProfileDefinition));; return *this; } // Function implementations for IfcProject const ifcopenshell::entity& Ifc4x3_add1::IfcProject::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[808]); } -Ifc4x3_add1::IfcProject Ifc4x3_add1::IfcProject::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, std::optional< std::string > v6_LongName, std::optional< std::string > v7_Phase, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationContext > > v8_RepresentationContexts, ::Ifc4x3_add1::IfcUnitAssignment v9_UnitsInContext) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); } if (v6_LongName) {set_attribute_value(5, (*v6_LongName)); } if (v7_Phase) {set_attribute_value(6, (*v7_Phase)); } if (v8_RepresentationContexts) {set_attribute_value(7, cast_vector(*v8_RepresentationContexts)); }set_attribute_value(8, (v9_UnitsInContext));; return *this; } +Ifc4x3_add1::IfcProject Ifc4x3_add1::IfcProject::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, std::optional< std::string > v6_LongName, std::optional< std::string > v7_Phase, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationContext > > v8_RepresentationContexts, ::Ifc4x3_add1::IfcUnitAssignment v9_UnitsInContext) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); } if (v6_LongName) {set_attribute_value(5, (*v6_LongName)); } if (v7_Phase) {set_attribute_value(6, (*v7_Phase)); } if (v8_RepresentationContexts) {set_attribute_value(7, cast_vector(*v8_RepresentationContexts)); }set_attribute_value(8, (v9_UnitsInContext));; return *this; } // Function implementations for IfcProjectLibrary const ifcopenshell::entity& Ifc4x3_add1::IfcProjectLibrary::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[813]); } -Ifc4x3_add1::IfcProjectLibrary Ifc4x3_add1::IfcProjectLibrary::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, std::optional< std::string > v6_LongName, std::optional< std::string > v7_Phase, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationContext > > v8_RepresentationContexts, ::Ifc4x3_add1::IfcUnitAssignment v9_UnitsInContext) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); } if (v6_LongName) {set_attribute_value(5, (*v6_LongName)); } if (v7_Phase) {set_attribute_value(6, (*v7_Phase)); } if (v8_RepresentationContexts) {set_attribute_value(7, cast_vector(*v8_RepresentationContexts)); }set_attribute_value(8, (v9_UnitsInContext));; return *this; } +Ifc4x3_add1::IfcProjectLibrary Ifc4x3_add1::IfcProjectLibrary::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, std::optional< std::string > v6_LongName, std::optional< std::string > v7_Phase, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationContext > > v8_RepresentationContexts, ::Ifc4x3_add1::IfcUnitAssignment v9_UnitsInContext) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); } if (v6_LongName) {set_attribute_value(5, (*v6_LongName)); } if (v7_Phase) {set_attribute_value(6, (*v7_Phase)); } if (v8_RepresentationContexts) {set_attribute_value(7, cast_vector(*v8_RepresentationContexts)); }set_attribute_value(8, (v9_UnitsInContext));; return *this; } // Function implementations for IfcProjectOrder std::optional< ::Ifc4x3_add1::IfcProjectOrderTypeEnum::Value > Ifc4x3_add1::IfcProjectOrder::PredefinedType() const { if(get_attribute_value(6).isNull()) { return std::nullopt; } return ::Ifc4x3_add1::IfcProjectOrderTypeEnum::FromString(get_attribute_value(6)); } @@ -12956,7 +12956,7 @@ std::optional< std::string > Ifc4x3_add1::IfcProjectedCRS::MapProjection() const void Ifc4x3_add1::IfcProjectedCRS::setMapProjection(const std::optional< std::string >& v) { if (v) {set_attribute_value(4, *v);} else {unset_attribute_value(4);} } std::optional< std::string > Ifc4x3_add1::IfcProjectedCRS::MapZone() const { if(get_attribute_value(5).isNull()) { return std::nullopt; } std::string v = get_attribute_value(5); return v; } void Ifc4x3_add1::IfcProjectedCRS::setMapZone(const std::optional< std::string >& v) { if (v) {set_attribute_value(5, *v);} else {unset_attribute_value(5);} } -::Ifc4x3_add1::IfcNamedUnit Ifc4x3_add1::IfcProjectedCRS::MapUnit() const { if(get_attribute_value(6).isNull()) { return ::Ifc4x3_add1::IfcNamedUnit{}; } return ((express::Base)(get_attribute_value(6))).as<::Ifc4x3_add1::IfcNamedUnit>(); } +::Ifc4x3_add1::IfcNamedUnit Ifc4x3_add1::IfcProjectedCRS::MapUnit() const { if(get_attribute_value(6).isNull()) { return ::Ifc4x3_add1::IfcNamedUnit{}; } return ((express::base)(get_attribute_value(6))).as<::Ifc4x3_add1::IfcNamedUnit>(); } void Ifc4x3_add1::IfcProjectedCRS::setMapUnit(const ::Ifc4x3_add1::IfcNamedUnit& v) { set_attribute_value(6, v);if constexpr (false)unset_attribute_value(6); } @@ -12995,13 +12995,13 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcPropertyAbstraction::Class() { retur Ifc4x3_add1::IfcPropertyAbstraction Ifc4x3_add1::IfcPropertyAbstraction::initialize() { ; return *this; } // Function implementations for IfcPropertyBoundedValue -::Ifc4x3_add1::IfcValue Ifc4x3_add1::IfcPropertyBoundedValue::UpperBoundValue() const { if(get_attribute_value(2).isNull()) { return ::Ifc4x3_add1::IfcValue{}; } return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3_add1::IfcValue>(); } +::Ifc4x3_add1::IfcValue Ifc4x3_add1::IfcPropertyBoundedValue::UpperBoundValue() const { if(get_attribute_value(2).isNull()) { return ::Ifc4x3_add1::IfcValue{}; } return ((express::base)(get_attribute_value(2))).as<::Ifc4x3_add1::IfcValue>(); } void Ifc4x3_add1::IfcPropertyBoundedValue::setUpperBoundValue(const ::Ifc4x3_add1::IfcValue& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } -::Ifc4x3_add1::IfcValue Ifc4x3_add1::IfcPropertyBoundedValue::LowerBoundValue() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3_add1::IfcValue{}; } return ((express::Base)(get_attribute_value(3))).as<::Ifc4x3_add1::IfcValue>(); } +::Ifc4x3_add1::IfcValue Ifc4x3_add1::IfcPropertyBoundedValue::LowerBoundValue() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3_add1::IfcValue{}; } return ((express::base)(get_attribute_value(3))).as<::Ifc4x3_add1::IfcValue>(); } void Ifc4x3_add1::IfcPropertyBoundedValue::setLowerBoundValue(const ::Ifc4x3_add1::IfcValue& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } -::Ifc4x3_add1::IfcUnit Ifc4x3_add1::IfcPropertyBoundedValue::Unit() const { if(get_attribute_value(4).isNull()) { return ::Ifc4x3_add1::IfcUnit{}; } return ((express::Base)(get_attribute_value(4))).as<::Ifc4x3_add1::IfcUnit>(); } +::Ifc4x3_add1::IfcUnit Ifc4x3_add1::IfcPropertyBoundedValue::Unit() const { if(get_attribute_value(4).isNull()) { return ::Ifc4x3_add1::IfcUnit{}; } return ((express::base)(get_attribute_value(4))).as<::Ifc4x3_add1::IfcUnit>(); } void Ifc4x3_add1::IfcPropertyBoundedValue::setUnit(const ::Ifc4x3_add1::IfcUnit& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } -::Ifc4x3_add1::IfcValue Ifc4x3_add1::IfcPropertyBoundedValue::SetPointValue() const { if(get_attribute_value(5).isNull()) { return ::Ifc4x3_add1::IfcValue{}; } return ((express::Base)(get_attribute_value(5))).as<::Ifc4x3_add1::IfcValue>(); } +::Ifc4x3_add1::IfcValue Ifc4x3_add1::IfcPropertyBoundedValue::SetPointValue() const { if(get_attribute_value(5).isNull()) { return ::Ifc4x3_add1::IfcValue{}; } return ((express::base)(get_attribute_value(5))).as<::Ifc4x3_add1::IfcValue>(); } void Ifc4x3_add1::IfcPropertyBoundedValue::setSetPointValue(const ::Ifc4x3_add1::IfcValue& v) { set_attribute_value(5, v);if constexpr (false)unset_attribute_value(5); } @@ -13017,9 +13017,9 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcPropertyDefinition::Class() { return Ifc4x3_add1::IfcPropertyDefinition Ifc4x3_add1::IfcPropertyDefinition::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }; return *this; } // Function implementations for IfcPropertyDependencyRelationship -::Ifc4x3_add1::IfcProperty Ifc4x3_add1::IfcPropertyDependencyRelationship::DependingProperty() const { return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3_add1::IfcProperty>(); } +::Ifc4x3_add1::IfcProperty Ifc4x3_add1::IfcPropertyDependencyRelationship::DependingProperty() const { return ((express::base)(get_attribute_value(2))).as<::Ifc4x3_add1::IfcProperty>(); } void Ifc4x3_add1::IfcPropertyDependencyRelationship::setDependingProperty(const ::Ifc4x3_add1::IfcProperty& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } -::Ifc4x3_add1::IfcProperty Ifc4x3_add1::IfcPropertyDependencyRelationship::DependantProperty() const { return ((express::Base)(get_attribute_value(3))).as<::Ifc4x3_add1::IfcProperty>(); } +::Ifc4x3_add1::IfcProperty Ifc4x3_add1::IfcPropertyDependencyRelationship::DependantProperty() const { return ((express::base)(get_attribute_value(3))).as<::Ifc4x3_add1::IfcProperty>(); } void Ifc4x3_add1::IfcPropertyDependencyRelationship::setDependantProperty(const ::Ifc4x3_add1::IfcProperty& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } std::optional< std::string > Ifc4x3_add1::IfcPropertyDependencyRelationship::Expression() const { if(get_attribute_value(4).isNull()) { return std::nullopt; } std::string v = get_attribute_value(4); return v; } void Ifc4x3_add1::IfcPropertyDependencyRelationship::setExpression(const std::optional< std::string >& v) { if (v) {set_attribute_value(4, *v);} else {unset_attribute_value(4);} } @@ -13029,41 +13029,41 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcPropertyDependencyRelationship::Clas Ifc4x3_add1::IfcPropertyDependencyRelationship Ifc4x3_add1::IfcPropertyDependencyRelationship::initialize(std::optional< std::string > v1_Name, std::optional< std::string > v2_Description, ::Ifc4x3_add1::IfcProperty v3_DependingProperty, ::Ifc4x3_add1::IfcProperty v4_DependantProperty, std::optional< std::string > v5_Expression) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); } if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, (v3_DependingProperty));set_attribute_value(3, (v4_DependantProperty)); if (v5_Expression) {set_attribute_value(4, (*v5_Expression)); }; return *this; } // Function implementations for IfcPropertyEnumeratedValue -std::optional< std::vector< ::Ifc4x3_add1::IfcValue > > Ifc4x3_add1::IfcPropertyEnumeratedValue::EnumerationValues() const { if(get_attribute_value(2).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(2); return cast_vector<::Ifc4x3_add1::IfcValue>(es); } -void Ifc4x3_add1::IfcPropertyEnumeratedValue::setEnumerationValues(const std::optional< std::vector< ::Ifc4x3_add1::IfcValue > >& v) { if (v) {set_attribute_value(2, cast_vector(*v));} else {unset_attribute_value(2);} } -::Ifc4x3_add1::IfcPropertyEnumeration Ifc4x3_add1::IfcPropertyEnumeratedValue::EnumerationReference() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3_add1::IfcPropertyEnumeration{}; } return ((express::Base)(get_attribute_value(3))).as<::Ifc4x3_add1::IfcPropertyEnumeration>(); } +std::optional< std::vector< ::Ifc4x3_add1::IfcValue > > Ifc4x3_add1::IfcPropertyEnumeratedValue::EnumerationValues() const { if(get_attribute_value(2).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(2); return cast_vector<::Ifc4x3_add1::IfcValue>(es); } +void Ifc4x3_add1::IfcPropertyEnumeratedValue::setEnumerationValues(const std::optional< std::vector< ::Ifc4x3_add1::IfcValue > >& v) { if (v) {set_attribute_value(2, cast_vector(*v));} else {unset_attribute_value(2);} } +::Ifc4x3_add1::IfcPropertyEnumeration Ifc4x3_add1::IfcPropertyEnumeratedValue::EnumerationReference() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3_add1::IfcPropertyEnumeration{}; } return ((express::base)(get_attribute_value(3))).as<::Ifc4x3_add1::IfcPropertyEnumeration>(); } void Ifc4x3_add1::IfcPropertyEnumeratedValue::setEnumerationReference(const ::Ifc4x3_add1::IfcPropertyEnumeration& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } const ifcopenshell::entity& Ifc4x3_add1::IfcPropertyEnumeratedValue::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[821]); } -Ifc4x3_add1::IfcPropertyEnumeratedValue Ifc4x3_add1::IfcPropertyEnumeratedValue::initialize(std::string v1_Name, std::optional< std::string > v2_Specification, std::optional< std::vector< ::Ifc4x3_add1::IfcValue > > v3_EnumerationValues, ::Ifc4x3_add1::IfcPropertyEnumeration v4_EnumerationReference) { set_attribute_value(0, (v1_Name)); if (v2_Specification) {set_attribute_value(1, (*v2_Specification)); } if (v3_EnumerationValues) {set_attribute_value(2, cast_vector(*v3_EnumerationValues)); }set_attribute_value(3, (v4_EnumerationReference));; return *this; } +Ifc4x3_add1::IfcPropertyEnumeratedValue Ifc4x3_add1::IfcPropertyEnumeratedValue::initialize(std::string v1_Name, std::optional< std::string > v2_Specification, std::optional< std::vector< ::Ifc4x3_add1::IfcValue > > v3_EnumerationValues, ::Ifc4x3_add1::IfcPropertyEnumeration v4_EnumerationReference) { set_attribute_value(0, (v1_Name)); if (v2_Specification) {set_attribute_value(1, (*v2_Specification)); } if (v3_EnumerationValues) {set_attribute_value(2, cast_vector(*v3_EnumerationValues)); }set_attribute_value(3, (v4_EnumerationReference));; return *this; } // Function implementations for IfcPropertyEnumeration std::string Ifc4x3_add1::IfcPropertyEnumeration::Name() const { std::string v = get_attribute_value(0); return v; } void Ifc4x3_add1::IfcPropertyEnumeration::setName(const std::string& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } -std::vector< ::Ifc4x3_add1::IfcValue > Ifc4x3_add1::IfcPropertyEnumeration::EnumerationValues() const { std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3_add1::IfcValue>(es); } -void Ifc4x3_add1::IfcPropertyEnumeration::setEnumerationValues(const std::vector< ::Ifc4x3_add1::IfcValue >& v) { set_attribute_value(1, cast_vector(v));if constexpr (false)unset_attribute_value(1); } -::Ifc4x3_add1::IfcUnit Ifc4x3_add1::IfcPropertyEnumeration::Unit() const { if(get_attribute_value(2).isNull()) { return ::Ifc4x3_add1::IfcUnit{}; } return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3_add1::IfcUnit>(); } +std::vector< ::Ifc4x3_add1::IfcValue > Ifc4x3_add1::IfcPropertyEnumeration::EnumerationValues() const { std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3_add1::IfcValue>(es); } +void Ifc4x3_add1::IfcPropertyEnumeration::setEnumerationValues(const std::vector< ::Ifc4x3_add1::IfcValue >& v) { set_attribute_value(1, cast_vector(v));if constexpr (false)unset_attribute_value(1); } +::Ifc4x3_add1::IfcUnit Ifc4x3_add1::IfcPropertyEnumeration::Unit() const { if(get_attribute_value(2).isNull()) { return ::Ifc4x3_add1::IfcUnit{}; } return ((express::base)(get_attribute_value(2))).as<::Ifc4x3_add1::IfcUnit>(); } void Ifc4x3_add1::IfcPropertyEnumeration::setUnit(const ::Ifc4x3_add1::IfcUnit& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } const ifcopenshell::entity& Ifc4x3_add1::IfcPropertyEnumeration::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[822]); } -Ifc4x3_add1::IfcPropertyEnumeration Ifc4x3_add1::IfcPropertyEnumeration::initialize(std::string v1_Name, std::vector< ::Ifc4x3_add1::IfcValue > v2_EnumerationValues, ::Ifc4x3_add1::IfcUnit v3_Unit) { set_attribute_value(0, (v1_Name));set_attribute_value(1, cast_vector(v2_EnumerationValues));set_attribute_value(2, (v3_Unit));; return *this; } +Ifc4x3_add1::IfcPropertyEnumeration Ifc4x3_add1::IfcPropertyEnumeration::initialize(std::string v1_Name, std::vector< ::Ifc4x3_add1::IfcValue > v2_EnumerationValues, ::Ifc4x3_add1::IfcUnit v3_Unit) { set_attribute_value(0, (v1_Name));set_attribute_value(1, cast_vector(v2_EnumerationValues));set_attribute_value(2, (v3_Unit));; return *this; } // Function implementations for IfcPropertyListValue -std::optional< std::vector< ::Ifc4x3_add1::IfcValue > > Ifc4x3_add1::IfcPropertyListValue::ListValues() const { if(get_attribute_value(2).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(2); return cast_vector<::Ifc4x3_add1::IfcValue>(es); } -void Ifc4x3_add1::IfcPropertyListValue::setListValues(const std::optional< std::vector< ::Ifc4x3_add1::IfcValue > >& v) { if (v) {set_attribute_value(2, cast_vector(*v));} else {unset_attribute_value(2);} } -::Ifc4x3_add1::IfcUnit Ifc4x3_add1::IfcPropertyListValue::Unit() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3_add1::IfcUnit{}; } return ((express::Base)(get_attribute_value(3))).as<::Ifc4x3_add1::IfcUnit>(); } +std::optional< std::vector< ::Ifc4x3_add1::IfcValue > > Ifc4x3_add1::IfcPropertyListValue::ListValues() const { if(get_attribute_value(2).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(2); return cast_vector<::Ifc4x3_add1::IfcValue>(es); } +void Ifc4x3_add1::IfcPropertyListValue::setListValues(const std::optional< std::vector< ::Ifc4x3_add1::IfcValue > >& v) { if (v) {set_attribute_value(2, cast_vector(*v));} else {unset_attribute_value(2);} } +::Ifc4x3_add1::IfcUnit Ifc4x3_add1::IfcPropertyListValue::Unit() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3_add1::IfcUnit{}; } return ((express::base)(get_attribute_value(3))).as<::Ifc4x3_add1::IfcUnit>(); } void Ifc4x3_add1::IfcPropertyListValue::setUnit(const ::Ifc4x3_add1::IfcUnit& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } const ifcopenshell::entity& Ifc4x3_add1::IfcPropertyListValue::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[823]); } -Ifc4x3_add1::IfcPropertyListValue Ifc4x3_add1::IfcPropertyListValue::initialize(std::string v1_Name, std::optional< std::string > v2_Specification, std::optional< std::vector< ::Ifc4x3_add1::IfcValue > > v3_ListValues, ::Ifc4x3_add1::IfcUnit v4_Unit) { set_attribute_value(0, (v1_Name)); if (v2_Specification) {set_attribute_value(1, (*v2_Specification)); } if (v3_ListValues) {set_attribute_value(2, cast_vector(*v3_ListValues)); }set_attribute_value(3, (v4_Unit));; return *this; } +Ifc4x3_add1::IfcPropertyListValue Ifc4x3_add1::IfcPropertyListValue::initialize(std::string v1_Name, std::optional< std::string > v2_Specification, std::optional< std::vector< ::Ifc4x3_add1::IfcValue > > v3_ListValues, ::Ifc4x3_add1::IfcUnit v4_Unit) { set_attribute_value(0, (v1_Name)); if (v2_Specification) {set_attribute_value(1, (*v2_Specification)); } if (v3_ListValues) {set_attribute_value(2, cast_vector(*v3_ListValues)); }set_attribute_value(3, (v4_Unit));; return *this; } // Function implementations for IfcPropertyReferenceValue std::optional< std::string > Ifc4x3_add1::IfcPropertyReferenceValue::UsageName() const { if(get_attribute_value(2).isNull()) { return std::nullopt; } std::string v = get_attribute_value(2); return v; } void Ifc4x3_add1::IfcPropertyReferenceValue::setUsageName(const std::optional< std::string >& v) { if (v) {set_attribute_value(2, *v);} else {unset_attribute_value(2);} } -::Ifc4x3_add1::IfcObjectReferenceSelect Ifc4x3_add1::IfcPropertyReferenceValue::PropertyReference() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3_add1::IfcObjectReferenceSelect{}; } return ((express::Base)(get_attribute_value(3))).as<::Ifc4x3_add1::IfcObjectReferenceSelect>(); } +::Ifc4x3_add1::IfcObjectReferenceSelect Ifc4x3_add1::IfcPropertyReferenceValue::PropertyReference() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3_add1::IfcObjectReferenceSelect{}; } return ((express::base)(get_attribute_value(3))).as<::Ifc4x3_add1::IfcObjectReferenceSelect>(); } void Ifc4x3_add1::IfcPropertyReferenceValue::setPropertyReference(const ::Ifc4x3_add1::IfcObjectReferenceSelect& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } @@ -13071,12 +13071,12 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcPropertyReferenceValue::Class() { re Ifc4x3_add1::IfcPropertyReferenceValue Ifc4x3_add1::IfcPropertyReferenceValue::initialize(std::string v1_Name, std::optional< std::string > v2_Specification, std::optional< std::string > v3_UsageName, ::Ifc4x3_add1::IfcObjectReferenceSelect v4_PropertyReference) { set_attribute_value(0, (v1_Name)); if (v2_Specification) {set_attribute_value(1, (*v2_Specification)); } if (v3_UsageName) {set_attribute_value(2, (*v3_UsageName)); }set_attribute_value(3, (v4_PropertyReference));; return *this; } // Function implementations for IfcPropertySet -std::vector< ::Ifc4x3_add1::IfcProperty > Ifc4x3_add1::IfcPropertySet::HasProperties() const { std::vector es = get_attribute_value(4); return cast_vector<::Ifc4x3_add1::IfcProperty>(es); } -void Ifc4x3_add1::IfcPropertySet::setHasProperties(const std::vector< ::Ifc4x3_add1::IfcProperty >& v) { set_attribute_value(4, cast_vector(v));if constexpr (false)unset_attribute_value(4); } +std::vector< ::Ifc4x3_add1::IfcProperty > Ifc4x3_add1::IfcPropertySet::HasProperties() const { std::vector es = get_attribute_value(4); return cast_vector<::Ifc4x3_add1::IfcProperty>(es); } +void Ifc4x3_add1::IfcPropertySet::setHasProperties(const std::vector< ::Ifc4x3_add1::IfcProperty >& v) { set_attribute_value(4, cast_vector(v));if constexpr (false)unset_attribute_value(4); } const ifcopenshell::entity& Ifc4x3_add1::IfcPropertySet::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[825]); } -Ifc4x3_add1::IfcPropertySet Ifc4x3_add1::IfcPropertySet::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3_add1::IfcProperty > v5_HasProperties) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_HasProperties));; return *this; } +Ifc4x3_add1::IfcPropertySet Ifc4x3_add1::IfcPropertySet::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3_add1::IfcProperty > v5_HasProperties) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_HasProperties));; return *this; } // Function implementations for IfcPropertySetDefinition @@ -13092,18 +13092,18 @@ std::optional< ::Ifc4x3_add1::IfcPropertySetTemplateTypeEnum::Value > Ifc4x3_add void Ifc4x3_add1::IfcPropertySetTemplate::setTemplateType(const std::optional< ::Ifc4x3_add1::IfcPropertySetTemplateTypeEnum::Value >& v) { if (v) {set_attribute_value(4, enumeration_reference(&::Ifc4x3_add1::IfcPropertySetTemplateTypeEnum::Class(), (size_t) *v));} else {unset_attribute_value(4);} } std::optional< std::string > Ifc4x3_add1::IfcPropertySetTemplate::ApplicableEntity() const { if(get_attribute_value(5).isNull()) { return std::nullopt; } std::string v = get_attribute_value(5); return v; } void Ifc4x3_add1::IfcPropertySetTemplate::setApplicableEntity(const std::optional< std::string >& v) { if (v) {set_attribute_value(5, *v);} else {unset_attribute_value(5);} } -std::vector< ::Ifc4x3_add1::IfcPropertyTemplate > Ifc4x3_add1::IfcPropertySetTemplate::HasPropertyTemplates() const { std::vector es = get_attribute_value(6); return cast_vector<::Ifc4x3_add1::IfcPropertyTemplate>(es); } -void Ifc4x3_add1::IfcPropertySetTemplate::setHasPropertyTemplates(const std::vector< ::Ifc4x3_add1::IfcPropertyTemplate >& v) { set_attribute_value(6, cast_vector(v));if constexpr (false)unset_attribute_value(6); } +std::vector< ::Ifc4x3_add1::IfcPropertyTemplate > Ifc4x3_add1::IfcPropertySetTemplate::HasPropertyTemplates() const { std::vector es = get_attribute_value(6); return cast_vector<::Ifc4x3_add1::IfcPropertyTemplate>(es); } +void Ifc4x3_add1::IfcPropertySetTemplate::setHasPropertyTemplates(const std::vector< ::Ifc4x3_add1::IfcPropertyTemplate >& v) { set_attribute_value(6, cast_vector(v));if constexpr (false)unset_attribute_value(6); } std::vector<::Ifc4x3_add1::IfcRelDefinesByTemplate> Ifc4x3_add1::IfcPropertySetTemplate::Defines() const { return cast_vector(file()->get_inverse(data()->id(), IFC4X3_ADD1_types[934], 5)); } const ifcopenshell::entity& Ifc4x3_add1::IfcPropertySetTemplate::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[829]); } -Ifc4x3_add1::IfcPropertySetTemplate Ifc4x3_add1::IfcPropertySetTemplate::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< ::Ifc4x3_add1::IfcPropertySetTemplateTypeEnum::Value > v5_TemplateType, std::optional< std::string > v6_ApplicableEntity, std::vector< ::Ifc4x3_add1::IfcPropertyTemplate > v7_HasPropertyTemplates) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_TemplateType) {set_attribute_value(4, (enumeration_reference(&::Ifc4x3_add1::IfcPropertySetTemplateTypeEnum::Class(),(size_t)*v5_TemplateType))); } if (v6_ApplicableEntity) {set_attribute_value(5, (*v6_ApplicableEntity)); }set_attribute_value(6, cast_vector(v7_HasPropertyTemplates));; return *this; } +Ifc4x3_add1::IfcPropertySetTemplate Ifc4x3_add1::IfcPropertySetTemplate::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< ::Ifc4x3_add1::IfcPropertySetTemplateTypeEnum::Value > v5_TemplateType, std::optional< std::string > v6_ApplicableEntity, std::vector< ::Ifc4x3_add1::IfcPropertyTemplate > v7_HasPropertyTemplates) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_TemplateType) {set_attribute_value(4, (enumeration_reference(&::Ifc4x3_add1::IfcPropertySetTemplateTypeEnum::Class(),(size_t)*v5_TemplateType))); } if (v6_ApplicableEntity) {set_attribute_value(5, (*v6_ApplicableEntity)); }set_attribute_value(6, cast_vector(v7_HasPropertyTemplates));; return *this; } // Function implementations for IfcPropertySingleValue -::Ifc4x3_add1::IfcValue Ifc4x3_add1::IfcPropertySingleValue::NominalValue() const { if(get_attribute_value(2).isNull()) { return ::Ifc4x3_add1::IfcValue{}; } return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3_add1::IfcValue>(); } +::Ifc4x3_add1::IfcValue Ifc4x3_add1::IfcPropertySingleValue::NominalValue() const { if(get_attribute_value(2).isNull()) { return ::Ifc4x3_add1::IfcValue{}; } return ((express::base)(get_attribute_value(2))).as<::Ifc4x3_add1::IfcValue>(); } void Ifc4x3_add1::IfcPropertySingleValue::setNominalValue(const ::Ifc4x3_add1::IfcValue& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } -::Ifc4x3_add1::IfcUnit Ifc4x3_add1::IfcPropertySingleValue::Unit() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3_add1::IfcUnit{}; } return ((express::Base)(get_attribute_value(3))).as<::Ifc4x3_add1::IfcUnit>(); } +::Ifc4x3_add1::IfcUnit Ifc4x3_add1::IfcPropertySingleValue::Unit() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3_add1::IfcUnit{}; } return ((express::base)(get_attribute_value(3))).as<::Ifc4x3_add1::IfcUnit>(); } void Ifc4x3_add1::IfcPropertySingleValue::setUnit(const ::Ifc4x3_add1::IfcUnit& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } @@ -13111,22 +13111,22 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcPropertySingleValue::Class() { retur Ifc4x3_add1::IfcPropertySingleValue Ifc4x3_add1::IfcPropertySingleValue::initialize(std::string v1_Name, std::optional< std::string > v2_Specification, ::Ifc4x3_add1::IfcValue v3_NominalValue, ::Ifc4x3_add1::IfcUnit v4_Unit) { set_attribute_value(0, (v1_Name)); if (v2_Specification) {set_attribute_value(1, (*v2_Specification)); }set_attribute_value(2, (v3_NominalValue));set_attribute_value(3, (v4_Unit));; return *this; } // Function implementations for IfcPropertyTableValue -std::optional< std::vector< ::Ifc4x3_add1::IfcValue > > Ifc4x3_add1::IfcPropertyTableValue::DefiningValues() const { if(get_attribute_value(2).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(2); return cast_vector<::Ifc4x3_add1::IfcValue>(es); } -void Ifc4x3_add1::IfcPropertyTableValue::setDefiningValues(const std::optional< std::vector< ::Ifc4x3_add1::IfcValue > >& v) { if (v) {set_attribute_value(2, cast_vector(*v));} else {unset_attribute_value(2);} } -std::optional< std::vector< ::Ifc4x3_add1::IfcValue > > Ifc4x3_add1::IfcPropertyTableValue::DefinedValues() const { if(get_attribute_value(3).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(3); return cast_vector<::Ifc4x3_add1::IfcValue>(es); } -void Ifc4x3_add1::IfcPropertyTableValue::setDefinedValues(const std::optional< std::vector< ::Ifc4x3_add1::IfcValue > >& v) { if (v) {set_attribute_value(3, cast_vector(*v));} else {unset_attribute_value(3);} } +std::optional< std::vector< ::Ifc4x3_add1::IfcValue > > Ifc4x3_add1::IfcPropertyTableValue::DefiningValues() const { if(get_attribute_value(2).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(2); return cast_vector<::Ifc4x3_add1::IfcValue>(es); } +void Ifc4x3_add1::IfcPropertyTableValue::setDefiningValues(const std::optional< std::vector< ::Ifc4x3_add1::IfcValue > >& v) { if (v) {set_attribute_value(2, cast_vector(*v));} else {unset_attribute_value(2);} } +std::optional< std::vector< ::Ifc4x3_add1::IfcValue > > Ifc4x3_add1::IfcPropertyTableValue::DefinedValues() const { if(get_attribute_value(3).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(3); return cast_vector<::Ifc4x3_add1::IfcValue>(es); } +void Ifc4x3_add1::IfcPropertyTableValue::setDefinedValues(const std::optional< std::vector< ::Ifc4x3_add1::IfcValue > >& v) { if (v) {set_attribute_value(3, cast_vector(*v));} else {unset_attribute_value(3);} } std::optional< std::string > Ifc4x3_add1::IfcPropertyTableValue::Expression() const { if(get_attribute_value(4).isNull()) { return std::nullopt; } std::string v = get_attribute_value(4); return v; } void Ifc4x3_add1::IfcPropertyTableValue::setExpression(const std::optional< std::string >& v) { if (v) {set_attribute_value(4, *v);} else {unset_attribute_value(4);} } -::Ifc4x3_add1::IfcUnit Ifc4x3_add1::IfcPropertyTableValue::DefiningUnit() const { if(get_attribute_value(5).isNull()) { return ::Ifc4x3_add1::IfcUnit{}; } return ((express::Base)(get_attribute_value(5))).as<::Ifc4x3_add1::IfcUnit>(); } +::Ifc4x3_add1::IfcUnit Ifc4x3_add1::IfcPropertyTableValue::DefiningUnit() const { if(get_attribute_value(5).isNull()) { return ::Ifc4x3_add1::IfcUnit{}; } return ((express::base)(get_attribute_value(5))).as<::Ifc4x3_add1::IfcUnit>(); } void Ifc4x3_add1::IfcPropertyTableValue::setDefiningUnit(const ::Ifc4x3_add1::IfcUnit& v) { set_attribute_value(5, v);if constexpr (false)unset_attribute_value(5); } -::Ifc4x3_add1::IfcUnit Ifc4x3_add1::IfcPropertyTableValue::DefinedUnit() const { if(get_attribute_value(6).isNull()) { return ::Ifc4x3_add1::IfcUnit{}; } return ((express::Base)(get_attribute_value(6))).as<::Ifc4x3_add1::IfcUnit>(); } +::Ifc4x3_add1::IfcUnit Ifc4x3_add1::IfcPropertyTableValue::DefinedUnit() const { if(get_attribute_value(6).isNull()) { return ::Ifc4x3_add1::IfcUnit{}; } return ((express::base)(get_attribute_value(6))).as<::Ifc4x3_add1::IfcUnit>(); } void Ifc4x3_add1::IfcPropertyTableValue::setDefinedUnit(const ::Ifc4x3_add1::IfcUnit& v) { set_attribute_value(6, v);if constexpr (false)unset_attribute_value(6); } std::optional< ::Ifc4x3_add1::IfcCurveInterpolationEnum::Value > Ifc4x3_add1::IfcPropertyTableValue::CurveInterpolation() const { if(get_attribute_value(7).isNull()) { return std::nullopt; } return ::Ifc4x3_add1::IfcCurveInterpolationEnum::FromString(get_attribute_value(7)); } void Ifc4x3_add1::IfcPropertyTableValue::setCurveInterpolation(const std::optional< ::Ifc4x3_add1::IfcCurveInterpolationEnum::Value >& v) { if (v) {set_attribute_value(7, enumeration_reference(&::Ifc4x3_add1::IfcCurveInterpolationEnum::Class(), (size_t) *v));} else {unset_attribute_value(7);} } const ifcopenshell::entity& Ifc4x3_add1::IfcPropertyTableValue::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[832]); } -Ifc4x3_add1::IfcPropertyTableValue Ifc4x3_add1::IfcPropertyTableValue::initialize(std::string v1_Name, std::optional< std::string > v2_Specification, std::optional< std::vector< ::Ifc4x3_add1::IfcValue > > v3_DefiningValues, std::optional< std::vector< ::Ifc4x3_add1::IfcValue > > v4_DefinedValues, std::optional< std::string > v5_Expression, ::Ifc4x3_add1::IfcUnit v6_DefiningUnit, ::Ifc4x3_add1::IfcUnit v7_DefinedUnit, std::optional< ::Ifc4x3_add1::IfcCurveInterpolationEnum::Value > v8_CurveInterpolation) { set_attribute_value(0, (v1_Name)); if (v2_Specification) {set_attribute_value(1, (*v2_Specification)); } if (v3_DefiningValues) {set_attribute_value(2, cast_vector(*v3_DefiningValues)); } if (v4_DefinedValues) {set_attribute_value(3, cast_vector(*v4_DefinedValues)); } if (v5_Expression) {set_attribute_value(4, (*v5_Expression)); }set_attribute_value(5, (v6_DefiningUnit));set_attribute_value(6, (v7_DefinedUnit)); if (v8_CurveInterpolation) {set_attribute_value(7, (enumeration_reference(&::Ifc4x3_add1::IfcCurveInterpolationEnum::Class(),(size_t)*v8_CurveInterpolation))); }; return *this; } +Ifc4x3_add1::IfcPropertyTableValue Ifc4x3_add1::IfcPropertyTableValue::initialize(std::string v1_Name, std::optional< std::string > v2_Specification, std::optional< std::vector< ::Ifc4x3_add1::IfcValue > > v3_DefiningValues, std::optional< std::vector< ::Ifc4x3_add1::IfcValue > > v4_DefinedValues, std::optional< std::string > v5_Expression, ::Ifc4x3_add1::IfcUnit v6_DefiningUnit, ::Ifc4x3_add1::IfcUnit v7_DefinedUnit, std::optional< ::Ifc4x3_add1::IfcCurveInterpolationEnum::Value > v8_CurveInterpolation) { set_attribute_value(0, (v1_Name)); if (v2_Specification) {set_attribute_value(1, (*v2_Specification)); } if (v3_DefiningValues) {set_attribute_value(2, cast_vector(*v3_DefiningValues)); } if (v4_DefinedValues) {set_attribute_value(3, cast_vector(*v4_DefinedValues)); } if (v5_Expression) {set_attribute_value(4, (*v5_Expression)); }set_attribute_value(5, (v6_DefiningUnit));set_attribute_value(6, (v7_DefinedUnit)); if (v8_CurveInterpolation) {set_attribute_value(7, (enumeration_reference(&::Ifc4x3_add1::IfcCurveInterpolationEnum::Class(),(size_t)*v8_CurveInterpolation))); }; return *this; } // Function implementations for IfcPropertyTemplate @@ -13164,7 +13164,7 @@ void Ifc4x3_add1::IfcProtectiveDeviceTrippingUnitType::setPredefinedType(const : const ifcopenshell::entity& Ifc4x3_add1::IfcProtectiveDeviceTrippingUnitType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[837]); } -Ifc4x3_add1::IfcProtectiveDeviceTrippingUnitType Ifc4x3_add1::IfcProtectiveDeviceTrippingUnitType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcProtectiveDeviceTrippingUnitTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcProtectiveDeviceTrippingUnitTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_add1::IfcProtectiveDeviceTrippingUnitType Ifc4x3_add1::IfcProtectiveDeviceTrippingUnitType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcProtectiveDeviceTrippingUnitTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcProtectiveDeviceTrippingUnitTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcProtectiveDeviceType ::Ifc4x3_add1::IfcProtectiveDeviceTypeEnum::Value Ifc4x3_add1::IfcProtectiveDeviceType::PredefinedType() const { return ::Ifc4x3_add1::IfcProtectiveDeviceTypeEnum::FromString(get_attribute_value(9)); } @@ -13172,7 +13172,7 @@ void Ifc4x3_add1::IfcProtectiveDeviceType::setPredefinedType(const ::Ifc4x3_add1 const ifcopenshell::entity& Ifc4x3_add1::IfcProtectiveDeviceType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[839]); } -Ifc4x3_add1::IfcProtectiveDeviceType Ifc4x3_add1::IfcProtectiveDeviceType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcProtectiveDeviceTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcProtectiveDeviceTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_add1::IfcProtectiveDeviceType Ifc4x3_add1::IfcProtectiveDeviceType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcProtectiveDeviceTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcProtectiveDeviceTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcPump std::optional< ::Ifc4x3_add1::IfcPumpTypeEnum::Value > Ifc4x3_add1::IfcPump::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_add1::IfcPumpTypeEnum::FromString(get_attribute_value(8)); } @@ -13188,7 +13188,7 @@ void Ifc4x3_add1::IfcPumpType::setPredefinedType(const ::Ifc4x3_add1::IfcPumpTyp const ifcopenshell::entity& Ifc4x3_add1::IfcPumpType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[842]); } -Ifc4x3_add1::IfcPumpType Ifc4x3_add1::IfcPumpType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcPumpTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcPumpTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_add1::IfcPumpType Ifc4x3_add1::IfcPumpType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcPumpTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcPumpTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcQuantityArea double Ifc4x3_add1::IfcQuantityArea::AreaValue() const { double v = get_attribute_value(3); return v; } @@ -13280,7 +13280,7 @@ void Ifc4x3_add1::IfcRailType::setPredefinedType(const ::Ifc4x3_add1::IfcRailTyp const ifcopenshell::entity& Ifc4x3_add1::IfcRailType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[857]); } -Ifc4x3_add1::IfcRailType Ifc4x3_add1::IfcRailType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcRailTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcRailTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_add1::IfcRailType Ifc4x3_add1::IfcRailType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcRailTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcRailTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcRailing std::optional< ::Ifc4x3_add1::IfcRailingTypeEnum::Value > Ifc4x3_add1::IfcRailing::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_add1::IfcRailingTypeEnum::FromString(get_attribute_value(8)); } @@ -13296,7 +13296,7 @@ void Ifc4x3_add1::IfcRailingType::setPredefinedType(const ::Ifc4x3_add1::IfcRail const ifcopenshell::entity& Ifc4x3_add1::IfcRailingType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[855]); } -Ifc4x3_add1::IfcRailingType Ifc4x3_add1::IfcRailingType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcRailingTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcRailingTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_add1::IfcRailingType Ifc4x3_add1::IfcRailingType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcRailingTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcRailingTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcRailway std::optional< ::Ifc4x3_add1::IfcRailwayTypeEnum::Value > Ifc4x3_add1::IfcRailway::PredefinedType() const { if(get_attribute_value(9).isNull()) { return std::nullopt; } return ::Ifc4x3_add1::IfcRailwayTypeEnum::FromString(get_attribute_value(9)); } @@ -13336,7 +13336,7 @@ void Ifc4x3_add1::IfcRampFlightType::setPredefinedType(const ::Ifc4x3_add1::IfcR const ifcopenshell::entity& Ifc4x3_add1::IfcRampFlightType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[865]); } -Ifc4x3_add1::IfcRampFlightType Ifc4x3_add1::IfcRampFlightType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcRampFlightTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcRampFlightTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_add1::IfcRampFlightType Ifc4x3_add1::IfcRampFlightType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcRampFlightTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcRampFlightTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcRampType ::Ifc4x3_add1::IfcRampTypeEnum::Value Ifc4x3_add1::IfcRampType::PredefinedType() const { return ::Ifc4x3_add1::IfcRampTypeEnum::FromString(get_attribute_value(9)); } @@ -13344,7 +13344,7 @@ void Ifc4x3_add1::IfcRampType::setPredefinedType(const ::Ifc4x3_add1::IfcRampTyp const ifcopenshell::entity& Ifc4x3_add1::IfcRampType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[867]); } -Ifc4x3_add1::IfcRampType Ifc4x3_add1::IfcRampType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcRampTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcRampTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_add1::IfcRampType Ifc4x3_add1::IfcRampType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcRampTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcRampTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcRationalBSplineCurveWithKnots std::vector< double > /*[2:?]*/ Ifc4x3_add1::IfcRationalBSplineCurveWithKnots::WeightsData() const { std::vector< double > /*[2:?]*/ v = get_attribute_value(8); return v; } @@ -13352,7 +13352,7 @@ void Ifc4x3_add1::IfcRationalBSplineCurveWithKnots::setWeightsData(const std::ve const ifcopenshell::entity& Ifc4x3_add1::IfcRationalBSplineCurveWithKnots::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[870]); } -Ifc4x3_add1::IfcRationalBSplineCurveWithKnots Ifc4x3_add1::IfcRationalBSplineCurveWithKnots::initialize(int64_t v1_Degree, std::vector< ::Ifc4x3_add1::IfcCartesianPoint > v2_ControlPointsList, ::Ifc4x3_add1::IfcBSplineCurveForm::Value v3_CurveForm, boost::logic::tribool v4_ClosedCurve, boost::logic::tribool v5_SelfIntersect, std::vector< int64_t > /*[2:?]*/ v6_KnotMultiplicities, std::vector< double > /*[2:?]*/ v7_Knots, ::Ifc4x3_add1::IfcKnotType::Value v8_KnotSpec, std::vector< double > /*[2:?]*/ v9_WeightsData) { set_attribute_value(0, (v1_Degree));set_attribute_value(1, cast_vector(v2_ControlPointsList));set_attribute_value(2, (enumeration_reference(&::Ifc4x3_add1::IfcBSplineCurveForm::Class(),(size_t)v3_CurveForm)));set_attribute_value(3, (v4_ClosedCurve));set_attribute_value(4, (v5_SelfIntersect));set_attribute_value(5, (v6_KnotMultiplicities));set_attribute_value(6, (v7_Knots));set_attribute_value(7, (enumeration_reference(&::Ifc4x3_add1::IfcKnotType::Class(),(size_t)v8_KnotSpec)));set_attribute_value(8, (v9_WeightsData));; return *this; } +Ifc4x3_add1::IfcRationalBSplineCurveWithKnots Ifc4x3_add1::IfcRationalBSplineCurveWithKnots::initialize(int64_t v1_Degree, std::vector< ::Ifc4x3_add1::IfcCartesianPoint > v2_ControlPointsList, ::Ifc4x3_add1::IfcBSplineCurveForm::Value v3_CurveForm, boost::logic::tribool v4_ClosedCurve, boost::logic::tribool v5_SelfIntersect, std::vector< int64_t > /*[2:?]*/ v6_KnotMultiplicities, std::vector< double > /*[2:?]*/ v7_Knots, ::Ifc4x3_add1::IfcKnotType::Value v8_KnotSpec, std::vector< double > /*[2:?]*/ v9_WeightsData) { set_attribute_value(0, (v1_Degree));set_attribute_value(1, cast_vector(v2_ControlPointsList));set_attribute_value(2, (enumeration_reference(&::Ifc4x3_add1::IfcBSplineCurveForm::Class(),(size_t)v3_CurveForm)));set_attribute_value(3, (v4_ClosedCurve));set_attribute_value(4, (v5_SelfIntersect));set_attribute_value(5, (v6_KnotMultiplicities));set_attribute_value(6, (v7_Knots));set_attribute_value(7, (enumeration_reference(&::Ifc4x3_add1::IfcKnotType::Class(),(size_t)v8_KnotSpec)));set_attribute_value(8, (v9_WeightsData));; return *this; } // Function implementations for IfcRationalBSplineSurfaceWithKnots std::vector< std::vector< double > > Ifc4x3_add1::IfcRationalBSplineSurfaceWithKnots::WeightsData() const { std::vector< std::vector< double > > v = get_attribute_value(12); return v; } @@ -13360,7 +13360,7 @@ void Ifc4x3_add1::IfcRationalBSplineSurfaceWithKnots::setWeightsData(const std:: const ifcopenshell::entity& Ifc4x3_add1::IfcRationalBSplineSurfaceWithKnots::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[871]); } -Ifc4x3_add1::IfcRationalBSplineSurfaceWithKnots Ifc4x3_add1::IfcRationalBSplineSurfaceWithKnots::initialize(int64_t v1_UDegree, int64_t v2_VDegree, std::vector< std::vector< ::Ifc4x3_add1::IfcCartesianPoint > > v3_ControlPointsList, ::Ifc4x3_add1::IfcBSplineSurfaceForm::Value v4_SurfaceForm, boost::logic::tribool v5_UClosed, boost::logic::tribool v6_VClosed, boost::logic::tribool v7_SelfIntersect, std::vector< int64_t > /*[2:?]*/ v8_UMultiplicities, std::vector< int64_t > /*[2:?]*/ v9_VMultiplicities, std::vector< double > /*[2:?]*/ v10_UKnots, std::vector< double > /*[2:?]*/ v11_VKnots, ::Ifc4x3_add1::IfcKnotType::Value v12_KnotSpec, std::vector< std::vector< double > > v13_WeightsData) { set_attribute_value(0, (v1_UDegree));set_attribute_value(1, (v2_VDegree));set_attribute_value(2, cast_vector(v3_ControlPointsList));set_attribute_value(3, (enumeration_reference(&::Ifc4x3_add1::IfcBSplineSurfaceForm::Class(),(size_t)v4_SurfaceForm)));set_attribute_value(4, (v5_UClosed));set_attribute_value(5, (v6_VClosed));set_attribute_value(6, (v7_SelfIntersect));set_attribute_value(7, (v8_UMultiplicities));set_attribute_value(8, (v9_VMultiplicities));set_attribute_value(9, (v10_UKnots));set_attribute_value(10, (v11_VKnots));set_attribute_value(11, (enumeration_reference(&::Ifc4x3_add1::IfcKnotType::Class(),(size_t)v12_KnotSpec)));set_attribute_value(12, (v13_WeightsData));; return *this; } +Ifc4x3_add1::IfcRationalBSplineSurfaceWithKnots Ifc4x3_add1::IfcRationalBSplineSurfaceWithKnots::initialize(int64_t v1_UDegree, int64_t v2_VDegree, std::vector< std::vector< ::Ifc4x3_add1::IfcCartesianPoint > > v3_ControlPointsList, ::Ifc4x3_add1::IfcBSplineSurfaceForm::Value v4_SurfaceForm, boost::logic::tribool v5_UClosed, boost::logic::tribool v6_VClosed, boost::logic::tribool v7_SelfIntersect, std::vector< int64_t > /*[2:?]*/ v8_UMultiplicities, std::vector< int64_t > /*[2:?]*/ v9_VMultiplicities, std::vector< double > /*[2:?]*/ v10_UKnots, std::vector< double > /*[2:?]*/ v11_VKnots, ::Ifc4x3_add1::IfcKnotType::Value v12_KnotSpec, std::vector< std::vector< double > > v13_WeightsData) { set_attribute_value(0, (v1_UDegree));set_attribute_value(1, (v2_VDegree));set_attribute_value(2, cast_vector(v3_ControlPointsList));set_attribute_value(3, (enumeration_reference(&::Ifc4x3_add1::IfcBSplineSurfaceForm::Class(),(size_t)v4_SurfaceForm)));set_attribute_value(4, (v5_UClosed));set_attribute_value(5, (v6_VClosed));set_attribute_value(6, (v7_SelfIntersect));set_attribute_value(7, (v8_UMultiplicities));set_attribute_value(8, (v9_VMultiplicities));set_attribute_value(9, (v10_UKnots));set_attribute_value(10, (v11_VKnots));set_attribute_value(11, (enumeration_reference(&::Ifc4x3_add1::IfcKnotType::Class(),(size_t)v12_KnotSpec)));set_attribute_value(12, (v13_WeightsData));; return *this; } // Function implementations for IfcRectangleHollowProfileDef double Ifc4x3_add1::IfcRectangleHollowProfileDef::WallThickness() const { double v = get_attribute_value(5); return v; } @@ -13397,7 +13397,7 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcRectangularPyramid::Class() { return Ifc4x3_add1::IfcRectangularPyramid Ifc4x3_add1::IfcRectangularPyramid::initialize(::Ifc4x3_add1::IfcAxis2Placement3D v1_Position, double v2_XLength, double v3_YLength, double v4_Height) { set_attribute_value(0, (v1_Position));set_attribute_value(1, (v2_XLength));set_attribute_value(2, (v3_YLength));set_attribute_value(3, (v4_Height));; return *this; } // Function implementations for IfcRectangularTrimmedSurface -::Ifc4x3_add1::IfcSurface Ifc4x3_add1::IfcRectangularTrimmedSurface::BasisSurface() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcSurface>(); } +::Ifc4x3_add1::IfcSurface Ifc4x3_add1::IfcRectangularTrimmedSurface::BasisSurface() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcSurface>(); } void Ifc4x3_add1::IfcRectangularTrimmedSurface::setBasisSurface(const ::Ifc4x3_add1::IfcSurface& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } double Ifc4x3_add1::IfcRectangularTrimmedSurface::U1() const { double v = get_attribute_value(1); return v; } void Ifc4x3_add1::IfcRectangularTrimmedSurface::setU1(const double& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } @@ -13431,12 +13431,12 @@ std::optional< int64_t > Ifc4x3_add1::IfcRecurrencePattern::Interval() const { i void Ifc4x3_add1::IfcRecurrencePattern::setInterval(const std::optional< int64_t >& v) { if (v) {set_attribute_value(5, *v);} else {unset_attribute_value(5);} } std::optional< int64_t > Ifc4x3_add1::IfcRecurrencePattern::Occurrences() const { if(get_attribute_value(6).isNull()) { return std::nullopt; } int64_t v = get_attribute_value(6); return v; } void Ifc4x3_add1::IfcRecurrencePattern::setOccurrences(const std::optional< int64_t >& v) { if (v) {set_attribute_value(6, *v);} else {unset_attribute_value(6);} } -std::optional< std::vector< ::Ifc4x3_add1::IfcTimePeriod > > Ifc4x3_add1::IfcRecurrencePattern::TimePeriods() const { if(get_attribute_value(7).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(7); return cast_vector<::Ifc4x3_add1::IfcTimePeriod>(es); } -void Ifc4x3_add1::IfcRecurrencePattern::setTimePeriods(const std::optional< std::vector< ::Ifc4x3_add1::IfcTimePeriod > >& v) { if (v) {set_attribute_value(7, cast_vector(*v));} else {unset_attribute_value(7);} } +std::optional< std::vector< ::Ifc4x3_add1::IfcTimePeriod > > Ifc4x3_add1::IfcRecurrencePattern::TimePeriods() const { if(get_attribute_value(7).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(7); return cast_vector<::Ifc4x3_add1::IfcTimePeriod>(es); } +void Ifc4x3_add1::IfcRecurrencePattern::setTimePeriods(const std::optional< std::vector< ::Ifc4x3_add1::IfcTimePeriod > >& v) { if (v) {set_attribute_value(7, cast_vector(*v));} else {unset_attribute_value(7);} } const ifcopenshell::entity& Ifc4x3_add1::IfcRecurrencePattern::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[877]); } -Ifc4x3_add1::IfcRecurrencePattern Ifc4x3_add1::IfcRecurrencePattern::initialize(::Ifc4x3_add1::IfcRecurrenceTypeEnum::Value v1_RecurrenceType, std::optional< std::vector< int64_t > /*[1:?]*/ > v2_DayComponent, std::optional< std::vector< int64_t > /*[1:?]*/ > v3_WeekdayComponent, std::optional< std::vector< int64_t > /*[1:?]*/ > v4_MonthComponent, std::optional< int64_t > v5_Position, std::optional< int64_t > v6_Interval, std::optional< int64_t > v7_Occurrences, std::optional< std::vector< ::Ifc4x3_add1::IfcTimePeriod > > v8_TimePeriods) { set_attribute_value(0, (enumeration_reference(&::Ifc4x3_add1::IfcRecurrenceTypeEnum::Class(),(size_t)v1_RecurrenceType))); if (v2_DayComponent) {set_attribute_value(1, (*v2_DayComponent)); } if (v3_WeekdayComponent) {set_attribute_value(2, (*v3_WeekdayComponent)); } if (v4_MonthComponent) {set_attribute_value(3, (*v4_MonthComponent)); } if (v5_Position) {set_attribute_value(4, (*v5_Position)); } if (v6_Interval) {set_attribute_value(5, (*v6_Interval)); } if (v7_Occurrences) {set_attribute_value(6, (*v7_Occurrences)); } if (v8_TimePeriods) {set_attribute_value(7, cast_vector(*v8_TimePeriods)); }; return *this; } +Ifc4x3_add1::IfcRecurrencePattern Ifc4x3_add1::IfcRecurrencePattern::initialize(::Ifc4x3_add1::IfcRecurrenceTypeEnum::Value v1_RecurrenceType, std::optional< std::vector< int64_t > /*[1:?]*/ > v2_DayComponent, std::optional< std::vector< int64_t > /*[1:?]*/ > v3_WeekdayComponent, std::optional< std::vector< int64_t > /*[1:?]*/ > v4_MonthComponent, std::optional< int64_t > v5_Position, std::optional< int64_t > v6_Interval, std::optional< int64_t > v7_Occurrences, std::optional< std::vector< ::Ifc4x3_add1::IfcTimePeriod > > v8_TimePeriods) { set_attribute_value(0, (enumeration_reference(&::Ifc4x3_add1::IfcRecurrenceTypeEnum::Class(),(size_t)v1_RecurrenceType))); if (v2_DayComponent) {set_attribute_value(1, (*v2_DayComponent)); } if (v3_WeekdayComponent) {set_attribute_value(2, (*v3_WeekdayComponent)); } if (v4_MonthComponent) {set_attribute_value(3, (*v4_MonthComponent)); } if (v5_Position) {set_attribute_value(4, (*v5_Position)); } if (v6_Interval) {set_attribute_value(5, (*v6_Interval)); } if (v7_Occurrences) {set_attribute_value(6, (*v7_Occurrences)); } if (v8_TimePeriods) {set_attribute_value(7, cast_vector(*v8_TimePeriods)); }; return *this; } // Function implementations for IfcReference std::optional< std::string > Ifc4x3_add1::IfcReference::TypeIdentifier() const { if(get_attribute_value(0).isNull()) { return std::nullopt; } std::string v = get_attribute_value(0); return v; } @@ -13447,7 +13447,7 @@ std::optional< std::string > Ifc4x3_add1::IfcReference::InstanceName() const { i void Ifc4x3_add1::IfcReference::setInstanceName(const std::optional< std::string >& v) { if (v) {set_attribute_value(2, *v);} else {unset_attribute_value(2);} } std::optional< std::vector< int64_t > /*[1:?]*/ > Ifc4x3_add1::IfcReference::ListPositions() const { if(get_attribute_value(3).isNull()) { return std::nullopt; } std::vector< int64_t > /*[1:?]*/ v = get_attribute_value(3); return v; } void Ifc4x3_add1::IfcReference::setListPositions(const std::optional< std::vector< int64_t > /*[1:?]*/ >& v) { if (v) {set_attribute_value(3, *v);} else {unset_attribute_value(3);} } -::Ifc4x3_add1::IfcReference Ifc4x3_add1::IfcReference::InnerReference() const { if(get_attribute_value(4).isNull()) { return ::Ifc4x3_add1::IfcReference{}; } return ((express::Base)(get_attribute_value(4))).as<::Ifc4x3_add1::IfcReference>(); } +::Ifc4x3_add1::IfcReference Ifc4x3_add1::IfcReference::InnerReference() const { if(get_attribute_value(4).isNull()) { return ::Ifc4x3_add1::IfcReference{}; } return ((express::base)(get_attribute_value(4))).as<::Ifc4x3_add1::IfcReference>(); } void Ifc4x3_add1::IfcReference::setInnerReference(const ::Ifc4x3_add1::IfcReference& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } @@ -13465,12 +13465,12 @@ Ifc4x3_add1::IfcReferent Ifc4x3_add1::IfcReferent::initialize(std::string v1_Glo // Function implementations for IfcRegularTimeSeries double Ifc4x3_add1::IfcRegularTimeSeries::TimeStep() const { double v = get_attribute_value(8); return v; } void Ifc4x3_add1::IfcRegularTimeSeries::setTimeStep(const double& v) { set_attribute_value(8, v);if constexpr (false)unset_attribute_value(8); } -std::vector< ::Ifc4x3_add1::IfcTimeSeriesValue > Ifc4x3_add1::IfcRegularTimeSeries::Values() const { std::vector es = get_attribute_value(9); return cast_vector<::Ifc4x3_add1::IfcTimeSeriesValue>(es); } -void Ifc4x3_add1::IfcRegularTimeSeries::setValues(const std::vector< ::Ifc4x3_add1::IfcTimeSeriesValue >& v) { set_attribute_value(9, cast_vector(v));if constexpr (false)unset_attribute_value(9); } +std::vector< ::Ifc4x3_add1::IfcTimeSeriesValue > Ifc4x3_add1::IfcRegularTimeSeries::Values() const { std::vector es = get_attribute_value(9); return cast_vector<::Ifc4x3_add1::IfcTimeSeriesValue>(es); } +void Ifc4x3_add1::IfcRegularTimeSeries::setValues(const std::vector< ::Ifc4x3_add1::IfcTimeSeriesValue >& v) { set_attribute_value(9, cast_vector(v));if constexpr (false)unset_attribute_value(9); } const ifcopenshell::entity& Ifc4x3_add1::IfcRegularTimeSeries::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[883]); } -Ifc4x3_add1::IfcRegularTimeSeries Ifc4x3_add1::IfcRegularTimeSeries::initialize(std::string v1_Name, std::optional< std::string > v2_Description, std::string v3_StartTime, std::string v4_EndTime, ::Ifc4x3_add1::IfcTimeSeriesDataTypeEnum::Value v5_TimeSeriesDataType, ::Ifc4x3_add1::IfcDataOriginEnum::Value v6_DataOrigin, std::optional< std::string > v7_UserDefinedDataOrigin, ::Ifc4x3_add1::IfcUnit v8_Unit, double v9_TimeStep, std::vector< ::Ifc4x3_add1::IfcTimeSeriesValue > v10_Values) { set_attribute_value(0, (v1_Name)); if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, (v3_StartTime));set_attribute_value(3, (v4_EndTime));set_attribute_value(4, (enumeration_reference(&::Ifc4x3_add1::IfcTimeSeriesDataTypeEnum::Class(),(size_t)v5_TimeSeriesDataType)));set_attribute_value(5, (enumeration_reference(&::Ifc4x3_add1::IfcDataOriginEnum::Class(),(size_t)v6_DataOrigin))); if (v7_UserDefinedDataOrigin) {set_attribute_value(6, (*v7_UserDefinedDataOrigin)); }set_attribute_value(7, (v8_Unit));set_attribute_value(8, (v9_TimeStep));set_attribute_value(9, cast_vector(v10_Values));; return *this; } +Ifc4x3_add1::IfcRegularTimeSeries Ifc4x3_add1::IfcRegularTimeSeries::initialize(std::string v1_Name, std::optional< std::string > v2_Description, std::string v3_StartTime, std::string v4_EndTime, ::Ifc4x3_add1::IfcTimeSeriesDataTypeEnum::Value v5_TimeSeriesDataType, ::Ifc4x3_add1::IfcDataOriginEnum::Value v6_DataOrigin, std::optional< std::string > v7_UserDefinedDataOrigin, ::Ifc4x3_add1::IfcUnit v8_Unit, double v9_TimeStep, std::vector< ::Ifc4x3_add1::IfcTimeSeriesValue > v10_Values) { set_attribute_value(0, (v1_Name)); if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, (v3_StartTime));set_attribute_value(3, (v4_EndTime));set_attribute_value(4, (enumeration_reference(&::Ifc4x3_add1::IfcTimeSeriesDataTypeEnum::Class(),(size_t)v5_TimeSeriesDataType)));set_attribute_value(5, (enumeration_reference(&::Ifc4x3_add1::IfcDataOriginEnum::Class(),(size_t)v6_DataOrigin))); if (v7_UserDefinedDataOrigin) {set_attribute_value(6, (*v7_UserDefinedDataOrigin)); }set_attribute_value(7, (v8_Unit));set_attribute_value(8, (v9_TimeStep));set_attribute_value(9, cast_vector(v10_Values));; return *this; } // Function implementations for IfcReinforcedSoil std::optional< ::Ifc4x3_add1::IfcReinforcedSoilTypeEnum::Value > Ifc4x3_add1::IfcReinforcedSoil::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_add1::IfcReinforcedSoilTypeEnum::FromString(get_attribute_value(8)); } @@ -13501,12 +13501,12 @@ Ifc4x3_add1::IfcReinforcementBarProperties Ifc4x3_add1::IfcReinforcementBarPrope // Function implementations for IfcReinforcementDefinitionProperties std::optional< std::string > Ifc4x3_add1::IfcReinforcementDefinitionProperties::DefinitionType() const { if(get_attribute_value(4).isNull()) { return std::nullopt; } std::string v = get_attribute_value(4); return v; } void Ifc4x3_add1::IfcReinforcementDefinitionProperties::setDefinitionType(const std::optional< std::string >& v) { if (v) {set_attribute_value(4, *v);} else {unset_attribute_value(4);} } -std::vector< ::Ifc4x3_add1::IfcSectionReinforcementProperties > Ifc4x3_add1::IfcReinforcementDefinitionProperties::ReinforcementSectionDefinitions() const { std::vector es = get_attribute_value(5); return cast_vector<::Ifc4x3_add1::IfcSectionReinforcementProperties>(es); } -void Ifc4x3_add1::IfcReinforcementDefinitionProperties::setReinforcementSectionDefinitions(const std::vector< ::Ifc4x3_add1::IfcSectionReinforcementProperties >& v) { set_attribute_value(5, cast_vector(v));if constexpr (false)unset_attribute_value(5); } +std::vector< ::Ifc4x3_add1::IfcSectionReinforcementProperties > Ifc4x3_add1::IfcReinforcementDefinitionProperties::ReinforcementSectionDefinitions() const { std::vector es = get_attribute_value(5); return cast_vector<::Ifc4x3_add1::IfcSectionReinforcementProperties>(es); } +void Ifc4x3_add1::IfcReinforcementDefinitionProperties::setReinforcementSectionDefinitions(const std::vector< ::Ifc4x3_add1::IfcSectionReinforcementProperties >& v) { set_attribute_value(5, cast_vector(v));if constexpr (false)unset_attribute_value(5); } const ifcopenshell::entity& Ifc4x3_add1::IfcReinforcementDefinitionProperties::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[887]); } -Ifc4x3_add1::IfcReinforcementDefinitionProperties Ifc4x3_add1::IfcReinforcementDefinitionProperties::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_DefinitionType, std::vector< ::Ifc4x3_add1::IfcSectionReinforcementProperties > v6_ReinforcementSectionDefinitions) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_DefinitionType) {set_attribute_value(4, (*v5_DefinitionType)); }set_attribute_value(5, cast_vector(v6_ReinforcementSectionDefinitions));; return *this; } +Ifc4x3_add1::IfcReinforcementDefinitionProperties Ifc4x3_add1::IfcReinforcementDefinitionProperties::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_DefinitionType, std::vector< ::Ifc4x3_add1::IfcSectionReinforcementProperties > v6_ReinforcementSectionDefinitions) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_DefinitionType) {set_attribute_value(4, (*v5_DefinitionType)); }set_attribute_value(5, cast_vector(v6_ReinforcementSectionDefinitions));; return *this; } // Function implementations for IfcReinforcingBar std::optional< double > Ifc4x3_add1::IfcReinforcingBar::NominalDiameter() const { if(get_attribute_value(9).isNull()) { return std::nullopt; } double v = get_attribute_value(9); return v; } @@ -13537,12 +13537,12 @@ std::optional< ::Ifc4x3_add1::IfcReinforcingBarSurfaceEnum::Value > Ifc4x3_add1: void Ifc4x3_add1::IfcReinforcingBarType::setBarSurface(const std::optional< ::Ifc4x3_add1::IfcReinforcingBarSurfaceEnum::Value >& v) { if (v) {set_attribute_value(13, enumeration_reference(&::Ifc4x3_add1::IfcReinforcingBarSurfaceEnum::Class(), (size_t) *v));} else {unset_attribute_value(13);} } std::optional< std::string > Ifc4x3_add1::IfcReinforcingBarType::BendingShapeCode() const { if(get_attribute_value(14).isNull()) { return std::nullopt; } std::string v = get_attribute_value(14); return v; } void Ifc4x3_add1::IfcReinforcingBarType::setBendingShapeCode(const std::optional< std::string >& v) { if (v) {set_attribute_value(14, *v);} else {unset_attribute_value(14);} } -std::optional< std::vector< ::Ifc4x3_add1::IfcBendingParameterSelect > > Ifc4x3_add1::IfcReinforcingBarType::BendingParameters() const { if(get_attribute_value(15).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(15); return cast_vector<::Ifc4x3_add1::IfcBendingParameterSelect>(es); } -void Ifc4x3_add1::IfcReinforcingBarType::setBendingParameters(const std::optional< std::vector< ::Ifc4x3_add1::IfcBendingParameterSelect > >& v) { if (v) {set_attribute_value(15, cast_vector(*v));} else {unset_attribute_value(15);} } +std::optional< std::vector< ::Ifc4x3_add1::IfcBendingParameterSelect > > Ifc4x3_add1::IfcReinforcingBarType::BendingParameters() const { if(get_attribute_value(15).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(15); return cast_vector<::Ifc4x3_add1::IfcBendingParameterSelect>(es); } +void Ifc4x3_add1::IfcReinforcingBarType::setBendingParameters(const std::optional< std::vector< ::Ifc4x3_add1::IfcBendingParameterSelect > >& v) { if (v) {set_attribute_value(15, cast_vector(*v));} else {unset_attribute_value(15);} } const ifcopenshell::entity& Ifc4x3_add1::IfcReinforcingBarType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[891]); } -Ifc4x3_add1::IfcReinforcingBarType Ifc4x3_add1::IfcReinforcingBarType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcReinforcingBarTypeEnum::Value v10_PredefinedType, std::optional< double > v11_NominalDiameter, std::optional< double > v12_CrossSectionArea, std::optional< double > v13_BarLength, std::optional< ::Ifc4x3_add1::IfcReinforcingBarSurfaceEnum::Value > v14_BarSurface, std::optional< std::string > v15_BendingShapeCode, std::optional< std::vector< ::Ifc4x3_add1::IfcBendingParameterSelect > > v16_BendingParameters) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcReinforcingBarTypeEnum::Class(),(size_t)v10_PredefinedType))); if (v11_NominalDiameter) {set_attribute_value(10, (*v11_NominalDiameter)); } if (v12_CrossSectionArea) {set_attribute_value(11, (*v12_CrossSectionArea)); } if (v13_BarLength) {set_attribute_value(12, (*v13_BarLength)); } if (v14_BarSurface) {set_attribute_value(13, (enumeration_reference(&::Ifc4x3_add1::IfcReinforcingBarSurfaceEnum::Class(),(size_t)*v14_BarSurface))); } if (v15_BendingShapeCode) {set_attribute_value(14, (*v15_BendingShapeCode)); } if (v16_BendingParameters) {set_attribute_value(15, cast_vector(*v16_BendingParameters)); }; return *this; } +Ifc4x3_add1::IfcReinforcingBarType Ifc4x3_add1::IfcReinforcingBarType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcReinforcingBarTypeEnum::Value v10_PredefinedType, std::optional< double > v11_NominalDiameter, std::optional< double > v12_CrossSectionArea, std::optional< double > v13_BarLength, std::optional< ::Ifc4x3_add1::IfcReinforcingBarSurfaceEnum::Value > v14_BarSurface, std::optional< std::string > v15_BendingShapeCode, std::optional< std::vector< ::Ifc4x3_add1::IfcBendingParameterSelect > > v16_BendingParameters) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcReinforcingBarTypeEnum::Class(),(size_t)v10_PredefinedType))); if (v11_NominalDiameter) {set_attribute_value(10, (*v11_NominalDiameter)); } if (v12_CrossSectionArea) {set_attribute_value(11, (*v12_CrossSectionArea)); } if (v13_BarLength) {set_attribute_value(12, (*v13_BarLength)); } if (v14_BarSurface) {set_attribute_value(13, (enumeration_reference(&::Ifc4x3_add1::IfcReinforcingBarSurfaceEnum::Class(),(size_t)*v14_BarSurface))); } if (v15_BendingShapeCode) {set_attribute_value(14, (*v15_BendingShapeCode)); } if (v16_BendingParameters) {set_attribute_value(15, cast_vector(*v16_BendingParameters)); }; return *this; } // Function implementations for IfcReinforcingElement std::optional< std::string > Ifc4x3_add1::IfcReinforcingElement::SteelGrade() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } std::string v = get_attribute_value(8); return v; } @@ -13556,7 +13556,7 @@ Ifc4x3_add1::IfcReinforcingElement Ifc4x3_add1::IfcReinforcingElement::initializ const ifcopenshell::entity& Ifc4x3_add1::IfcReinforcingElementType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[894]); } -Ifc4x3_add1::IfcReinforcingElementType Ifc4x3_add1::IfcReinforcingElementType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } +Ifc4x3_add1::IfcReinforcingElementType Ifc4x3_add1::IfcReinforcingElementType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } // Function implementations for IfcReinforcingMesh std::optional< double > Ifc4x3_add1::IfcReinforcingMesh::MeshLength() const { if(get_attribute_value(9).isNull()) { return std::nullopt; } double v = get_attribute_value(9); return v; } @@ -13603,68 +13603,68 @@ std::optional< double > Ifc4x3_add1::IfcReinforcingMeshType::TransverseBarSpacin void Ifc4x3_add1::IfcReinforcingMeshType::setTransverseBarSpacing(const std::optional< double >& v) { if (v) {set_attribute_value(17, *v);} else {unset_attribute_value(17);} } std::optional< std::string > Ifc4x3_add1::IfcReinforcingMeshType::BendingShapeCode() const { if(get_attribute_value(18).isNull()) { return std::nullopt; } std::string v = get_attribute_value(18); return v; } void Ifc4x3_add1::IfcReinforcingMeshType::setBendingShapeCode(const std::optional< std::string >& v) { if (v) {set_attribute_value(18, *v);} else {unset_attribute_value(18);} } -std::optional< std::vector< ::Ifc4x3_add1::IfcBendingParameterSelect > > Ifc4x3_add1::IfcReinforcingMeshType::BendingParameters() const { if(get_attribute_value(19).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(19); return cast_vector<::Ifc4x3_add1::IfcBendingParameterSelect>(es); } -void Ifc4x3_add1::IfcReinforcingMeshType::setBendingParameters(const std::optional< std::vector< ::Ifc4x3_add1::IfcBendingParameterSelect > >& v) { if (v) {set_attribute_value(19, cast_vector(*v));} else {unset_attribute_value(19);} } +std::optional< std::vector< ::Ifc4x3_add1::IfcBendingParameterSelect > > Ifc4x3_add1::IfcReinforcingMeshType::BendingParameters() const { if(get_attribute_value(19).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(19); return cast_vector<::Ifc4x3_add1::IfcBendingParameterSelect>(es); } +void Ifc4x3_add1::IfcReinforcingMeshType::setBendingParameters(const std::optional< std::vector< ::Ifc4x3_add1::IfcBendingParameterSelect > >& v) { if (v) {set_attribute_value(19, cast_vector(*v));} else {unset_attribute_value(19);} } const ifcopenshell::entity& Ifc4x3_add1::IfcReinforcingMeshType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[896]); } -Ifc4x3_add1::IfcReinforcingMeshType Ifc4x3_add1::IfcReinforcingMeshType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcReinforcingMeshTypeEnum::Value v10_PredefinedType, std::optional< double > v11_MeshLength, std::optional< double > v12_MeshWidth, std::optional< double > v13_LongitudinalBarNominalDiameter, std::optional< double > v14_TransverseBarNominalDiameter, std::optional< double > v15_LongitudinalBarCrossSectionArea, std::optional< double > v16_TransverseBarCrossSectionArea, std::optional< double > v17_LongitudinalBarSpacing, std::optional< double > v18_TransverseBarSpacing, std::optional< std::string > v19_BendingShapeCode, std::optional< std::vector< ::Ifc4x3_add1::IfcBendingParameterSelect > > v20_BendingParameters) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcReinforcingMeshTypeEnum::Class(),(size_t)v10_PredefinedType))); if (v11_MeshLength) {set_attribute_value(10, (*v11_MeshLength)); } if (v12_MeshWidth) {set_attribute_value(11, (*v12_MeshWidth)); } if (v13_LongitudinalBarNominalDiameter) {set_attribute_value(12, (*v13_LongitudinalBarNominalDiameter)); } if (v14_TransverseBarNominalDiameter) {set_attribute_value(13, (*v14_TransverseBarNominalDiameter)); } if (v15_LongitudinalBarCrossSectionArea) {set_attribute_value(14, (*v15_LongitudinalBarCrossSectionArea)); } if (v16_TransverseBarCrossSectionArea) {set_attribute_value(15, (*v16_TransverseBarCrossSectionArea)); } if (v17_LongitudinalBarSpacing) {set_attribute_value(16, (*v17_LongitudinalBarSpacing)); } if (v18_TransverseBarSpacing) {set_attribute_value(17, (*v18_TransverseBarSpacing)); } if (v19_BendingShapeCode) {set_attribute_value(18, (*v19_BendingShapeCode)); } if (v20_BendingParameters) {set_attribute_value(19, cast_vector(*v20_BendingParameters)); }; return *this; } +Ifc4x3_add1::IfcReinforcingMeshType Ifc4x3_add1::IfcReinforcingMeshType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcReinforcingMeshTypeEnum::Value v10_PredefinedType, std::optional< double > v11_MeshLength, std::optional< double > v12_MeshWidth, std::optional< double > v13_LongitudinalBarNominalDiameter, std::optional< double > v14_TransverseBarNominalDiameter, std::optional< double > v15_LongitudinalBarCrossSectionArea, std::optional< double > v16_TransverseBarCrossSectionArea, std::optional< double > v17_LongitudinalBarSpacing, std::optional< double > v18_TransverseBarSpacing, std::optional< std::string > v19_BendingShapeCode, std::optional< std::vector< ::Ifc4x3_add1::IfcBendingParameterSelect > > v20_BendingParameters) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcReinforcingMeshTypeEnum::Class(),(size_t)v10_PredefinedType))); if (v11_MeshLength) {set_attribute_value(10, (*v11_MeshLength)); } if (v12_MeshWidth) {set_attribute_value(11, (*v12_MeshWidth)); } if (v13_LongitudinalBarNominalDiameter) {set_attribute_value(12, (*v13_LongitudinalBarNominalDiameter)); } if (v14_TransverseBarNominalDiameter) {set_attribute_value(13, (*v14_TransverseBarNominalDiameter)); } if (v15_LongitudinalBarCrossSectionArea) {set_attribute_value(14, (*v15_LongitudinalBarCrossSectionArea)); } if (v16_TransverseBarCrossSectionArea) {set_attribute_value(15, (*v16_TransverseBarCrossSectionArea)); } if (v17_LongitudinalBarSpacing) {set_attribute_value(16, (*v17_LongitudinalBarSpacing)); } if (v18_TransverseBarSpacing) {set_attribute_value(17, (*v18_TransverseBarSpacing)); } if (v19_BendingShapeCode) {set_attribute_value(18, (*v19_BendingShapeCode)); } if (v20_BendingParameters) {set_attribute_value(19, cast_vector(*v20_BendingParameters)); }; return *this; } // Function implementations for IfcRelAdheresToElement -::Ifc4x3_add1::IfcElement Ifc4x3_add1::IfcRelAdheresToElement::RelatingElement() const { return ((express::Base)(get_attribute_value(4))).as<::Ifc4x3_add1::IfcElement>(); } +::Ifc4x3_add1::IfcElement Ifc4x3_add1::IfcRelAdheresToElement::RelatingElement() const { return ((express::base)(get_attribute_value(4))).as<::Ifc4x3_add1::IfcElement>(); } void Ifc4x3_add1::IfcRelAdheresToElement::setRelatingElement(const ::Ifc4x3_add1::IfcElement& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } -std::vector< ::Ifc4x3_add1::IfcSurfaceFeature > Ifc4x3_add1::IfcRelAdheresToElement::RelatedSurfaceFeatures() const { std::vector es = get_attribute_value(5); return cast_vector<::Ifc4x3_add1::IfcSurfaceFeature>(es); } -void Ifc4x3_add1::IfcRelAdheresToElement::setRelatedSurfaceFeatures(const std::vector< ::Ifc4x3_add1::IfcSurfaceFeature >& v) { set_attribute_value(5, cast_vector(v));if constexpr (false)unset_attribute_value(5); } +std::vector< ::Ifc4x3_add1::IfcSurfaceFeature > Ifc4x3_add1::IfcRelAdheresToElement::RelatedSurfaceFeatures() const { std::vector es = get_attribute_value(5); return cast_vector<::Ifc4x3_add1::IfcSurfaceFeature>(es); } +void Ifc4x3_add1::IfcRelAdheresToElement::setRelatedSurfaceFeatures(const std::vector< ::Ifc4x3_add1::IfcSurfaceFeature >& v) { set_attribute_value(5, cast_vector(v));if constexpr (false)unset_attribute_value(5); } const ifcopenshell::entity& Ifc4x3_add1::IfcRelAdheresToElement::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[898]); } -Ifc4x3_add1::IfcRelAdheresToElement Ifc4x3_add1::IfcRelAdheresToElement::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, ::Ifc4x3_add1::IfcElement v5_RelatingElement, std::vector< ::Ifc4x3_add1::IfcSurfaceFeature > v6_RelatedSurfaceFeatures) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, (v5_RelatingElement));set_attribute_value(5, cast_vector(v6_RelatedSurfaceFeatures));; return *this; } +Ifc4x3_add1::IfcRelAdheresToElement Ifc4x3_add1::IfcRelAdheresToElement::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, ::Ifc4x3_add1::IfcElement v5_RelatingElement, std::vector< ::Ifc4x3_add1::IfcSurfaceFeature > v6_RelatedSurfaceFeatures) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, (v5_RelatingElement));set_attribute_value(5, cast_vector(v6_RelatedSurfaceFeatures));; return *this; } // Function implementations for IfcRelAggregates -::Ifc4x3_add1::IfcObjectDefinition Ifc4x3_add1::IfcRelAggregates::RelatingObject() const { return ((express::Base)(get_attribute_value(4))).as<::Ifc4x3_add1::IfcObjectDefinition>(); } +::Ifc4x3_add1::IfcObjectDefinition Ifc4x3_add1::IfcRelAggregates::RelatingObject() const { return ((express::base)(get_attribute_value(4))).as<::Ifc4x3_add1::IfcObjectDefinition>(); } void Ifc4x3_add1::IfcRelAggregates::setRelatingObject(const ::Ifc4x3_add1::IfcObjectDefinition& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } -std::vector< ::Ifc4x3_add1::IfcObjectDefinition > Ifc4x3_add1::IfcRelAggregates::RelatedObjects() const { std::vector es = get_attribute_value(5); return cast_vector<::Ifc4x3_add1::IfcObjectDefinition>(es); } -void Ifc4x3_add1::IfcRelAggregates::setRelatedObjects(const std::vector< ::Ifc4x3_add1::IfcObjectDefinition >& v) { set_attribute_value(5, cast_vector(v));if constexpr (false)unset_attribute_value(5); } +std::vector< ::Ifc4x3_add1::IfcObjectDefinition > Ifc4x3_add1::IfcRelAggregates::RelatedObjects() const { std::vector es = get_attribute_value(5); return cast_vector<::Ifc4x3_add1::IfcObjectDefinition>(es); } +void Ifc4x3_add1::IfcRelAggregates::setRelatedObjects(const std::vector< ::Ifc4x3_add1::IfcObjectDefinition >& v) { set_attribute_value(5, cast_vector(v));if constexpr (false)unset_attribute_value(5); } const ifcopenshell::entity& Ifc4x3_add1::IfcRelAggregates::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[899]); } -Ifc4x3_add1::IfcRelAggregates Ifc4x3_add1::IfcRelAggregates::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, ::Ifc4x3_add1::IfcObjectDefinition v5_RelatingObject, std::vector< ::Ifc4x3_add1::IfcObjectDefinition > v6_RelatedObjects) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, (v5_RelatingObject));set_attribute_value(5, cast_vector(v6_RelatedObjects));; return *this; } +Ifc4x3_add1::IfcRelAggregates Ifc4x3_add1::IfcRelAggregates::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, ::Ifc4x3_add1::IfcObjectDefinition v5_RelatingObject, std::vector< ::Ifc4x3_add1::IfcObjectDefinition > v6_RelatedObjects) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, (v5_RelatingObject));set_attribute_value(5, cast_vector(v6_RelatedObjects));; return *this; } // Function implementations for IfcRelAssigns -std::vector< ::Ifc4x3_add1::IfcObjectDefinition > Ifc4x3_add1::IfcRelAssigns::RelatedObjects() const { std::vector es = get_attribute_value(4); return cast_vector<::Ifc4x3_add1::IfcObjectDefinition>(es); } -void Ifc4x3_add1::IfcRelAssigns::setRelatedObjects(const std::vector< ::Ifc4x3_add1::IfcObjectDefinition >& v) { set_attribute_value(4, cast_vector(v));if constexpr (false)unset_attribute_value(4); } +std::vector< ::Ifc4x3_add1::IfcObjectDefinition > Ifc4x3_add1::IfcRelAssigns::RelatedObjects() const { std::vector es = get_attribute_value(4); return cast_vector<::Ifc4x3_add1::IfcObjectDefinition>(es); } +void Ifc4x3_add1::IfcRelAssigns::setRelatedObjects(const std::vector< ::Ifc4x3_add1::IfcObjectDefinition >& v) { set_attribute_value(4, cast_vector(v));if constexpr (false)unset_attribute_value(4); } std::optional< bool > Ifc4x3_add1::IfcRelAssigns::RelatedObjectsType() const { if(get_attribute_value(5).isNull()) { return std::nullopt; } bool v = get_attribute_value(5); return v; } void Ifc4x3_add1::IfcRelAssigns::setRelatedObjectsType(const std::optional< bool >& v) { if (v) {set_attribute_value(5, *v);} else {unset_attribute_value(5);} } const ifcopenshell::entity& Ifc4x3_add1::IfcRelAssigns::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[900]); } -Ifc4x3_add1::IfcRelAssigns Ifc4x3_add1::IfcRelAssigns::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3_add1::IfcObjectDefinition > v5_RelatedObjects, std::optional< bool > v6_RelatedObjectsType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedObjects)); if (v6_RelatedObjectsType) {set_attribute_value(5, (*v6_RelatedObjectsType)); }; return *this; } +Ifc4x3_add1::IfcRelAssigns Ifc4x3_add1::IfcRelAssigns::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3_add1::IfcObjectDefinition > v5_RelatedObjects, std::optional< bool > v6_RelatedObjectsType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedObjects)); if (v6_RelatedObjectsType) {set_attribute_value(5, (*v6_RelatedObjectsType)); }; return *this; } // Function implementations for IfcRelAssignsToActor -::Ifc4x3_add1::IfcActor Ifc4x3_add1::IfcRelAssignsToActor::RelatingActor() const { return ((express::Base)(get_attribute_value(6))).as<::Ifc4x3_add1::IfcActor>(); } +::Ifc4x3_add1::IfcActor Ifc4x3_add1::IfcRelAssignsToActor::RelatingActor() const { return ((express::base)(get_attribute_value(6))).as<::Ifc4x3_add1::IfcActor>(); } void Ifc4x3_add1::IfcRelAssignsToActor::setRelatingActor(const ::Ifc4x3_add1::IfcActor& v) { set_attribute_value(6, v);if constexpr (false)unset_attribute_value(6); } -::Ifc4x3_add1::IfcActorRole Ifc4x3_add1::IfcRelAssignsToActor::ActingRole() const { if(get_attribute_value(7).isNull()) { return ::Ifc4x3_add1::IfcActorRole{}; } return ((express::Base)(get_attribute_value(7))).as<::Ifc4x3_add1::IfcActorRole>(); } +::Ifc4x3_add1::IfcActorRole Ifc4x3_add1::IfcRelAssignsToActor::ActingRole() const { if(get_attribute_value(7).isNull()) { return ::Ifc4x3_add1::IfcActorRole{}; } return ((express::base)(get_attribute_value(7))).as<::Ifc4x3_add1::IfcActorRole>(); } void Ifc4x3_add1::IfcRelAssignsToActor::setActingRole(const ::Ifc4x3_add1::IfcActorRole& v) { set_attribute_value(7, v);if constexpr (false)unset_attribute_value(7); } const ifcopenshell::entity& Ifc4x3_add1::IfcRelAssignsToActor::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[901]); } -Ifc4x3_add1::IfcRelAssignsToActor Ifc4x3_add1::IfcRelAssignsToActor::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3_add1::IfcObjectDefinition > v5_RelatedObjects, std::optional< bool > v6_RelatedObjectsType, ::Ifc4x3_add1::IfcActor v7_RelatingActor, ::Ifc4x3_add1::IfcActorRole v8_ActingRole) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedObjects)); if (v6_RelatedObjectsType) {set_attribute_value(5, (*v6_RelatedObjectsType)); }set_attribute_value(6, (v7_RelatingActor));set_attribute_value(7, (v8_ActingRole));; return *this; } +Ifc4x3_add1::IfcRelAssignsToActor Ifc4x3_add1::IfcRelAssignsToActor::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3_add1::IfcObjectDefinition > v5_RelatedObjects, std::optional< bool > v6_RelatedObjectsType, ::Ifc4x3_add1::IfcActor v7_RelatingActor, ::Ifc4x3_add1::IfcActorRole v8_ActingRole) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedObjects)); if (v6_RelatedObjectsType) {set_attribute_value(5, (*v6_RelatedObjectsType)); }set_attribute_value(6, (v7_RelatingActor));set_attribute_value(7, (v8_ActingRole));; return *this; } // Function implementations for IfcRelAssignsToControl -::Ifc4x3_add1::IfcControl Ifc4x3_add1::IfcRelAssignsToControl::RelatingControl() const { return ((express::Base)(get_attribute_value(6))).as<::Ifc4x3_add1::IfcControl>(); } +::Ifc4x3_add1::IfcControl Ifc4x3_add1::IfcRelAssignsToControl::RelatingControl() const { return ((express::base)(get_attribute_value(6))).as<::Ifc4x3_add1::IfcControl>(); } void Ifc4x3_add1::IfcRelAssignsToControl::setRelatingControl(const ::Ifc4x3_add1::IfcControl& v) { set_attribute_value(6, v);if constexpr (false)unset_attribute_value(6); } const ifcopenshell::entity& Ifc4x3_add1::IfcRelAssignsToControl::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[902]); } -Ifc4x3_add1::IfcRelAssignsToControl Ifc4x3_add1::IfcRelAssignsToControl::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3_add1::IfcObjectDefinition > v5_RelatedObjects, std::optional< bool > v6_RelatedObjectsType, ::Ifc4x3_add1::IfcControl v7_RelatingControl) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedObjects)); if (v6_RelatedObjectsType) {set_attribute_value(5, (*v6_RelatedObjectsType)); }set_attribute_value(6, (v7_RelatingControl));; return *this; } +Ifc4x3_add1::IfcRelAssignsToControl Ifc4x3_add1::IfcRelAssignsToControl::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3_add1::IfcObjectDefinition > v5_RelatedObjects, std::optional< bool > v6_RelatedObjectsType, ::Ifc4x3_add1::IfcControl v7_RelatingControl) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedObjects)); if (v6_RelatedObjectsType) {set_attribute_value(5, (*v6_RelatedObjectsType)); }set_attribute_value(6, (v7_RelatingControl));; return *this; } // Function implementations for IfcRelAssignsToGroup -::Ifc4x3_add1::IfcGroup Ifc4x3_add1::IfcRelAssignsToGroup::RelatingGroup() const { return ((express::Base)(get_attribute_value(6))).as<::Ifc4x3_add1::IfcGroup>(); } +::Ifc4x3_add1::IfcGroup Ifc4x3_add1::IfcRelAssignsToGroup::RelatingGroup() const { return ((express::base)(get_attribute_value(6))).as<::Ifc4x3_add1::IfcGroup>(); } void Ifc4x3_add1::IfcRelAssignsToGroup::setRelatingGroup(const ::Ifc4x3_add1::IfcGroup& v) { set_attribute_value(6, v);if constexpr (false)unset_attribute_value(6); } const ifcopenshell::entity& Ifc4x3_add1::IfcRelAssignsToGroup::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[903]); } -Ifc4x3_add1::IfcRelAssignsToGroup Ifc4x3_add1::IfcRelAssignsToGroup::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3_add1::IfcObjectDefinition > v5_RelatedObjects, std::optional< bool > v6_RelatedObjectsType, ::Ifc4x3_add1::IfcGroup v7_RelatingGroup) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedObjects)); if (v6_RelatedObjectsType) {set_attribute_value(5, (*v6_RelatedObjectsType)); }set_attribute_value(6, (v7_RelatingGroup));; return *this; } +Ifc4x3_add1::IfcRelAssignsToGroup Ifc4x3_add1::IfcRelAssignsToGroup::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3_add1::IfcObjectDefinition > v5_RelatedObjects, std::optional< bool > v6_RelatedObjectsType, ::Ifc4x3_add1::IfcGroup v7_RelatingGroup) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedObjects)); if (v6_RelatedObjectsType) {set_attribute_value(5, (*v6_RelatedObjectsType)); }set_attribute_value(6, (v7_RelatingGroup));; return *this; } // Function implementations for IfcRelAssignsToGroupByFactor double Ifc4x3_add1::IfcRelAssignsToGroupByFactor::Factor() const { double v = get_attribute_value(7); return v; } @@ -13672,99 +13672,99 @@ void Ifc4x3_add1::IfcRelAssignsToGroupByFactor::setFactor(const double& v) { set const ifcopenshell::entity& Ifc4x3_add1::IfcRelAssignsToGroupByFactor::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[904]); } -Ifc4x3_add1::IfcRelAssignsToGroupByFactor Ifc4x3_add1::IfcRelAssignsToGroupByFactor::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3_add1::IfcObjectDefinition > v5_RelatedObjects, std::optional< bool > v6_RelatedObjectsType, ::Ifc4x3_add1::IfcGroup v7_RelatingGroup, double v8_Factor) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedObjects)); if (v6_RelatedObjectsType) {set_attribute_value(5, (*v6_RelatedObjectsType)); }set_attribute_value(6, (v7_RelatingGroup));set_attribute_value(7, (v8_Factor));; return *this; } +Ifc4x3_add1::IfcRelAssignsToGroupByFactor Ifc4x3_add1::IfcRelAssignsToGroupByFactor::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3_add1::IfcObjectDefinition > v5_RelatedObjects, std::optional< bool > v6_RelatedObjectsType, ::Ifc4x3_add1::IfcGroup v7_RelatingGroup, double v8_Factor) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedObjects)); if (v6_RelatedObjectsType) {set_attribute_value(5, (*v6_RelatedObjectsType)); }set_attribute_value(6, (v7_RelatingGroup));set_attribute_value(7, (v8_Factor));; return *this; } // Function implementations for IfcRelAssignsToProcess -::Ifc4x3_add1::IfcProcessSelect Ifc4x3_add1::IfcRelAssignsToProcess::RelatingProcess() const { return ((express::Base)(get_attribute_value(6))).as<::Ifc4x3_add1::IfcProcessSelect>(); } +::Ifc4x3_add1::IfcProcessSelect Ifc4x3_add1::IfcRelAssignsToProcess::RelatingProcess() const { return ((express::base)(get_attribute_value(6))).as<::Ifc4x3_add1::IfcProcessSelect>(); } void Ifc4x3_add1::IfcRelAssignsToProcess::setRelatingProcess(const ::Ifc4x3_add1::IfcProcessSelect& v) { set_attribute_value(6, v);if constexpr (false)unset_attribute_value(6); } -::Ifc4x3_add1::IfcMeasureWithUnit Ifc4x3_add1::IfcRelAssignsToProcess::QuantityInProcess() const { if(get_attribute_value(7).isNull()) { return ::Ifc4x3_add1::IfcMeasureWithUnit{}; } return ((express::Base)(get_attribute_value(7))).as<::Ifc4x3_add1::IfcMeasureWithUnit>(); } +::Ifc4x3_add1::IfcMeasureWithUnit Ifc4x3_add1::IfcRelAssignsToProcess::QuantityInProcess() const { if(get_attribute_value(7).isNull()) { return ::Ifc4x3_add1::IfcMeasureWithUnit{}; } return ((express::base)(get_attribute_value(7))).as<::Ifc4x3_add1::IfcMeasureWithUnit>(); } void Ifc4x3_add1::IfcRelAssignsToProcess::setQuantityInProcess(const ::Ifc4x3_add1::IfcMeasureWithUnit& v) { set_attribute_value(7, v);if constexpr (false)unset_attribute_value(7); } const ifcopenshell::entity& Ifc4x3_add1::IfcRelAssignsToProcess::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[905]); } -Ifc4x3_add1::IfcRelAssignsToProcess Ifc4x3_add1::IfcRelAssignsToProcess::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3_add1::IfcObjectDefinition > v5_RelatedObjects, std::optional< bool > v6_RelatedObjectsType, ::Ifc4x3_add1::IfcProcessSelect v7_RelatingProcess, ::Ifc4x3_add1::IfcMeasureWithUnit v8_QuantityInProcess) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedObjects)); if (v6_RelatedObjectsType) {set_attribute_value(5, (*v6_RelatedObjectsType)); }set_attribute_value(6, (v7_RelatingProcess));set_attribute_value(7, (v8_QuantityInProcess));; return *this; } +Ifc4x3_add1::IfcRelAssignsToProcess Ifc4x3_add1::IfcRelAssignsToProcess::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3_add1::IfcObjectDefinition > v5_RelatedObjects, std::optional< bool > v6_RelatedObjectsType, ::Ifc4x3_add1::IfcProcessSelect v7_RelatingProcess, ::Ifc4x3_add1::IfcMeasureWithUnit v8_QuantityInProcess) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedObjects)); if (v6_RelatedObjectsType) {set_attribute_value(5, (*v6_RelatedObjectsType)); }set_attribute_value(6, (v7_RelatingProcess));set_attribute_value(7, (v8_QuantityInProcess));; return *this; } // Function implementations for IfcRelAssignsToProduct -::Ifc4x3_add1::IfcProductSelect Ifc4x3_add1::IfcRelAssignsToProduct::RelatingProduct() const { return ((express::Base)(get_attribute_value(6))).as<::Ifc4x3_add1::IfcProductSelect>(); } +::Ifc4x3_add1::IfcProductSelect Ifc4x3_add1::IfcRelAssignsToProduct::RelatingProduct() const { return ((express::base)(get_attribute_value(6))).as<::Ifc4x3_add1::IfcProductSelect>(); } void Ifc4x3_add1::IfcRelAssignsToProduct::setRelatingProduct(const ::Ifc4x3_add1::IfcProductSelect& v) { set_attribute_value(6, v);if constexpr (false)unset_attribute_value(6); } const ifcopenshell::entity& Ifc4x3_add1::IfcRelAssignsToProduct::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[906]); } -Ifc4x3_add1::IfcRelAssignsToProduct Ifc4x3_add1::IfcRelAssignsToProduct::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3_add1::IfcObjectDefinition > v5_RelatedObjects, std::optional< bool > v6_RelatedObjectsType, ::Ifc4x3_add1::IfcProductSelect v7_RelatingProduct) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedObjects)); if (v6_RelatedObjectsType) {set_attribute_value(5, (*v6_RelatedObjectsType)); }set_attribute_value(6, (v7_RelatingProduct));; return *this; } +Ifc4x3_add1::IfcRelAssignsToProduct Ifc4x3_add1::IfcRelAssignsToProduct::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3_add1::IfcObjectDefinition > v5_RelatedObjects, std::optional< bool > v6_RelatedObjectsType, ::Ifc4x3_add1::IfcProductSelect v7_RelatingProduct) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedObjects)); if (v6_RelatedObjectsType) {set_attribute_value(5, (*v6_RelatedObjectsType)); }set_attribute_value(6, (v7_RelatingProduct));; return *this; } // Function implementations for IfcRelAssignsToResource -::Ifc4x3_add1::IfcResourceSelect Ifc4x3_add1::IfcRelAssignsToResource::RelatingResource() const { return ((express::Base)(get_attribute_value(6))).as<::Ifc4x3_add1::IfcResourceSelect>(); } +::Ifc4x3_add1::IfcResourceSelect Ifc4x3_add1::IfcRelAssignsToResource::RelatingResource() const { return ((express::base)(get_attribute_value(6))).as<::Ifc4x3_add1::IfcResourceSelect>(); } void Ifc4x3_add1::IfcRelAssignsToResource::setRelatingResource(const ::Ifc4x3_add1::IfcResourceSelect& v) { set_attribute_value(6, v);if constexpr (false)unset_attribute_value(6); } const ifcopenshell::entity& Ifc4x3_add1::IfcRelAssignsToResource::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[907]); } -Ifc4x3_add1::IfcRelAssignsToResource Ifc4x3_add1::IfcRelAssignsToResource::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3_add1::IfcObjectDefinition > v5_RelatedObjects, std::optional< bool > v6_RelatedObjectsType, ::Ifc4x3_add1::IfcResourceSelect v7_RelatingResource) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedObjects)); if (v6_RelatedObjectsType) {set_attribute_value(5, (*v6_RelatedObjectsType)); }set_attribute_value(6, (v7_RelatingResource));; return *this; } +Ifc4x3_add1::IfcRelAssignsToResource Ifc4x3_add1::IfcRelAssignsToResource::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3_add1::IfcObjectDefinition > v5_RelatedObjects, std::optional< bool > v6_RelatedObjectsType, ::Ifc4x3_add1::IfcResourceSelect v7_RelatingResource) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedObjects)); if (v6_RelatedObjectsType) {set_attribute_value(5, (*v6_RelatedObjectsType)); }set_attribute_value(6, (v7_RelatingResource));; return *this; } // Function implementations for IfcRelAssociates -std::vector< ::Ifc4x3_add1::IfcDefinitionSelect > Ifc4x3_add1::IfcRelAssociates::RelatedObjects() const { std::vector es = get_attribute_value(4); return cast_vector<::Ifc4x3_add1::IfcDefinitionSelect>(es); } -void Ifc4x3_add1::IfcRelAssociates::setRelatedObjects(const std::vector< ::Ifc4x3_add1::IfcDefinitionSelect >& v) { set_attribute_value(4, cast_vector(v));if constexpr (false)unset_attribute_value(4); } +std::vector< ::Ifc4x3_add1::IfcDefinitionSelect > Ifc4x3_add1::IfcRelAssociates::RelatedObjects() const { std::vector es = get_attribute_value(4); return cast_vector<::Ifc4x3_add1::IfcDefinitionSelect>(es); } +void Ifc4x3_add1::IfcRelAssociates::setRelatedObjects(const std::vector< ::Ifc4x3_add1::IfcDefinitionSelect >& v) { set_attribute_value(4, cast_vector(v));if constexpr (false)unset_attribute_value(4); } const ifcopenshell::entity& Ifc4x3_add1::IfcRelAssociates::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[908]); } -Ifc4x3_add1::IfcRelAssociates Ifc4x3_add1::IfcRelAssociates::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3_add1::IfcDefinitionSelect > v5_RelatedObjects) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedObjects));; return *this; } +Ifc4x3_add1::IfcRelAssociates Ifc4x3_add1::IfcRelAssociates::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3_add1::IfcDefinitionSelect > v5_RelatedObjects) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedObjects));; return *this; } // Function implementations for IfcRelAssociatesApproval -::Ifc4x3_add1::IfcApproval Ifc4x3_add1::IfcRelAssociatesApproval::RelatingApproval() const { return ((express::Base)(get_attribute_value(5))).as<::Ifc4x3_add1::IfcApproval>(); } +::Ifc4x3_add1::IfcApproval Ifc4x3_add1::IfcRelAssociatesApproval::RelatingApproval() const { return ((express::base)(get_attribute_value(5))).as<::Ifc4x3_add1::IfcApproval>(); } void Ifc4x3_add1::IfcRelAssociatesApproval::setRelatingApproval(const ::Ifc4x3_add1::IfcApproval& v) { set_attribute_value(5, v);if constexpr (false)unset_attribute_value(5); } const ifcopenshell::entity& Ifc4x3_add1::IfcRelAssociatesApproval::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[909]); } -Ifc4x3_add1::IfcRelAssociatesApproval Ifc4x3_add1::IfcRelAssociatesApproval::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3_add1::IfcDefinitionSelect > v5_RelatedObjects, ::Ifc4x3_add1::IfcApproval v6_RelatingApproval) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedObjects));set_attribute_value(5, (v6_RelatingApproval));; return *this; } +Ifc4x3_add1::IfcRelAssociatesApproval Ifc4x3_add1::IfcRelAssociatesApproval::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3_add1::IfcDefinitionSelect > v5_RelatedObjects, ::Ifc4x3_add1::IfcApproval v6_RelatingApproval) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedObjects));set_attribute_value(5, (v6_RelatingApproval));; return *this; } // Function implementations for IfcRelAssociatesClassification -::Ifc4x3_add1::IfcClassificationSelect Ifc4x3_add1::IfcRelAssociatesClassification::RelatingClassification() const { return ((express::Base)(get_attribute_value(5))).as<::Ifc4x3_add1::IfcClassificationSelect>(); } +::Ifc4x3_add1::IfcClassificationSelect Ifc4x3_add1::IfcRelAssociatesClassification::RelatingClassification() const { return ((express::base)(get_attribute_value(5))).as<::Ifc4x3_add1::IfcClassificationSelect>(); } void Ifc4x3_add1::IfcRelAssociatesClassification::setRelatingClassification(const ::Ifc4x3_add1::IfcClassificationSelect& v) { set_attribute_value(5, v);if constexpr (false)unset_attribute_value(5); } const ifcopenshell::entity& Ifc4x3_add1::IfcRelAssociatesClassification::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[910]); } -Ifc4x3_add1::IfcRelAssociatesClassification Ifc4x3_add1::IfcRelAssociatesClassification::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3_add1::IfcDefinitionSelect > v5_RelatedObjects, ::Ifc4x3_add1::IfcClassificationSelect v6_RelatingClassification) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedObjects));set_attribute_value(5, (v6_RelatingClassification));; return *this; } +Ifc4x3_add1::IfcRelAssociatesClassification Ifc4x3_add1::IfcRelAssociatesClassification::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3_add1::IfcDefinitionSelect > v5_RelatedObjects, ::Ifc4x3_add1::IfcClassificationSelect v6_RelatingClassification) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedObjects));set_attribute_value(5, (v6_RelatingClassification));; return *this; } // Function implementations for IfcRelAssociatesConstraint std::optional< std::string > Ifc4x3_add1::IfcRelAssociatesConstraint::Intent() const { if(get_attribute_value(5).isNull()) { return std::nullopt; } std::string v = get_attribute_value(5); return v; } void Ifc4x3_add1::IfcRelAssociatesConstraint::setIntent(const std::optional< std::string >& v) { if (v) {set_attribute_value(5, *v);} else {unset_attribute_value(5);} } -::Ifc4x3_add1::IfcConstraint Ifc4x3_add1::IfcRelAssociatesConstraint::RelatingConstraint() const { return ((express::Base)(get_attribute_value(6))).as<::Ifc4x3_add1::IfcConstraint>(); } +::Ifc4x3_add1::IfcConstraint Ifc4x3_add1::IfcRelAssociatesConstraint::RelatingConstraint() const { return ((express::base)(get_attribute_value(6))).as<::Ifc4x3_add1::IfcConstraint>(); } void Ifc4x3_add1::IfcRelAssociatesConstraint::setRelatingConstraint(const ::Ifc4x3_add1::IfcConstraint& v) { set_attribute_value(6, v);if constexpr (false)unset_attribute_value(6); } const ifcopenshell::entity& Ifc4x3_add1::IfcRelAssociatesConstraint::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[911]); } -Ifc4x3_add1::IfcRelAssociatesConstraint Ifc4x3_add1::IfcRelAssociatesConstraint::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3_add1::IfcDefinitionSelect > v5_RelatedObjects, std::optional< std::string > v6_Intent, ::Ifc4x3_add1::IfcConstraint v7_RelatingConstraint) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedObjects)); if (v6_Intent) {set_attribute_value(5, (*v6_Intent)); }set_attribute_value(6, (v7_RelatingConstraint));; return *this; } +Ifc4x3_add1::IfcRelAssociatesConstraint Ifc4x3_add1::IfcRelAssociatesConstraint::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3_add1::IfcDefinitionSelect > v5_RelatedObjects, std::optional< std::string > v6_Intent, ::Ifc4x3_add1::IfcConstraint v7_RelatingConstraint) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedObjects)); if (v6_Intent) {set_attribute_value(5, (*v6_Intent)); }set_attribute_value(6, (v7_RelatingConstraint));; return *this; } // Function implementations for IfcRelAssociatesDocument -::Ifc4x3_add1::IfcDocumentSelect Ifc4x3_add1::IfcRelAssociatesDocument::RelatingDocument() const { return ((express::Base)(get_attribute_value(5))).as<::Ifc4x3_add1::IfcDocumentSelect>(); } +::Ifc4x3_add1::IfcDocumentSelect Ifc4x3_add1::IfcRelAssociatesDocument::RelatingDocument() const { return ((express::base)(get_attribute_value(5))).as<::Ifc4x3_add1::IfcDocumentSelect>(); } void Ifc4x3_add1::IfcRelAssociatesDocument::setRelatingDocument(const ::Ifc4x3_add1::IfcDocumentSelect& v) { set_attribute_value(5, v);if constexpr (false)unset_attribute_value(5); } const ifcopenshell::entity& Ifc4x3_add1::IfcRelAssociatesDocument::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[912]); } -Ifc4x3_add1::IfcRelAssociatesDocument Ifc4x3_add1::IfcRelAssociatesDocument::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3_add1::IfcDefinitionSelect > v5_RelatedObjects, ::Ifc4x3_add1::IfcDocumentSelect v6_RelatingDocument) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedObjects));set_attribute_value(5, (v6_RelatingDocument));; return *this; } +Ifc4x3_add1::IfcRelAssociatesDocument Ifc4x3_add1::IfcRelAssociatesDocument::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3_add1::IfcDefinitionSelect > v5_RelatedObjects, ::Ifc4x3_add1::IfcDocumentSelect v6_RelatingDocument) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedObjects));set_attribute_value(5, (v6_RelatingDocument));; return *this; } // Function implementations for IfcRelAssociatesLibrary -::Ifc4x3_add1::IfcLibrarySelect Ifc4x3_add1::IfcRelAssociatesLibrary::RelatingLibrary() const { return ((express::Base)(get_attribute_value(5))).as<::Ifc4x3_add1::IfcLibrarySelect>(); } +::Ifc4x3_add1::IfcLibrarySelect Ifc4x3_add1::IfcRelAssociatesLibrary::RelatingLibrary() const { return ((express::base)(get_attribute_value(5))).as<::Ifc4x3_add1::IfcLibrarySelect>(); } void Ifc4x3_add1::IfcRelAssociatesLibrary::setRelatingLibrary(const ::Ifc4x3_add1::IfcLibrarySelect& v) { set_attribute_value(5, v);if constexpr (false)unset_attribute_value(5); } const ifcopenshell::entity& Ifc4x3_add1::IfcRelAssociatesLibrary::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[913]); } -Ifc4x3_add1::IfcRelAssociatesLibrary Ifc4x3_add1::IfcRelAssociatesLibrary::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3_add1::IfcDefinitionSelect > v5_RelatedObjects, ::Ifc4x3_add1::IfcLibrarySelect v6_RelatingLibrary) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedObjects));set_attribute_value(5, (v6_RelatingLibrary));; return *this; } +Ifc4x3_add1::IfcRelAssociatesLibrary Ifc4x3_add1::IfcRelAssociatesLibrary::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3_add1::IfcDefinitionSelect > v5_RelatedObjects, ::Ifc4x3_add1::IfcLibrarySelect v6_RelatingLibrary) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedObjects));set_attribute_value(5, (v6_RelatingLibrary));; return *this; } // Function implementations for IfcRelAssociatesMaterial -::Ifc4x3_add1::IfcMaterialSelect Ifc4x3_add1::IfcRelAssociatesMaterial::RelatingMaterial() const { return ((express::Base)(get_attribute_value(5))).as<::Ifc4x3_add1::IfcMaterialSelect>(); } +::Ifc4x3_add1::IfcMaterialSelect Ifc4x3_add1::IfcRelAssociatesMaterial::RelatingMaterial() const { return ((express::base)(get_attribute_value(5))).as<::Ifc4x3_add1::IfcMaterialSelect>(); } void Ifc4x3_add1::IfcRelAssociatesMaterial::setRelatingMaterial(const ::Ifc4x3_add1::IfcMaterialSelect& v) { set_attribute_value(5, v);if constexpr (false)unset_attribute_value(5); } const ifcopenshell::entity& Ifc4x3_add1::IfcRelAssociatesMaterial::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[914]); } -Ifc4x3_add1::IfcRelAssociatesMaterial Ifc4x3_add1::IfcRelAssociatesMaterial::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3_add1::IfcDefinitionSelect > v5_RelatedObjects, ::Ifc4x3_add1::IfcMaterialSelect v6_RelatingMaterial) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedObjects));set_attribute_value(5, (v6_RelatingMaterial));; return *this; } +Ifc4x3_add1::IfcRelAssociatesMaterial Ifc4x3_add1::IfcRelAssociatesMaterial::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3_add1::IfcDefinitionSelect > v5_RelatedObjects, ::Ifc4x3_add1::IfcMaterialSelect v6_RelatingMaterial) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedObjects));set_attribute_value(5, (v6_RelatingMaterial));; return *this; } // Function implementations for IfcRelAssociatesProfileDef -::Ifc4x3_add1::IfcProfileDef Ifc4x3_add1::IfcRelAssociatesProfileDef::RelatingProfileDef() const { return ((express::Base)(get_attribute_value(5))).as<::Ifc4x3_add1::IfcProfileDef>(); } +::Ifc4x3_add1::IfcProfileDef Ifc4x3_add1::IfcRelAssociatesProfileDef::RelatingProfileDef() const { return ((express::base)(get_attribute_value(5))).as<::Ifc4x3_add1::IfcProfileDef>(); } void Ifc4x3_add1::IfcRelAssociatesProfileDef::setRelatingProfileDef(const ::Ifc4x3_add1::IfcProfileDef& v) { set_attribute_value(5, v);if constexpr (false)unset_attribute_value(5); } const ifcopenshell::entity& Ifc4x3_add1::IfcRelAssociatesProfileDef::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[915]); } -Ifc4x3_add1::IfcRelAssociatesProfileDef Ifc4x3_add1::IfcRelAssociatesProfileDef::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3_add1::IfcDefinitionSelect > v5_RelatedObjects, ::Ifc4x3_add1::IfcProfileDef v6_RelatingProfileDef) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedObjects));set_attribute_value(5, (v6_RelatingProfileDef));; return *this; } +Ifc4x3_add1::IfcRelAssociatesProfileDef Ifc4x3_add1::IfcRelAssociatesProfileDef::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3_add1::IfcDefinitionSelect > v5_RelatedObjects, ::Ifc4x3_add1::IfcProfileDef v6_RelatingProfileDef) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedObjects));set_attribute_value(5, (v6_RelatingProfileDef));; return *this; } // Function implementations for IfcRelConnects @@ -13773,11 +13773,11 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcRelConnects::Class() { return *((ifc Ifc4x3_add1::IfcRelConnects Ifc4x3_add1::IfcRelConnects::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }; return *this; } // Function implementations for IfcRelConnectsElements -::Ifc4x3_add1::IfcConnectionGeometry Ifc4x3_add1::IfcRelConnectsElements::ConnectionGeometry() const { if(get_attribute_value(4).isNull()) { return ::Ifc4x3_add1::IfcConnectionGeometry{}; } return ((express::Base)(get_attribute_value(4))).as<::Ifc4x3_add1::IfcConnectionGeometry>(); } +::Ifc4x3_add1::IfcConnectionGeometry Ifc4x3_add1::IfcRelConnectsElements::ConnectionGeometry() const { if(get_attribute_value(4).isNull()) { return ::Ifc4x3_add1::IfcConnectionGeometry{}; } return ((express::base)(get_attribute_value(4))).as<::Ifc4x3_add1::IfcConnectionGeometry>(); } void Ifc4x3_add1::IfcRelConnectsElements::setConnectionGeometry(const ::Ifc4x3_add1::IfcConnectionGeometry& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } -::Ifc4x3_add1::IfcElement Ifc4x3_add1::IfcRelConnectsElements::RelatingElement() const { return ((express::Base)(get_attribute_value(5))).as<::Ifc4x3_add1::IfcElement>(); } +::Ifc4x3_add1::IfcElement Ifc4x3_add1::IfcRelConnectsElements::RelatingElement() const { return ((express::base)(get_attribute_value(5))).as<::Ifc4x3_add1::IfcElement>(); } void Ifc4x3_add1::IfcRelConnectsElements::setRelatingElement(const ::Ifc4x3_add1::IfcElement& v) { set_attribute_value(5, v);if constexpr (false)unset_attribute_value(5); } -::Ifc4x3_add1::IfcElement Ifc4x3_add1::IfcRelConnectsElements::RelatedElement() const { return ((express::Base)(get_attribute_value(6))).as<::Ifc4x3_add1::IfcElement>(); } +::Ifc4x3_add1::IfcElement Ifc4x3_add1::IfcRelConnectsElements::RelatedElement() const { return ((express::base)(get_attribute_value(6))).as<::Ifc4x3_add1::IfcElement>(); } void Ifc4x3_add1::IfcRelConnectsElements::setRelatedElement(const ::Ifc4x3_add1::IfcElement& v) { set_attribute_value(6, v);if constexpr (false)unset_attribute_value(6); } @@ -13799,9 +13799,9 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcRelConnectsPathElements::Class() { r Ifc4x3_add1::IfcRelConnectsPathElements Ifc4x3_add1::IfcRelConnectsPathElements::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, ::Ifc4x3_add1::IfcConnectionGeometry v5_ConnectionGeometry, ::Ifc4x3_add1::IfcElement v6_RelatingElement, ::Ifc4x3_add1::IfcElement v7_RelatedElement, std::vector< int64_t > /*[0:?]*/ v8_RelatingPriorities, std::vector< int64_t > /*[0:?]*/ v9_RelatedPriorities, ::Ifc4x3_add1::IfcConnectionTypeEnum::Value v10_RelatedConnectionType, ::Ifc4x3_add1::IfcConnectionTypeEnum::Value v11_RelatingConnectionType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, (v5_ConnectionGeometry));set_attribute_value(5, (v6_RelatingElement));set_attribute_value(6, (v7_RelatedElement));set_attribute_value(7, (v8_RelatingPriorities));set_attribute_value(8, (v9_RelatedPriorities));set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcConnectionTypeEnum::Class(),(size_t)v10_RelatedConnectionType)));set_attribute_value(10, (enumeration_reference(&::Ifc4x3_add1::IfcConnectionTypeEnum::Class(),(size_t)v11_RelatingConnectionType)));; return *this; } // Function implementations for IfcRelConnectsPortToElement -::Ifc4x3_add1::IfcPort Ifc4x3_add1::IfcRelConnectsPortToElement::RelatingPort() const { return ((express::Base)(get_attribute_value(4))).as<::Ifc4x3_add1::IfcPort>(); } +::Ifc4x3_add1::IfcPort Ifc4x3_add1::IfcRelConnectsPortToElement::RelatingPort() const { return ((express::base)(get_attribute_value(4))).as<::Ifc4x3_add1::IfcPort>(); } void Ifc4x3_add1::IfcRelConnectsPortToElement::setRelatingPort(const ::Ifc4x3_add1::IfcPort& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } -::Ifc4x3_add1::IfcDistributionElement Ifc4x3_add1::IfcRelConnectsPortToElement::RelatedElement() const { return ((express::Base)(get_attribute_value(5))).as<::Ifc4x3_add1::IfcDistributionElement>(); } +::Ifc4x3_add1::IfcDistributionElement Ifc4x3_add1::IfcRelConnectsPortToElement::RelatedElement() const { return ((express::base)(get_attribute_value(5))).as<::Ifc4x3_add1::IfcDistributionElement>(); } void Ifc4x3_add1::IfcRelConnectsPortToElement::setRelatedElement(const ::Ifc4x3_add1::IfcDistributionElement& v) { set_attribute_value(5, v);if constexpr (false)unset_attribute_value(5); } @@ -13809,11 +13809,11 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcRelConnectsPortToElement::Class() { Ifc4x3_add1::IfcRelConnectsPortToElement Ifc4x3_add1::IfcRelConnectsPortToElement::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, ::Ifc4x3_add1::IfcPort v5_RelatingPort, ::Ifc4x3_add1::IfcDistributionElement v6_RelatedElement) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, (v5_RelatingPort));set_attribute_value(5, (v6_RelatedElement));; return *this; } // Function implementations for IfcRelConnectsPorts -::Ifc4x3_add1::IfcPort Ifc4x3_add1::IfcRelConnectsPorts::RelatingPort() const { return ((express::Base)(get_attribute_value(4))).as<::Ifc4x3_add1::IfcPort>(); } +::Ifc4x3_add1::IfcPort Ifc4x3_add1::IfcRelConnectsPorts::RelatingPort() const { return ((express::base)(get_attribute_value(4))).as<::Ifc4x3_add1::IfcPort>(); } void Ifc4x3_add1::IfcRelConnectsPorts::setRelatingPort(const ::Ifc4x3_add1::IfcPort& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } -::Ifc4x3_add1::IfcPort Ifc4x3_add1::IfcRelConnectsPorts::RelatedPort() const { return ((express::Base)(get_attribute_value(5))).as<::Ifc4x3_add1::IfcPort>(); } +::Ifc4x3_add1::IfcPort Ifc4x3_add1::IfcRelConnectsPorts::RelatedPort() const { return ((express::base)(get_attribute_value(5))).as<::Ifc4x3_add1::IfcPort>(); } void Ifc4x3_add1::IfcRelConnectsPorts::setRelatedPort(const ::Ifc4x3_add1::IfcPort& v) { set_attribute_value(5, v);if constexpr (false)unset_attribute_value(5); } -::Ifc4x3_add1::IfcElement Ifc4x3_add1::IfcRelConnectsPorts::RealizingElement() const { if(get_attribute_value(6).isNull()) { return ::Ifc4x3_add1::IfcElement{}; } return ((express::Base)(get_attribute_value(6))).as<::Ifc4x3_add1::IfcElement>(); } +::Ifc4x3_add1::IfcElement Ifc4x3_add1::IfcRelConnectsPorts::RealizingElement() const { if(get_attribute_value(6).isNull()) { return ::Ifc4x3_add1::IfcElement{}; } return ((express::base)(get_attribute_value(6))).as<::Ifc4x3_add1::IfcElement>(); } void Ifc4x3_add1::IfcRelConnectsPorts::setRealizingElement(const ::Ifc4x3_add1::IfcElement& v) { set_attribute_value(6, v);if constexpr (false)unset_attribute_value(6); } @@ -13821,9 +13821,9 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcRelConnectsPorts::Class() { return * Ifc4x3_add1::IfcRelConnectsPorts Ifc4x3_add1::IfcRelConnectsPorts::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, ::Ifc4x3_add1::IfcPort v5_RelatingPort, ::Ifc4x3_add1::IfcPort v6_RelatedPort, ::Ifc4x3_add1::IfcElement v7_RealizingElement) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, (v5_RelatingPort));set_attribute_value(5, (v6_RelatedPort));set_attribute_value(6, (v7_RealizingElement));; return *this; } // Function implementations for IfcRelConnectsStructuralActivity -::Ifc4x3_add1::IfcStructuralActivityAssignmentSelect Ifc4x3_add1::IfcRelConnectsStructuralActivity::RelatingElement() const { return ((express::Base)(get_attribute_value(4))).as<::Ifc4x3_add1::IfcStructuralActivityAssignmentSelect>(); } +::Ifc4x3_add1::IfcStructuralActivityAssignmentSelect Ifc4x3_add1::IfcRelConnectsStructuralActivity::RelatingElement() const { return ((express::base)(get_attribute_value(4))).as<::Ifc4x3_add1::IfcStructuralActivityAssignmentSelect>(); } void Ifc4x3_add1::IfcRelConnectsStructuralActivity::setRelatingElement(const ::Ifc4x3_add1::IfcStructuralActivityAssignmentSelect& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } -::Ifc4x3_add1::IfcStructuralActivity Ifc4x3_add1::IfcRelConnectsStructuralActivity::RelatedStructuralActivity() const { return ((express::Base)(get_attribute_value(5))).as<::Ifc4x3_add1::IfcStructuralActivity>(); } +::Ifc4x3_add1::IfcStructuralActivity Ifc4x3_add1::IfcRelConnectsStructuralActivity::RelatedStructuralActivity() const { return ((express::base)(get_attribute_value(5))).as<::Ifc4x3_add1::IfcStructuralActivity>(); } void Ifc4x3_add1::IfcRelConnectsStructuralActivity::setRelatedStructuralActivity(const ::Ifc4x3_add1::IfcStructuralActivity& v) { set_attribute_value(5, v);if constexpr (false)unset_attribute_value(5); } @@ -13831,17 +13831,17 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcRelConnectsStructuralActivity::Class Ifc4x3_add1::IfcRelConnectsStructuralActivity Ifc4x3_add1::IfcRelConnectsStructuralActivity::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, ::Ifc4x3_add1::IfcStructuralActivityAssignmentSelect v5_RelatingElement, ::Ifc4x3_add1::IfcStructuralActivity v6_RelatedStructuralActivity) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, (v5_RelatingElement));set_attribute_value(5, (v6_RelatedStructuralActivity));; return *this; } // Function implementations for IfcRelConnectsStructuralMember -::Ifc4x3_add1::IfcStructuralMember Ifc4x3_add1::IfcRelConnectsStructuralMember::RelatingStructuralMember() const { return ((express::Base)(get_attribute_value(4))).as<::Ifc4x3_add1::IfcStructuralMember>(); } +::Ifc4x3_add1::IfcStructuralMember Ifc4x3_add1::IfcRelConnectsStructuralMember::RelatingStructuralMember() const { return ((express::base)(get_attribute_value(4))).as<::Ifc4x3_add1::IfcStructuralMember>(); } void Ifc4x3_add1::IfcRelConnectsStructuralMember::setRelatingStructuralMember(const ::Ifc4x3_add1::IfcStructuralMember& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } -::Ifc4x3_add1::IfcStructuralConnection Ifc4x3_add1::IfcRelConnectsStructuralMember::RelatedStructuralConnection() const { return ((express::Base)(get_attribute_value(5))).as<::Ifc4x3_add1::IfcStructuralConnection>(); } +::Ifc4x3_add1::IfcStructuralConnection Ifc4x3_add1::IfcRelConnectsStructuralMember::RelatedStructuralConnection() const { return ((express::base)(get_attribute_value(5))).as<::Ifc4x3_add1::IfcStructuralConnection>(); } void Ifc4x3_add1::IfcRelConnectsStructuralMember::setRelatedStructuralConnection(const ::Ifc4x3_add1::IfcStructuralConnection& v) { set_attribute_value(5, v);if constexpr (false)unset_attribute_value(5); } -::Ifc4x3_add1::IfcBoundaryCondition Ifc4x3_add1::IfcRelConnectsStructuralMember::AppliedCondition() const { if(get_attribute_value(6).isNull()) { return ::Ifc4x3_add1::IfcBoundaryCondition{}; } return ((express::Base)(get_attribute_value(6))).as<::Ifc4x3_add1::IfcBoundaryCondition>(); } +::Ifc4x3_add1::IfcBoundaryCondition Ifc4x3_add1::IfcRelConnectsStructuralMember::AppliedCondition() const { if(get_attribute_value(6).isNull()) { return ::Ifc4x3_add1::IfcBoundaryCondition{}; } return ((express::base)(get_attribute_value(6))).as<::Ifc4x3_add1::IfcBoundaryCondition>(); } void Ifc4x3_add1::IfcRelConnectsStructuralMember::setAppliedCondition(const ::Ifc4x3_add1::IfcBoundaryCondition& v) { set_attribute_value(6, v);if constexpr (false)unset_attribute_value(6); } -::Ifc4x3_add1::IfcStructuralConnectionCondition Ifc4x3_add1::IfcRelConnectsStructuralMember::AdditionalConditions() const { if(get_attribute_value(7).isNull()) { return ::Ifc4x3_add1::IfcStructuralConnectionCondition{}; } return ((express::Base)(get_attribute_value(7))).as<::Ifc4x3_add1::IfcStructuralConnectionCondition>(); } +::Ifc4x3_add1::IfcStructuralConnectionCondition Ifc4x3_add1::IfcRelConnectsStructuralMember::AdditionalConditions() const { if(get_attribute_value(7).isNull()) { return ::Ifc4x3_add1::IfcStructuralConnectionCondition{}; } return ((express::base)(get_attribute_value(7))).as<::Ifc4x3_add1::IfcStructuralConnectionCondition>(); } void Ifc4x3_add1::IfcRelConnectsStructuralMember::setAdditionalConditions(const ::Ifc4x3_add1::IfcStructuralConnectionCondition& v) { set_attribute_value(7, v);if constexpr (false)unset_attribute_value(7); } std::optional< double > Ifc4x3_add1::IfcRelConnectsStructuralMember::SupportedLength() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } double v = get_attribute_value(8); return v; } void Ifc4x3_add1::IfcRelConnectsStructuralMember::setSupportedLength(const std::optional< double >& v) { if (v) {set_attribute_value(8, *v);} else {unset_attribute_value(8);} } -::Ifc4x3_add1::IfcAxis2Placement3D Ifc4x3_add1::IfcRelConnectsStructuralMember::ConditionCoordinateSystem() const { if(get_attribute_value(9).isNull()) { return ::Ifc4x3_add1::IfcAxis2Placement3D{}; } return ((express::Base)(get_attribute_value(9))).as<::Ifc4x3_add1::IfcAxis2Placement3D>(); } +::Ifc4x3_add1::IfcAxis2Placement3D Ifc4x3_add1::IfcRelConnectsStructuralMember::ConditionCoordinateSystem() const { if(get_attribute_value(9).isNull()) { return ::Ifc4x3_add1::IfcAxis2Placement3D{}; } return ((express::base)(get_attribute_value(9))).as<::Ifc4x3_add1::IfcAxis2Placement3D>(); } void Ifc4x3_add1::IfcRelConnectsStructuralMember::setConditionCoordinateSystem(const ::Ifc4x3_add1::IfcAxis2Placement3D& v) { set_attribute_value(9, v);if constexpr (false)unset_attribute_value(9); } @@ -13849,7 +13849,7 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcRelConnectsStructuralMember::Class() Ifc4x3_add1::IfcRelConnectsStructuralMember Ifc4x3_add1::IfcRelConnectsStructuralMember::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, ::Ifc4x3_add1::IfcStructuralMember v5_RelatingStructuralMember, ::Ifc4x3_add1::IfcStructuralConnection v6_RelatedStructuralConnection, ::Ifc4x3_add1::IfcBoundaryCondition v7_AppliedCondition, ::Ifc4x3_add1::IfcStructuralConnectionCondition v8_AdditionalConditions, std::optional< double > v9_SupportedLength, ::Ifc4x3_add1::IfcAxis2Placement3D v10_ConditionCoordinateSystem) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, (v5_RelatingStructuralMember));set_attribute_value(5, (v6_RelatedStructuralConnection));set_attribute_value(6, (v7_AppliedCondition));set_attribute_value(7, (v8_AdditionalConditions)); if (v9_SupportedLength) {set_attribute_value(8, (*v9_SupportedLength)); }set_attribute_value(9, (v10_ConditionCoordinateSystem));; return *this; } // Function implementations for IfcRelConnectsWithEccentricity -::Ifc4x3_add1::IfcConnectionGeometry Ifc4x3_add1::IfcRelConnectsWithEccentricity::ConnectionConstraint() const { return ((express::Base)(get_attribute_value(10))).as<::Ifc4x3_add1::IfcConnectionGeometry>(); } +::Ifc4x3_add1::IfcConnectionGeometry Ifc4x3_add1::IfcRelConnectsWithEccentricity::ConnectionConstraint() const { return ((express::base)(get_attribute_value(10))).as<::Ifc4x3_add1::IfcConnectionGeometry>(); } void Ifc4x3_add1::IfcRelConnectsWithEccentricity::setConnectionConstraint(const ::Ifc4x3_add1::IfcConnectionGeometry& v) { set_attribute_value(10, v);if constexpr (false)unset_attribute_value(10); } @@ -13857,54 +13857,54 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcRelConnectsWithEccentricity::Class() Ifc4x3_add1::IfcRelConnectsWithEccentricity Ifc4x3_add1::IfcRelConnectsWithEccentricity::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, ::Ifc4x3_add1::IfcStructuralMember v5_RelatingStructuralMember, ::Ifc4x3_add1::IfcStructuralConnection v6_RelatedStructuralConnection, ::Ifc4x3_add1::IfcBoundaryCondition v7_AppliedCondition, ::Ifc4x3_add1::IfcStructuralConnectionCondition v8_AdditionalConditions, std::optional< double > v9_SupportedLength, ::Ifc4x3_add1::IfcAxis2Placement3D v10_ConditionCoordinateSystem, ::Ifc4x3_add1::IfcConnectionGeometry v11_ConnectionConstraint) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, (v5_RelatingStructuralMember));set_attribute_value(5, (v6_RelatedStructuralConnection));set_attribute_value(6, (v7_AppliedCondition));set_attribute_value(7, (v8_AdditionalConditions)); if (v9_SupportedLength) {set_attribute_value(8, (*v9_SupportedLength)); }set_attribute_value(9, (v10_ConditionCoordinateSystem));set_attribute_value(10, (v11_ConnectionConstraint));; return *this; } // Function implementations for IfcRelConnectsWithRealizingElements -std::vector< ::Ifc4x3_add1::IfcElement > Ifc4x3_add1::IfcRelConnectsWithRealizingElements::RealizingElements() const { std::vector es = get_attribute_value(7); return cast_vector<::Ifc4x3_add1::IfcElement>(es); } -void Ifc4x3_add1::IfcRelConnectsWithRealizingElements::setRealizingElements(const std::vector< ::Ifc4x3_add1::IfcElement >& v) { set_attribute_value(7, cast_vector(v));if constexpr (false)unset_attribute_value(7); } +std::vector< ::Ifc4x3_add1::IfcElement > Ifc4x3_add1::IfcRelConnectsWithRealizingElements::RealizingElements() const { std::vector es = get_attribute_value(7); return cast_vector<::Ifc4x3_add1::IfcElement>(es); } +void Ifc4x3_add1::IfcRelConnectsWithRealizingElements::setRealizingElements(const std::vector< ::Ifc4x3_add1::IfcElement >& v) { set_attribute_value(7, cast_vector(v));if constexpr (false)unset_attribute_value(7); } std::optional< std::string > Ifc4x3_add1::IfcRelConnectsWithRealizingElements::ConnectionType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } std::string v = get_attribute_value(8); return v; } void Ifc4x3_add1::IfcRelConnectsWithRealizingElements::setConnectionType(const std::optional< std::string >& v) { if (v) {set_attribute_value(8, *v);} else {unset_attribute_value(8);} } const ifcopenshell::entity& Ifc4x3_add1::IfcRelConnectsWithRealizingElements::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[925]); } -Ifc4x3_add1::IfcRelConnectsWithRealizingElements Ifc4x3_add1::IfcRelConnectsWithRealizingElements::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, ::Ifc4x3_add1::IfcConnectionGeometry v5_ConnectionGeometry, ::Ifc4x3_add1::IfcElement v6_RelatingElement, ::Ifc4x3_add1::IfcElement v7_RelatedElement, std::vector< ::Ifc4x3_add1::IfcElement > v8_RealizingElements, std::optional< std::string > v9_ConnectionType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, (v5_ConnectionGeometry));set_attribute_value(5, (v6_RelatingElement));set_attribute_value(6, (v7_RelatedElement));set_attribute_value(7, cast_vector(v8_RealizingElements)); if (v9_ConnectionType) {set_attribute_value(8, (*v9_ConnectionType)); }; return *this; } +Ifc4x3_add1::IfcRelConnectsWithRealizingElements Ifc4x3_add1::IfcRelConnectsWithRealizingElements::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, ::Ifc4x3_add1::IfcConnectionGeometry v5_ConnectionGeometry, ::Ifc4x3_add1::IfcElement v6_RelatingElement, ::Ifc4x3_add1::IfcElement v7_RelatedElement, std::vector< ::Ifc4x3_add1::IfcElement > v8_RealizingElements, std::optional< std::string > v9_ConnectionType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, (v5_ConnectionGeometry));set_attribute_value(5, (v6_RelatingElement));set_attribute_value(6, (v7_RelatedElement));set_attribute_value(7, cast_vector(v8_RealizingElements)); if (v9_ConnectionType) {set_attribute_value(8, (*v9_ConnectionType)); }; return *this; } // Function implementations for IfcRelContainedInSpatialStructure -std::vector< ::Ifc4x3_add1::IfcProduct > Ifc4x3_add1::IfcRelContainedInSpatialStructure::RelatedElements() const { std::vector es = get_attribute_value(4); return cast_vector<::Ifc4x3_add1::IfcProduct>(es); } -void Ifc4x3_add1::IfcRelContainedInSpatialStructure::setRelatedElements(const std::vector< ::Ifc4x3_add1::IfcProduct >& v) { set_attribute_value(4, cast_vector(v));if constexpr (false)unset_attribute_value(4); } -::Ifc4x3_add1::IfcSpatialElement Ifc4x3_add1::IfcRelContainedInSpatialStructure::RelatingStructure() const { return ((express::Base)(get_attribute_value(5))).as<::Ifc4x3_add1::IfcSpatialElement>(); } +std::vector< ::Ifc4x3_add1::IfcProduct > Ifc4x3_add1::IfcRelContainedInSpatialStructure::RelatedElements() const { std::vector es = get_attribute_value(4); return cast_vector<::Ifc4x3_add1::IfcProduct>(es); } +void Ifc4x3_add1::IfcRelContainedInSpatialStructure::setRelatedElements(const std::vector< ::Ifc4x3_add1::IfcProduct >& v) { set_attribute_value(4, cast_vector(v));if constexpr (false)unset_attribute_value(4); } +::Ifc4x3_add1::IfcSpatialElement Ifc4x3_add1::IfcRelContainedInSpatialStructure::RelatingStructure() const { return ((express::base)(get_attribute_value(5))).as<::Ifc4x3_add1::IfcSpatialElement>(); } void Ifc4x3_add1::IfcRelContainedInSpatialStructure::setRelatingStructure(const ::Ifc4x3_add1::IfcSpatialElement& v) { set_attribute_value(5, v);if constexpr (false)unset_attribute_value(5); } const ifcopenshell::entity& Ifc4x3_add1::IfcRelContainedInSpatialStructure::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[926]); } -Ifc4x3_add1::IfcRelContainedInSpatialStructure Ifc4x3_add1::IfcRelContainedInSpatialStructure::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3_add1::IfcProduct > v5_RelatedElements, ::Ifc4x3_add1::IfcSpatialElement v6_RelatingStructure) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedElements));set_attribute_value(5, (v6_RelatingStructure));; return *this; } +Ifc4x3_add1::IfcRelContainedInSpatialStructure Ifc4x3_add1::IfcRelContainedInSpatialStructure::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3_add1::IfcProduct > v5_RelatedElements, ::Ifc4x3_add1::IfcSpatialElement v6_RelatingStructure) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedElements));set_attribute_value(5, (v6_RelatingStructure));; return *this; } // Function implementations for IfcRelCoversBldgElements -::Ifc4x3_add1::IfcElement Ifc4x3_add1::IfcRelCoversBldgElements::RelatingBuildingElement() const { return ((express::Base)(get_attribute_value(4))).as<::Ifc4x3_add1::IfcElement>(); } +::Ifc4x3_add1::IfcElement Ifc4x3_add1::IfcRelCoversBldgElements::RelatingBuildingElement() const { return ((express::base)(get_attribute_value(4))).as<::Ifc4x3_add1::IfcElement>(); } void Ifc4x3_add1::IfcRelCoversBldgElements::setRelatingBuildingElement(const ::Ifc4x3_add1::IfcElement& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } -std::vector< ::Ifc4x3_add1::IfcCovering > Ifc4x3_add1::IfcRelCoversBldgElements::RelatedCoverings() const { std::vector es = get_attribute_value(5); return cast_vector<::Ifc4x3_add1::IfcCovering>(es); } -void Ifc4x3_add1::IfcRelCoversBldgElements::setRelatedCoverings(const std::vector< ::Ifc4x3_add1::IfcCovering >& v) { set_attribute_value(5, cast_vector(v));if constexpr (false)unset_attribute_value(5); } +std::vector< ::Ifc4x3_add1::IfcCovering > Ifc4x3_add1::IfcRelCoversBldgElements::RelatedCoverings() const { std::vector es = get_attribute_value(5); return cast_vector<::Ifc4x3_add1::IfcCovering>(es); } +void Ifc4x3_add1::IfcRelCoversBldgElements::setRelatedCoverings(const std::vector< ::Ifc4x3_add1::IfcCovering >& v) { set_attribute_value(5, cast_vector(v));if constexpr (false)unset_attribute_value(5); } const ifcopenshell::entity& Ifc4x3_add1::IfcRelCoversBldgElements::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[927]); } -Ifc4x3_add1::IfcRelCoversBldgElements Ifc4x3_add1::IfcRelCoversBldgElements::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, ::Ifc4x3_add1::IfcElement v5_RelatingBuildingElement, std::vector< ::Ifc4x3_add1::IfcCovering > v6_RelatedCoverings) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, (v5_RelatingBuildingElement));set_attribute_value(5, cast_vector(v6_RelatedCoverings));; return *this; } +Ifc4x3_add1::IfcRelCoversBldgElements Ifc4x3_add1::IfcRelCoversBldgElements::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, ::Ifc4x3_add1::IfcElement v5_RelatingBuildingElement, std::vector< ::Ifc4x3_add1::IfcCovering > v6_RelatedCoverings) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, (v5_RelatingBuildingElement));set_attribute_value(5, cast_vector(v6_RelatedCoverings));; return *this; } // Function implementations for IfcRelCoversSpaces -::Ifc4x3_add1::IfcSpace Ifc4x3_add1::IfcRelCoversSpaces::RelatingSpace() const { return ((express::Base)(get_attribute_value(4))).as<::Ifc4x3_add1::IfcSpace>(); } +::Ifc4x3_add1::IfcSpace Ifc4x3_add1::IfcRelCoversSpaces::RelatingSpace() const { return ((express::base)(get_attribute_value(4))).as<::Ifc4x3_add1::IfcSpace>(); } void Ifc4x3_add1::IfcRelCoversSpaces::setRelatingSpace(const ::Ifc4x3_add1::IfcSpace& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } -std::vector< ::Ifc4x3_add1::IfcCovering > Ifc4x3_add1::IfcRelCoversSpaces::RelatedCoverings() const { std::vector es = get_attribute_value(5); return cast_vector<::Ifc4x3_add1::IfcCovering>(es); } -void Ifc4x3_add1::IfcRelCoversSpaces::setRelatedCoverings(const std::vector< ::Ifc4x3_add1::IfcCovering >& v) { set_attribute_value(5, cast_vector(v));if constexpr (false)unset_attribute_value(5); } +std::vector< ::Ifc4x3_add1::IfcCovering > Ifc4x3_add1::IfcRelCoversSpaces::RelatedCoverings() const { std::vector es = get_attribute_value(5); return cast_vector<::Ifc4x3_add1::IfcCovering>(es); } +void Ifc4x3_add1::IfcRelCoversSpaces::setRelatedCoverings(const std::vector< ::Ifc4x3_add1::IfcCovering >& v) { set_attribute_value(5, cast_vector(v));if constexpr (false)unset_attribute_value(5); } const ifcopenshell::entity& Ifc4x3_add1::IfcRelCoversSpaces::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[928]); } -Ifc4x3_add1::IfcRelCoversSpaces Ifc4x3_add1::IfcRelCoversSpaces::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, ::Ifc4x3_add1::IfcSpace v5_RelatingSpace, std::vector< ::Ifc4x3_add1::IfcCovering > v6_RelatedCoverings) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, (v5_RelatingSpace));set_attribute_value(5, cast_vector(v6_RelatedCoverings));; return *this; } +Ifc4x3_add1::IfcRelCoversSpaces Ifc4x3_add1::IfcRelCoversSpaces::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, ::Ifc4x3_add1::IfcSpace v5_RelatingSpace, std::vector< ::Ifc4x3_add1::IfcCovering > v6_RelatedCoverings) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, (v5_RelatingSpace));set_attribute_value(5, cast_vector(v6_RelatedCoverings));; return *this; } // Function implementations for IfcRelDeclares -::Ifc4x3_add1::IfcContext Ifc4x3_add1::IfcRelDeclares::RelatingContext() const { return ((express::Base)(get_attribute_value(4))).as<::Ifc4x3_add1::IfcContext>(); } +::Ifc4x3_add1::IfcContext Ifc4x3_add1::IfcRelDeclares::RelatingContext() const { return ((express::base)(get_attribute_value(4))).as<::Ifc4x3_add1::IfcContext>(); } void Ifc4x3_add1::IfcRelDeclares::setRelatingContext(const ::Ifc4x3_add1::IfcContext& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } -std::vector< ::Ifc4x3_add1::IfcDefinitionSelect > Ifc4x3_add1::IfcRelDeclares::RelatedDefinitions() const { std::vector es = get_attribute_value(5); return cast_vector<::Ifc4x3_add1::IfcDefinitionSelect>(es); } -void Ifc4x3_add1::IfcRelDeclares::setRelatedDefinitions(const std::vector< ::Ifc4x3_add1::IfcDefinitionSelect >& v) { set_attribute_value(5, cast_vector(v));if constexpr (false)unset_attribute_value(5); } +std::vector< ::Ifc4x3_add1::IfcDefinitionSelect > Ifc4x3_add1::IfcRelDeclares::RelatedDefinitions() const { std::vector es = get_attribute_value(5); return cast_vector<::Ifc4x3_add1::IfcDefinitionSelect>(es); } +void Ifc4x3_add1::IfcRelDeclares::setRelatedDefinitions(const std::vector< ::Ifc4x3_add1::IfcDefinitionSelect >& v) { set_attribute_value(5, cast_vector(v));if constexpr (false)unset_attribute_value(5); } const ifcopenshell::entity& Ifc4x3_add1::IfcRelDeclares::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[929]); } -Ifc4x3_add1::IfcRelDeclares Ifc4x3_add1::IfcRelDeclares::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, ::Ifc4x3_add1::IfcContext v5_RelatingContext, std::vector< ::Ifc4x3_add1::IfcDefinitionSelect > v6_RelatedDefinitions) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, (v5_RelatingContext));set_attribute_value(5, cast_vector(v6_RelatedDefinitions));; return *this; } +Ifc4x3_add1::IfcRelDeclares Ifc4x3_add1::IfcRelDeclares::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, ::Ifc4x3_add1::IfcContext v5_RelatingContext, std::vector< ::Ifc4x3_add1::IfcDefinitionSelect > v6_RelatedDefinitions) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, (v5_RelatingContext));set_attribute_value(5, cast_vector(v6_RelatedDefinitions));; return *this; } // Function implementations for IfcRelDecomposes @@ -13919,49 +13919,49 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcRelDefines::Class() { return *((ifco Ifc4x3_add1::IfcRelDefines Ifc4x3_add1::IfcRelDefines::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }; return *this; } // Function implementations for IfcRelDefinesByObject -std::vector< ::Ifc4x3_add1::IfcObject > Ifc4x3_add1::IfcRelDefinesByObject::RelatedObjects() const { std::vector es = get_attribute_value(4); return cast_vector<::Ifc4x3_add1::IfcObject>(es); } -void Ifc4x3_add1::IfcRelDefinesByObject::setRelatedObjects(const std::vector< ::Ifc4x3_add1::IfcObject >& v) { set_attribute_value(4, cast_vector(v));if constexpr (false)unset_attribute_value(4); } -::Ifc4x3_add1::IfcObject Ifc4x3_add1::IfcRelDefinesByObject::RelatingObject() const { return ((express::Base)(get_attribute_value(5))).as<::Ifc4x3_add1::IfcObject>(); } +std::vector< ::Ifc4x3_add1::IfcObject > Ifc4x3_add1::IfcRelDefinesByObject::RelatedObjects() const { std::vector es = get_attribute_value(4); return cast_vector<::Ifc4x3_add1::IfcObject>(es); } +void Ifc4x3_add1::IfcRelDefinesByObject::setRelatedObjects(const std::vector< ::Ifc4x3_add1::IfcObject >& v) { set_attribute_value(4, cast_vector(v));if constexpr (false)unset_attribute_value(4); } +::Ifc4x3_add1::IfcObject Ifc4x3_add1::IfcRelDefinesByObject::RelatingObject() const { return ((express::base)(get_attribute_value(5))).as<::Ifc4x3_add1::IfcObject>(); } void Ifc4x3_add1::IfcRelDefinesByObject::setRelatingObject(const ::Ifc4x3_add1::IfcObject& v) { set_attribute_value(5, v);if constexpr (false)unset_attribute_value(5); } const ifcopenshell::entity& Ifc4x3_add1::IfcRelDefinesByObject::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[932]); } -Ifc4x3_add1::IfcRelDefinesByObject Ifc4x3_add1::IfcRelDefinesByObject::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3_add1::IfcObject > v5_RelatedObjects, ::Ifc4x3_add1::IfcObject v6_RelatingObject) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedObjects));set_attribute_value(5, (v6_RelatingObject));; return *this; } +Ifc4x3_add1::IfcRelDefinesByObject Ifc4x3_add1::IfcRelDefinesByObject::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3_add1::IfcObject > v5_RelatedObjects, ::Ifc4x3_add1::IfcObject v6_RelatingObject) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedObjects));set_attribute_value(5, (v6_RelatingObject));; return *this; } // Function implementations for IfcRelDefinesByProperties -std::vector< ::Ifc4x3_add1::IfcObjectDefinition > Ifc4x3_add1::IfcRelDefinesByProperties::RelatedObjects() const { std::vector es = get_attribute_value(4); return cast_vector<::Ifc4x3_add1::IfcObjectDefinition>(es); } -void Ifc4x3_add1::IfcRelDefinesByProperties::setRelatedObjects(const std::vector< ::Ifc4x3_add1::IfcObjectDefinition >& v) { set_attribute_value(4, cast_vector(v));if constexpr (false)unset_attribute_value(4); } -::Ifc4x3_add1::IfcPropertySetDefinitionSelect Ifc4x3_add1::IfcRelDefinesByProperties::RelatingPropertyDefinition() const { return ((express::Base)(get_attribute_value(5))).as<::Ifc4x3_add1::IfcPropertySetDefinitionSelect>(); } +std::vector< ::Ifc4x3_add1::IfcObjectDefinition > Ifc4x3_add1::IfcRelDefinesByProperties::RelatedObjects() const { std::vector es = get_attribute_value(4); return cast_vector<::Ifc4x3_add1::IfcObjectDefinition>(es); } +void Ifc4x3_add1::IfcRelDefinesByProperties::setRelatedObjects(const std::vector< ::Ifc4x3_add1::IfcObjectDefinition >& v) { set_attribute_value(4, cast_vector(v));if constexpr (false)unset_attribute_value(4); } +::Ifc4x3_add1::IfcPropertySetDefinitionSelect Ifc4x3_add1::IfcRelDefinesByProperties::RelatingPropertyDefinition() const { return ((express::base)(get_attribute_value(5))).as<::Ifc4x3_add1::IfcPropertySetDefinitionSelect>(); } void Ifc4x3_add1::IfcRelDefinesByProperties::setRelatingPropertyDefinition(const ::Ifc4x3_add1::IfcPropertySetDefinitionSelect& v) { set_attribute_value(5, v);if constexpr (false)unset_attribute_value(5); } const ifcopenshell::entity& Ifc4x3_add1::IfcRelDefinesByProperties::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[933]); } -Ifc4x3_add1::IfcRelDefinesByProperties Ifc4x3_add1::IfcRelDefinesByProperties::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3_add1::IfcObjectDefinition > v5_RelatedObjects, ::Ifc4x3_add1::IfcPropertySetDefinitionSelect v6_RelatingPropertyDefinition) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedObjects));set_attribute_value(5, (v6_RelatingPropertyDefinition));; return *this; } +Ifc4x3_add1::IfcRelDefinesByProperties Ifc4x3_add1::IfcRelDefinesByProperties::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3_add1::IfcObjectDefinition > v5_RelatedObjects, ::Ifc4x3_add1::IfcPropertySetDefinitionSelect v6_RelatingPropertyDefinition) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedObjects));set_attribute_value(5, (v6_RelatingPropertyDefinition));; return *this; } // Function implementations for IfcRelDefinesByTemplate -std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > Ifc4x3_add1::IfcRelDefinesByTemplate::RelatedPropertySets() const { std::vector es = get_attribute_value(4); return cast_vector<::Ifc4x3_add1::IfcPropertySetDefinition>(es); } -void Ifc4x3_add1::IfcRelDefinesByTemplate::setRelatedPropertySets(const std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition >& v) { set_attribute_value(4, cast_vector(v));if constexpr (false)unset_attribute_value(4); } -::Ifc4x3_add1::IfcPropertySetTemplate Ifc4x3_add1::IfcRelDefinesByTemplate::RelatingTemplate() const { return ((express::Base)(get_attribute_value(5))).as<::Ifc4x3_add1::IfcPropertySetTemplate>(); } +std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > Ifc4x3_add1::IfcRelDefinesByTemplate::RelatedPropertySets() const { std::vector es = get_attribute_value(4); return cast_vector<::Ifc4x3_add1::IfcPropertySetDefinition>(es); } +void Ifc4x3_add1::IfcRelDefinesByTemplate::setRelatedPropertySets(const std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition >& v) { set_attribute_value(4, cast_vector(v));if constexpr (false)unset_attribute_value(4); } +::Ifc4x3_add1::IfcPropertySetTemplate Ifc4x3_add1::IfcRelDefinesByTemplate::RelatingTemplate() const { return ((express::base)(get_attribute_value(5))).as<::Ifc4x3_add1::IfcPropertySetTemplate>(); } void Ifc4x3_add1::IfcRelDefinesByTemplate::setRelatingTemplate(const ::Ifc4x3_add1::IfcPropertySetTemplate& v) { set_attribute_value(5, v);if constexpr (false)unset_attribute_value(5); } const ifcopenshell::entity& Ifc4x3_add1::IfcRelDefinesByTemplate::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[934]); } -Ifc4x3_add1::IfcRelDefinesByTemplate Ifc4x3_add1::IfcRelDefinesByTemplate::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > v5_RelatedPropertySets, ::Ifc4x3_add1::IfcPropertySetTemplate v6_RelatingTemplate) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedPropertySets));set_attribute_value(5, (v6_RelatingTemplate));; return *this; } +Ifc4x3_add1::IfcRelDefinesByTemplate Ifc4x3_add1::IfcRelDefinesByTemplate::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > v5_RelatedPropertySets, ::Ifc4x3_add1::IfcPropertySetTemplate v6_RelatingTemplate) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedPropertySets));set_attribute_value(5, (v6_RelatingTemplate));; return *this; } // Function implementations for IfcRelDefinesByType -std::vector< ::Ifc4x3_add1::IfcObject > Ifc4x3_add1::IfcRelDefinesByType::RelatedObjects() const { std::vector es = get_attribute_value(4); return cast_vector<::Ifc4x3_add1::IfcObject>(es); } -void Ifc4x3_add1::IfcRelDefinesByType::setRelatedObjects(const std::vector< ::Ifc4x3_add1::IfcObject >& v) { set_attribute_value(4, cast_vector(v));if constexpr (false)unset_attribute_value(4); } -::Ifc4x3_add1::IfcTypeObject Ifc4x3_add1::IfcRelDefinesByType::RelatingType() const { return ((express::Base)(get_attribute_value(5))).as<::Ifc4x3_add1::IfcTypeObject>(); } +std::vector< ::Ifc4x3_add1::IfcObject > Ifc4x3_add1::IfcRelDefinesByType::RelatedObjects() const { std::vector es = get_attribute_value(4); return cast_vector<::Ifc4x3_add1::IfcObject>(es); } +void Ifc4x3_add1::IfcRelDefinesByType::setRelatedObjects(const std::vector< ::Ifc4x3_add1::IfcObject >& v) { set_attribute_value(4, cast_vector(v));if constexpr (false)unset_attribute_value(4); } +::Ifc4x3_add1::IfcTypeObject Ifc4x3_add1::IfcRelDefinesByType::RelatingType() const { return ((express::base)(get_attribute_value(5))).as<::Ifc4x3_add1::IfcTypeObject>(); } void Ifc4x3_add1::IfcRelDefinesByType::setRelatingType(const ::Ifc4x3_add1::IfcTypeObject& v) { set_attribute_value(5, v);if constexpr (false)unset_attribute_value(5); } const ifcopenshell::entity& Ifc4x3_add1::IfcRelDefinesByType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[935]); } -Ifc4x3_add1::IfcRelDefinesByType Ifc4x3_add1::IfcRelDefinesByType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3_add1::IfcObject > v5_RelatedObjects, ::Ifc4x3_add1::IfcTypeObject v6_RelatingType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedObjects));set_attribute_value(5, (v6_RelatingType));; return *this; } +Ifc4x3_add1::IfcRelDefinesByType Ifc4x3_add1::IfcRelDefinesByType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3_add1::IfcObject > v5_RelatedObjects, ::Ifc4x3_add1::IfcTypeObject v6_RelatingType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedObjects));set_attribute_value(5, (v6_RelatingType));; return *this; } // Function implementations for IfcRelFillsElement -::Ifc4x3_add1::IfcOpeningElement Ifc4x3_add1::IfcRelFillsElement::RelatingOpeningElement() const { return ((express::Base)(get_attribute_value(4))).as<::Ifc4x3_add1::IfcOpeningElement>(); } +::Ifc4x3_add1::IfcOpeningElement Ifc4x3_add1::IfcRelFillsElement::RelatingOpeningElement() const { return ((express::base)(get_attribute_value(4))).as<::Ifc4x3_add1::IfcOpeningElement>(); } void Ifc4x3_add1::IfcRelFillsElement::setRelatingOpeningElement(const ::Ifc4x3_add1::IfcOpeningElement& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } -::Ifc4x3_add1::IfcElement Ifc4x3_add1::IfcRelFillsElement::RelatedBuildingElement() const { return ((express::Base)(get_attribute_value(5))).as<::Ifc4x3_add1::IfcElement>(); } +::Ifc4x3_add1::IfcElement Ifc4x3_add1::IfcRelFillsElement::RelatedBuildingElement() const { return ((express::base)(get_attribute_value(5))).as<::Ifc4x3_add1::IfcElement>(); } void Ifc4x3_add1::IfcRelFillsElement::setRelatedBuildingElement(const ::Ifc4x3_add1::IfcElement& v) { set_attribute_value(5, v);if constexpr (false)unset_attribute_value(5); } @@ -13969,27 +13969,27 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcRelFillsElement::Class() { return *( Ifc4x3_add1::IfcRelFillsElement Ifc4x3_add1::IfcRelFillsElement::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, ::Ifc4x3_add1::IfcOpeningElement v5_RelatingOpeningElement, ::Ifc4x3_add1::IfcElement v6_RelatedBuildingElement) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, (v5_RelatingOpeningElement));set_attribute_value(5, (v6_RelatedBuildingElement));; return *this; } // Function implementations for IfcRelFlowControlElements -std::vector< ::Ifc4x3_add1::IfcDistributionControlElement > Ifc4x3_add1::IfcRelFlowControlElements::RelatedControlElements() const { std::vector es = get_attribute_value(4); return cast_vector<::Ifc4x3_add1::IfcDistributionControlElement>(es); } -void Ifc4x3_add1::IfcRelFlowControlElements::setRelatedControlElements(const std::vector< ::Ifc4x3_add1::IfcDistributionControlElement >& v) { set_attribute_value(4, cast_vector(v));if constexpr (false)unset_attribute_value(4); } -::Ifc4x3_add1::IfcDistributionFlowElement Ifc4x3_add1::IfcRelFlowControlElements::RelatingFlowElement() const { return ((express::Base)(get_attribute_value(5))).as<::Ifc4x3_add1::IfcDistributionFlowElement>(); } +std::vector< ::Ifc4x3_add1::IfcDistributionControlElement > Ifc4x3_add1::IfcRelFlowControlElements::RelatedControlElements() const { std::vector es = get_attribute_value(4); return cast_vector<::Ifc4x3_add1::IfcDistributionControlElement>(es); } +void Ifc4x3_add1::IfcRelFlowControlElements::setRelatedControlElements(const std::vector< ::Ifc4x3_add1::IfcDistributionControlElement >& v) { set_attribute_value(4, cast_vector(v));if constexpr (false)unset_attribute_value(4); } +::Ifc4x3_add1::IfcDistributionFlowElement Ifc4x3_add1::IfcRelFlowControlElements::RelatingFlowElement() const { return ((express::base)(get_attribute_value(5))).as<::Ifc4x3_add1::IfcDistributionFlowElement>(); } void Ifc4x3_add1::IfcRelFlowControlElements::setRelatingFlowElement(const ::Ifc4x3_add1::IfcDistributionFlowElement& v) { set_attribute_value(5, v);if constexpr (false)unset_attribute_value(5); } const ifcopenshell::entity& Ifc4x3_add1::IfcRelFlowControlElements::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[937]); } -Ifc4x3_add1::IfcRelFlowControlElements Ifc4x3_add1::IfcRelFlowControlElements::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3_add1::IfcDistributionControlElement > v5_RelatedControlElements, ::Ifc4x3_add1::IfcDistributionFlowElement v6_RelatingFlowElement) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedControlElements));set_attribute_value(5, (v6_RelatingFlowElement));; return *this; } +Ifc4x3_add1::IfcRelFlowControlElements Ifc4x3_add1::IfcRelFlowControlElements::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3_add1::IfcDistributionControlElement > v5_RelatedControlElements, ::Ifc4x3_add1::IfcDistributionFlowElement v6_RelatingFlowElement) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedControlElements));set_attribute_value(5, (v6_RelatingFlowElement));; return *this; } // Function implementations for IfcRelInterferesElements -::Ifc4x3_add1::IfcInterferenceSelect Ifc4x3_add1::IfcRelInterferesElements::RelatingElement() const { return ((express::Base)(get_attribute_value(4))).as<::Ifc4x3_add1::IfcInterferenceSelect>(); } +::Ifc4x3_add1::IfcInterferenceSelect Ifc4x3_add1::IfcRelInterferesElements::RelatingElement() const { return ((express::base)(get_attribute_value(4))).as<::Ifc4x3_add1::IfcInterferenceSelect>(); } void Ifc4x3_add1::IfcRelInterferesElements::setRelatingElement(const ::Ifc4x3_add1::IfcInterferenceSelect& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } -::Ifc4x3_add1::IfcInterferenceSelect Ifc4x3_add1::IfcRelInterferesElements::RelatedElement() const { return ((express::Base)(get_attribute_value(5))).as<::Ifc4x3_add1::IfcInterferenceSelect>(); } +::Ifc4x3_add1::IfcInterferenceSelect Ifc4x3_add1::IfcRelInterferesElements::RelatedElement() const { return ((express::base)(get_attribute_value(5))).as<::Ifc4x3_add1::IfcInterferenceSelect>(); } void Ifc4x3_add1::IfcRelInterferesElements::setRelatedElement(const ::Ifc4x3_add1::IfcInterferenceSelect& v) { set_attribute_value(5, v);if constexpr (false)unset_attribute_value(5); } -::Ifc4x3_add1::IfcConnectionGeometry Ifc4x3_add1::IfcRelInterferesElements::InterferenceGeometry() const { if(get_attribute_value(6).isNull()) { return ::Ifc4x3_add1::IfcConnectionGeometry{}; } return ((express::Base)(get_attribute_value(6))).as<::Ifc4x3_add1::IfcConnectionGeometry>(); } +::Ifc4x3_add1::IfcConnectionGeometry Ifc4x3_add1::IfcRelInterferesElements::InterferenceGeometry() const { if(get_attribute_value(6).isNull()) { return ::Ifc4x3_add1::IfcConnectionGeometry{}; } return ((express::base)(get_attribute_value(6))).as<::Ifc4x3_add1::IfcConnectionGeometry>(); } void Ifc4x3_add1::IfcRelInterferesElements::setInterferenceGeometry(const ::Ifc4x3_add1::IfcConnectionGeometry& v) { set_attribute_value(6, v);if constexpr (false)unset_attribute_value(6); } std::optional< std::string > Ifc4x3_add1::IfcRelInterferesElements::InterferenceType() const { if(get_attribute_value(7).isNull()) { return std::nullopt; } std::string v = get_attribute_value(7); return v; } void Ifc4x3_add1::IfcRelInterferesElements::setInterferenceType(const std::optional< std::string >& v) { if (v) {set_attribute_value(7, *v);} else {unset_attribute_value(7);} } boost::logic::tribool Ifc4x3_add1::IfcRelInterferesElements::ImpliedOrder() const { boost::logic::tribool v = get_attribute_value(8); return v; } void Ifc4x3_add1::IfcRelInterferesElements::setImpliedOrder(const boost::logic::tribool& v) { set_attribute_value(8, v);if constexpr (false)unset_attribute_value(8); } -::Ifc4x3_add1::IfcSpatialZone Ifc4x3_add1::IfcRelInterferesElements::InterferenceSpace() const { if(get_attribute_value(9).isNull()) { return ::Ifc4x3_add1::IfcSpatialZone{}; } return ((express::Base)(get_attribute_value(9))).as<::Ifc4x3_add1::IfcSpatialZone>(); } +::Ifc4x3_add1::IfcSpatialZone Ifc4x3_add1::IfcRelInterferesElements::InterferenceSpace() const { if(get_attribute_value(9).isNull()) { return ::Ifc4x3_add1::IfcSpatialZone{}; } return ((express::base)(get_attribute_value(9))).as<::Ifc4x3_add1::IfcSpatialZone>(); } void Ifc4x3_add1::IfcRelInterferesElements::setInterferenceSpace(const ::Ifc4x3_add1::IfcSpatialZone& v) { set_attribute_value(9, v);if constexpr (false)unset_attribute_value(9); } @@ -13997,29 +13997,29 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcRelInterferesElements::Class() { ret Ifc4x3_add1::IfcRelInterferesElements Ifc4x3_add1::IfcRelInterferesElements::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, ::Ifc4x3_add1::IfcInterferenceSelect v5_RelatingElement, ::Ifc4x3_add1::IfcInterferenceSelect v6_RelatedElement, ::Ifc4x3_add1::IfcConnectionGeometry v7_InterferenceGeometry, std::optional< std::string > v8_InterferenceType, boost::logic::tribool v9_ImpliedOrder, ::Ifc4x3_add1::IfcSpatialZone v10_InterferenceSpace) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, (v5_RelatingElement));set_attribute_value(5, (v6_RelatedElement));set_attribute_value(6, (v7_InterferenceGeometry)); if (v8_InterferenceType) {set_attribute_value(7, (*v8_InterferenceType)); }set_attribute_value(8, (v9_ImpliedOrder));set_attribute_value(9, (v10_InterferenceSpace));; return *this; } // Function implementations for IfcRelNests -::Ifc4x3_add1::IfcObjectDefinition Ifc4x3_add1::IfcRelNests::RelatingObject() const { return ((express::Base)(get_attribute_value(4))).as<::Ifc4x3_add1::IfcObjectDefinition>(); } +::Ifc4x3_add1::IfcObjectDefinition Ifc4x3_add1::IfcRelNests::RelatingObject() const { return ((express::base)(get_attribute_value(4))).as<::Ifc4x3_add1::IfcObjectDefinition>(); } void Ifc4x3_add1::IfcRelNests::setRelatingObject(const ::Ifc4x3_add1::IfcObjectDefinition& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } -std::vector< ::Ifc4x3_add1::IfcObjectDefinition > Ifc4x3_add1::IfcRelNests::RelatedObjects() const { std::vector es = get_attribute_value(5); return cast_vector<::Ifc4x3_add1::IfcObjectDefinition>(es); } -void Ifc4x3_add1::IfcRelNests::setRelatedObjects(const std::vector< ::Ifc4x3_add1::IfcObjectDefinition >& v) { set_attribute_value(5, cast_vector(v));if constexpr (false)unset_attribute_value(5); } +std::vector< ::Ifc4x3_add1::IfcObjectDefinition > Ifc4x3_add1::IfcRelNests::RelatedObjects() const { std::vector es = get_attribute_value(5); return cast_vector<::Ifc4x3_add1::IfcObjectDefinition>(es); } +void Ifc4x3_add1::IfcRelNests::setRelatedObjects(const std::vector< ::Ifc4x3_add1::IfcObjectDefinition >& v) { set_attribute_value(5, cast_vector(v));if constexpr (false)unset_attribute_value(5); } const ifcopenshell::entity& Ifc4x3_add1::IfcRelNests::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[939]); } -Ifc4x3_add1::IfcRelNests Ifc4x3_add1::IfcRelNests::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, ::Ifc4x3_add1::IfcObjectDefinition v5_RelatingObject, std::vector< ::Ifc4x3_add1::IfcObjectDefinition > v6_RelatedObjects) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, (v5_RelatingObject));set_attribute_value(5, cast_vector(v6_RelatedObjects));; return *this; } +Ifc4x3_add1::IfcRelNests Ifc4x3_add1::IfcRelNests::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, ::Ifc4x3_add1::IfcObjectDefinition v5_RelatingObject, std::vector< ::Ifc4x3_add1::IfcObjectDefinition > v6_RelatedObjects) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, (v5_RelatingObject));set_attribute_value(5, cast_vector(v6_RelatedObjects));; return *this; } // Function implementations for IfcRelPositions -::Ifc4x3_add1::IfcPositioningElement Ifc4x3_add1::IfcRelPositions::RelatingPositioningElement() const { return ((express::Base)(get_attribute_value(4))).as<::Ifc4x3_add1::IfcPositioningElement>(); } +::Ifc4x3_add1::IfcPositioningElement Ifc4x3_add1::IfcRelPositions::RelatingPositioningElement() const { return ((express::base)(get_attribute_value(4))).as<::Ifc4x3_add1::IfcPositioningElement>(); } void Ifc4x3_add1::IfcRelPositions::setRelatingPositioningElement(const ::Ifc4x3_add1::IfcPositioningElement& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } -std::vector< ::Ifc4x3_add1::IfcProduct > Ifc4x3_add1::IfcRelPositions::RelatedProducts() const { std::vector es = get_attribute_value(5); return cast_vector<::Ifc4x3_add1::IfcProduct>(es); } -void Ifc4x3_add1::IfcRelPositions::setRelatedProducts(const std::vector< ::Ifc4x3_add1::IfcProduct >& v) { set_attribute_value(5, cast_vector(v));if constexpr (false)unset_attribute_value(5); } +std::vector< ::Ifc4x3_add1::IfcProduct > Ifc4x3_add1::IfcRelPositions::RelatedProducts() const { std::vector es = get_attribute_value(5); return cast_vector<::Ifc4x3_add1::IfcProduct>(es); } +void Ifc4x3_add1::IfcRelPositions::setRelatedProducts(const std::vector< ::Ifc4x3_add1::IfcProduct >& v) { set_attribute_value(5, cast_vector(v));if constexpr (false)unset_attribute_value(5); } const ifcopenshell::entity& Ifc4x3_add1::IfcRelPositions::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[940]); } -Ifc4x3_add1::IfcRelPositions Ifc4x3_add1::IfcRelPositions::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, ::Ifc4x3_add1::IfcPositioningElement v5_RelatingPositioningElement, std::vector< ::Ifc4x3_add1::IfcProduct > v6_RelatedProducts) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, (v5_RelatingPositioningElement));set_attribute_value(5, cast_vector(v6_RelatedProducts));; return *this; } +Ifc4x3_add1::IfcRelPositions Ifc4x3_add1::IfcRelPositions::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, ::Ifc4x3_add1::IfcPositioningElement v5_RelatingPositioningElement, std::vector< ::Ifc4x3_add1::IfcProduct > v6_RelatedProducts) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, (v5_RelatingPositioningElement));set_attribute_value(5, cast_vector(v6_RelatedProducts));; return *this; } // Function implementations for IfcRelProjectsElement -::Ifc4x3_add1::IfcElement Ifc4x3_add1::IfcRelProjectsElement::RelatingElement() const { return ((express::Base)(get_attribute_value(4))).as<::Ifc4x3_add1::IfcElement>(); } +::Ifc4x3_add1::IfcElement Ifc4x3_add1::IfcRelProjectsElement::RelatingElement() const { return ((express::base)(get_attribute_value(4))).as<::Ifc4x3_add1::IfcElement>(); } void Ifc4x3_add1::IfcRelProjectsElement::setRelatingElement(const ::Ifc4x3_add1::IfcElement& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } -::Ifc4x3_add1::IfcFeatureElementAddition Ifc4x3_add1::IfcRelProjectsElement::RelatedFeatureElement() const { return ((express::Base)(get_attribute_value(5))).as<::Ifc4x3_add1::IfcFeatureElementAddition>(); } +::Ifc4x3_add1::IfcFeatureElementAddition Ifc4x3_add1::IfcRelProjectsElement::RelatedFeatureElement() const { return ((express::base)(get_attribute_value(5))).as<::Ifc4x3_add1::IfcFeatureElementAddition>(); } void Ifc4x3_add1::IfcRelProjectsElement::setRelatedFeatureElement(const ::Ifc4x3_add1::IfcFeatureElementAddition& v) { set_attribute_value(5, v);if constexpr (false)unset_attribute_value(5); } @@ -14027,21 +14027,21 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcRelProjectsElement::Class() { return Ifc4x3_add1::IfcRelProjectsElement Ifc4x3_add1::IfcRelProjectsElement::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, ::Ifc4x3_add1::IfcElement v5_RelatingElement, ::Ifc4x3_add1::IfcFeatureElementAddition v6_RelatedFeatureElement) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, (v5_RelatingElement));set_attribute_value(5, (v6_RelatedFeatureElement));; return *this; } // Function implementations for IfcRelReferencedInSpatialStructure -std::vector< ::Ifc4x3_add1::IfcSpatialReferenceSelect > Ifc4x3_add1::IfcRelReferencedInSpatialStructure::RelatedElements() const { std::vector es = get_attribute_value(4); return cast_vector<::Ifc4x3_add1::IfcSpatialReferenceSelect>(es); } -void Ifc4x3_add1::IfcRelReferencedInSpatialStructure::setRelatedElements(const std::vector< ::Ifc4x3_add1::IfcSpatialReferenceSelect >& v) { set_attribute_value(4, cast_vector(v));if constexpr (false)unset_attribute_value(4); } -::Ifc4x3_add1::IfcSpatialElement Ifc4x3_add1::IfcRelReferencedInSpatialStructure::RelatingStructure() const { return ((express::Base)(get_attribute_value(5))).as<::Ifc4x3_add1::IfcSpatialElement>(); } +std::vector< ::Ifc4x3_add1::IfcSpatialReferenceSelect > Ifc4x3_add1::IfcRelReferencedInSpatialStructure::RelatedElements() const { std::vector es = get_attribute_value(4); return cast_vector<::Ifc4x3_add1::IfcSpatialReferenceSelect>(es); } +void Ifc4x3_add1::IfcRelReferencedInSpatialStructure::setRelatedElements(const std::vector< ::Ifc4x3_add1::IfcSpatialReferenceSelect >& v) { set_attribute_value(4, cast_vector(v));if constexpr (false)unset_attribute_value(4); } +::Ifc4x3_add1::IfcSpatialElement Ifc4x3_add1::IfcRelReferencedInSpatialStructure::RelatingStructure() const { return ((express::base)(get_attribute_value(5))).as<::Ifc4x3_add1::IfcSpatialElement>(); } void Ifc4x3_add1::IfcRelReferencedInSpatialStructure::setRelatingStructure(const ::Ifc4x3_add1::IfcSpatialElement& v) { set_attribute_value(5, v);if constexpr (false)unset_attribute_value(5); } const ifcopenshell::entity& Ifc4x3_add1::IfcRelReferencedInSpatialStructure::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[942]); } -Ifc4x3_add1::IfcRelReferencedInSpatialStructure Ifc4x3_add1::IfcRelReferencedInSpatialStructure::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3_add1::IfcSpatialReferenceSelect > v5_RelatedElements, ::Ifc4x3_add1::IfcSpatialElement v6_RelatingStructure) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedElements));set_attribute_value(5, (v6_RelatingStructure));; return *this; } +Ifc4x3_add1::IfcRelReferencedInSpatialStructure Ifc4x3_add1::IfcRelReferencedInSpatialStructure::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3_add1::IfcSpatialReferenceSelect > v5_RelatedElements, ::Ifc4x3_add1::IfcSpatialElement v6_RelatingStructure) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedElements));set_attribute_value(5, (v6_RelatingStructure));; return *this; } // Function implementations for IfcRelSequence -::Ifc4x3_add1::IfcProcess Ifc4x3_add1::IfcRelSequence::RelatingProcess() const { return ((express::Base)(get_attribute_value(4))).as<::Ifc4x3_add1::IfcProcess>(); } +::Ifc4x3_add1::IfcProcess Ifc4x3_add1::IfcRelSequence::RelatingProcess() const { return ((express::base)(get_attribute_value(4))).as<::Ifc4x3_add1::IfcProcess>(); } void Ifc4x3_add1::IfcRelSequence::setRelatingProcess(const ::Ifc4x3_add1::IfcProcess& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } -::Ifc4x3_add1::IfcProcess Ifc4x3_add1::IfcRelSequence::RelatedProcess() const { return ((express::Base)(get_attribute_value(5))).as<::Ifc4x3_add1::IfcProcess>(); } +::Ifc4x3_add1::IfcProcess Ifc4x3_add1::IfcRelSequence::RelatedProcess() const { return ((express::base)(get_attribute_value(5))).as<::Ifc4x3_add1::IfcProcess>(); } void Ifc4x3_add1::IfcRelSequence::setRelatedProcess(const ::Ifc4x3_add1::IfcProcess& v) { set_attribute_value(5, v);if constexpr (false)unset_attribute_value(5); } -::Ifc4x3_add1::IfcLagTime Ifc4x3_add1::IfcRelSequence::TimeLag() const { if(get_attribute_value(6).isNull()) { return ::Ifc4x3_add1::IfcLagTime{}; } return ((express::Base)(get_attribute_value(6))).as<::Ifc4x3_add1::IfcLagTime>(); } +::Ifc4x3_add1::IfcLagTime Ifc4x3_add1::IfcRelSequence::TimeLag() const { if(get_attribute_value(6).isNull()) { return ::Ifc4x3_add1::IfcLagTime{}; } return ((express::base)(get_attribute_value(6))).as<::Ifc4x3_add1::IfcLagTime>(); } void Ifc4x3_add1::IfcRelSequence::setTimeLag(const ::Ifc4x3_add1::IfcLagTime& v) { set_attribute_value(6, v);if constexpr (false)unset_attribute_value(6); } std::optional< ::Ifc4x3_add1::IfcSequenceEnum::Value > Ifc4x3_add1::IfcRelSequence::SequenceType() const { if(get_attribute_value(7).isNull()) { return std::nullopt; } return ::Ifc4x3_add1::IfcSequenceEnum::FromString(get_attribute_value(7)); } void Ifc4x3_add1::IfcRelSequence::setSequenceType(const std::optional< ::Ifc4x3_add1::IfcSequenceEnum::Value >& v) { if (v) {set_attribute_value(7, enumeration_reference(&::Ifc4x3_add1::IfcSequenceEnum::Class(), (size_t) *v));} else {unset_attribute_value(7);} } @@ -14053,21 +14053,21 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcRelSequence::Class() { return *((ifc Ifc4x3_add1::IfcRelSequence Ifc4x3_add1::IfcRelSequence::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, ::Ifc4x3_add1::IfcProcess v5_RelatingProcess, ::Ifc4x3_add1::IfcProcess v6_RelatedProcess, ::Ifc4x3_add1::IfcLagTime v7_TimeLag, std::optional< ::Ifc4x3_add1::IfcSequenceEnum::Value > v8_SequenceType, std::optional< std::string > v9_UserDefinedSequenceType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, (v5_RelatingProcess));set_attribute_value(5, (v6_RelatedProcess));set_attribute_value(6, (v7_TimeLag)); if (v8_SequenceType) {set_attribute_value(7, (enumeration_reference(&::Ifc4x3_add1::IfcSequenceEnum::Class(),(size_t)*v8_SequenceType))); } if (v9_UserDefinedSequenceType) {set_attribute_value(8, (*v9_UserDefinedSequenceType)); }; return *this; } // Function implementations for IfcRelServicesBuildings -::Ifc4x3_add1::IfcSystem Ifc4x3_add1::IfcRelServicesBuildings::RelatingSystem() const { return ((express::Base)(get_attribute_value(4))).as<::Ifc4x3_add1::IfcSystem>(); } +::Ifc4x3_add1::IfcSystem Ifc4x3_add1::IfcRelServicesBuildings::RelatingSystem() const { return ((express::base)(get_attribute_value(4))).as<::Ifc4x3_add1::IfcSystem>(); } void Ifc4x3_add1::IfcRelServicesBuildings::setRelatingSystem(const ::Ifc4x3_add1::IfcSystem& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } -std::vector< ::Ifc4x3_add1::IfcSpatialElement > Ifc4x3_add1::IfcRelServicesBuildings::RelatedBuildings() const { std::vector es = get_attribute_value(5); return cast_vector<::Ifc4x3_add1::IfcSpatialElement>(es); } -void Ifc4x3_add1::IfcRelServicesBuildings::setRelatedBuildings(const std::vector< ::Ifc4x3_add1::IfcSpatialElement >& v) { set_attribute_value(5, cast_vector(v));if constexpr (false)unset_attribute_value(5); } +std::vector< ::Ifc4x3_add1::IfcSpatialElement > Ifc4x3_add1::IfcRelServicesBuildings::RelatedBuildings() const { std::vector es = get_attribute_value(5); return cast_vector<::Ifc4x3_add1::IfcSpatialElement>(es); } +void Ifc4x3_add1::IfcRelServicesBuildings::setRelatedBuildings(const std::vector< ::Ifc4x3_add1::IfcSpatialElement >& v) { set_attribute_value(5, cast_vector(v));if constexpr (false)unset_attribute_value(5); } const ifcopenshell::entity& Ifc4x3_add1::IfcRelServicesBuildings::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[944]); } -Ifc4x3_add1::IfcRelServicesBuildings Ifc4x3_add1::IfcRelServicesBuildings::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, ::Ifc4x3_add1::IfcSystem v5_RelatingSystem, std::vector< ::Ifc4x3_add1::IfcSpatialElement > v6_RelatedBuildings) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, (v5_RelatingSystem));set_attribute_value(5, cast_vector(v6_RelatedBuildings));; return *this; } +Ifc4x3_add1::IfcRelServicesBuildings Ifc4x3_add1::IfcRelServicesBuildings::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, ::Ifc4x3_add1::IfcSystem v5_RelatingSystem, std::vector< ::Ifc4x3_add1::IfcSpatialElement > v6_RelatedBuildings) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, (v5_RelatingSystem));set_attribute_value(5, cast_vector(v6_RelatedBuildings));; return *this; } // Function implementations for IfcRelSpaceBoundary -::Ifc4x3_add1::IfcSpaceBoundarySelect Ifc4x3_add1::IfcRelSpaceBoundary::RelatingSpace() const { return ((express::Base)(get_attribute_value(4))).as<::Ifc4x3_add1::IfcSpaceBoundarySelect>(); } +::Ifc4x3_add1::IfcSpaceBoundarySelect Ifc4x3_add1::IfcRelSpaceBoundary::RelatingSpace() const { return ((express::base)(get_attribute_value(4))).as<::Ifc4x3_add1::IfcSpaceBoundarySelect>(); } void Ifc4x3_add1::IfcRelSpaceBoundary::setRelatingSpace(const ::Ifc4x3_add1::IfcSpaceBoundarySelect& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } -::Ifc4x3_add1::IfcElement Ifc4x3_add1::IfcRelSpaceBoundary::RelatedBuildingElement() const { return ((express::Base)(get_attribute_value(5))).as<::Ifc4x3_add1::IfcElement>(); } +::Ifc4x3_add1::IfcElement Ifc4x3_add1::IfcRelSpaceBoundary::RelatedBuildingElement() const { return ((express::base)(get_attribute_value(5))).as<::Ifc4x3_add1::IfcElement>(); } void Ifc4x3_add1::IfcRelSpaceBoundary::setRelatedBuildingElement(const ::Ifc4x3_add1::IfcElement& v) { set_attribute_value(5, v);if constexpr (false)unset_attribute_value(5); } -::Ifc4x3_add1::IfcConnectionGeometry Ifc4x3_add1::IfcRelSpaceBoundary::ConnectionGeometry() const { if(get_attribute_value(6).isNull()) { return ::Ifc4x3_add1::IfcConnectionGeometry{}; } return ((express::Base)(get_attribute_value(6))).as<::Ifc4x3_add1::IfcConnectionGeometry>(); } +::Ifc4x3_add1::IfcConnectionGeometry Ifc4x3_add1::IfcRelSpaceBoundary::ConnectionGeometry() const { if(get_attribute_value(6).isNull()) { return ::Ifc4x3_add1::IfcConnectionGeometry{}; } return ((express::base)(get_attribute_value(6))).as<::Ifc4x3_add1::IfcConnectionGeometry>(); } void Ifc4x3_add1::IfcRelSpaceBoundary::setConnectionGeometry(const ::Ifc4x3_add1::IfcConnectionGeometry& v) { set_attribute_value(6, v);if constexpr (false)unset_attribute_value(6); } ::Ifc4x3_add1::IfcPhysicalOrVirtualEnum::Value Ifc4x3_add1::IfcRelSpaceBoundary::PhysicalOrVirtualBoundary() const { return ::Ifc4x3_add1::IfcPhysicalOrVirtualEnum::FromString(get_attribute_value(7)); } void Ifc4x3_add1::IfcRelSpaceBoundary::setPhysicalOrVirtualBoundary(const ::Ifc4x3_add1::IfcPhysicalOrVirtualEnum::Value& v) { set_attribute_value(7, enumeration_reference(&::Ifc4x3_add1::IfcPhysicalOrVirtualEnum::Class(), (size_t) v));if constexpr (false)unset_attribute_value(7); } @@ -14079,7 +14079,7 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcRelSpaceBoundary::Class() { return * Ifc4x3_add1::IfcRelSpaceBoundary Ifc4x3_add1::IfcRelSpaceBoundary::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, ::Ifc4x3_add1::IfcSpaceBoundarySelect v5_RelatingSpace, ::Ifc4x3_add1::IfcElement v6_RelatedBuildingElement, ::Ifc4x3_add1::IfcConnectionGeometry v7_ConnectionGeometry, ::Ifc4x3_add1::IfcPhysicalOrVirtualEnum::Value v8_PhysicalOrVirtualBoundary, ::Ifc4x3_add1::IfcInternalOrExternalEnum::Value v9_InternalOrExternalBoundary) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, (v5_RelatingSpace));set_attribute_value(5, (v6_RelatedBuildingElement));set_attribute_value(6, (v7_ConnectionGeometry));set_attribute_value(7, (enumeration_reference(&::Ifc4x3_add1::IfcPhysicalOrVirtualEnum::Class(),(size_t)v8_PhysicalOrVirtualBoundary)));set_attribute_value(8, (enumeration_reference(&::Ifc4x3_add1::IfcInternalOrExternalEnum::Class(),(size_t)v9_InternalOrExternalBoundary)));; return *this; } // Function implementations for IfcRelSpaceBoundary1stLevel -::Ifc4x3_add1::IfcRelSpaceBoundary1stLevel Ifc4x3_add1::IfcRelSpaceBoundary1stLevel::ParentBoundary() const { if(get_attribute_value(9).isNull()) { return ::Ifc4x3_add1::IfcRelSpaceBoundary1stLevel{}; } return ((express::Base)(get_attribute_value(9))).as<::Ifc4x3_add1::IfcRelSpaceBoundary1stLevel>(); } +::Ifc4x3_add1::IfcRelSpaceBoundary1stLevel Ifc4x3_add1::IfcRelSpaceBoundary1stLevel::ParentBoundary() const { if(get_attribute_value(9).isNull()) { return ::Ifc4x3_add1::IfcRelSpaceBoundary1stLevel{}; } return ((express::base)(get_attribute_value(9))).as<::Ifc4x3_add1::IfcRelSpaceBoundary1stLevel>(); } void Ifc4x3_add1::IfcRelSpaceBoundary1stLevel::setParentBoundary(const ::Ifc4x3_add1::IfcRelSpaceBoundary1stLevel& v) { set_attribute_value(9, v);if constexpr (false)unset_attribute_value(9); } std::vector<::Ifc4x3_add1::IfcRelSpaceBoundary1stLevel> Ifc4x3_add1::IfcRelSpaceBoundary1stLevel::InnerBoundaries() const { return cast_vector(file()->get_inverse(data()->id(), IFC4X3_ADD1_types[946], 9)); } @@ -14088,7 +14088,7 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcRelSpaceBoundary1stLevel::Class() { Ifc4x3_add1::IfcRelSpaceBoundary1stLevel Ifc4x3_add1::IfcRelSpaceBoundary1stLevel::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, ::Ifc4x3_add1::IfcSpaceBoundarySelect v5_RelatingSpace, ::Ifc4x3_add1::IfcElement v6_RelatedBuildingElement, ::Ifc4x3_add1::IfcConnectionGeometry v7_ConnectionGeometry, ::Ifc4x3_add1::IfcPhysicalOrVirtualEnum::Value v8_PhysicalOrVirtualBoundary, ::Ifc4x3_add1::IfcInternalOrExternalEnum::Value v9_InternalOrExternalBoundary, ::Ifc4x3_add1::IfcRelSpaceBoundary1stLevel v10_ParentBoundary) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, (v5_RelatingSpace));set_attribute_value(5, (v6_RelatedBuildingElement));set_attribute_value(6, (v7_ConnectionGeometry));set_attribute_value(7, (enumeration_reference(&::Ifc4x3_add1::IfcPhysicalOrVirtualEnum::Class(),(size_t)v8_PhysicalOrVirtualBoundary)));set_attribute_value(8, (enumeration_reference(&::Ifc4x3_add1::IfcInternalOrExternalEnum::Class(),(size_t)v9_InternalOrExternalBoundary)));set_attribute_value(9, (v10_ParentBoundary));; return *this; } // Function implementations for IfcRelSpaceBoundary2ndLevel -::Ifc4x3_add1::IfcRelSpaceBoundary2ndLevel Ifc4x3_add1::IfcRelSpaceBoundary2ndLevel::CorrespondingBoundary() const { if(get_attribute_value(10).isNull()) { return ::Ifc4x3_add1::IfcRelSpaceBoundary2ndLevel{}; } return ((express::Base)(get_attribute_value(10))).as<::Ifc4x3_add1::IfcRelSpaceBoundary2ndLevel>(); } +::Ifc4x3_add1::IfcRelSpaceBoundary2ndLevel Ifc4x3_add1::IfcRelSpaceBoundary2ndLevel::CorrespondingBoundary() const { if(get_attribute_value(10).isNull()) { return ::Ifc4x3_add1::IfcRelSpaceBoundary2ndLevel{}; } return ((express::base)(get_attribute_value(10))).as<::Ifc4x3_add1::IfcRelSpaceBoundary2ndLevel>(); } void Ifc4x3_add1::IfcRelSpaceBoundary2ndLevel::setCorrespondingBoundary(const ::Ifc4x3_add1::IfcRelSpaceBoundary2ndLevel& v) { set_attribute_value(10, v);if constexpr (false)unset_attribute_value(10); } std::vector<::Ifc4x3_add1::IfcRelSpaceBoundary2ndLevel> Ifc4x3_add1::IfcRelSpaceBoundary2ndLevel::Corresponds() const { return cast_vector(file()->get_inverse(data()->id(), IFC4X3_ADD1_types[947], 10)); } @@ -14097,9 +14097,9 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcRelSpaceBoundary2ndLevel::Class() { Ifc4x3_add1::IfcRelSpaceBoundary2ndLevel Ifc4x3_add1::IfcRelSpaceBoundary2ndLevel::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, ::Ifc4x3_add1::IfcSpaceBoundarySelect v5_RelatingSpace, ::Ifc4x3_add1::IfcElement v6_RelatedBuildingElement, ::Ifc4x3_add1::IfcConnectionGeometry v7_ConnectionGeometry, ::Ifc4x3_add1::IfcPhysicalOrVirtualEnum::Value v8_PhysicalOrVirtualBoundary, ::Ifc4x3_add1::IfcInternalOrExternalEnum::Value v9_InternalOrExternalBoundary, ::Ifc4x3_add1::IfcRelSpaceBoundary1stLevel v10_ParentBoundary, ::Ifc4x3_add1::IfcRelSpaceBoundary2ndLevel v11_CorrespondingBoundary) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, (v5_RelatingSpace));set_attribute_value(5, (v6_RelatedBuildingElement));set_attribute_value(6, (v7_ConnectionGeometry));set_attribute_value(7, (enumeration_reference(&::Ifc4x3_add1::IfcPhysicalOrVirtualEnum::Class(),(size_t)v8_PhysicalOrVirtualBoundary)));set_attribute_value(8, (enumeration_reference(&::Ifc4x3_add1::IfcInternalOrExternalEnum::Class(),(size_t)v9_InternalOrExternalBoundary)));set_attribute_value(9, (v10_ParentBoundary));set_attribute_value(10, (v11_CorrespondingBoundary));; return *this; } // Function implementations for IfcRelVoidsElement -::Ifc4x3_add1::IfcElement Ifc4x3_add1::IfcRelVoidsElement::RelatingBuildingElement() const { return ((express::Base)(get_attribute_value(4))).as<::Ifc4x3_add1::IfcElement>(); } +::Ifc4x3_add1::IfcElement Ifc4x3_add1::IfcRelVoidsElement::RelatingBuildingElement() const { return ((express::base)(get_attribute_value(4))).as<::Ifc4x3_add1::IfcElement>(); } void Ifc4x3_add1::IfcRelVoidsElement::setRelatingBuildingElement(const ::Ifc4x3_add1::IfcElement& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } -::Ifc4x3_add1::IfcFeatureElementSubtraction Ifc4x3_add1::IfcRelVoidsElement::RelatedOpeningElement() const { return ((express::Base)(get_attribute_value(5))).as<::Ifc4x3_add1::IfcFeatureElementSubtraction>(); } +::Ifc4x3_add1::IfcFeatureElementSubtraction Ifc4x3_add1::IfcRelVoidsElement::RelatedOpeningElement() const { return ((express::base)(get_attribute_value(5))).as<::Ifc4x3_add1::IfcFeatureElementSubtraction>(); } void Ifc4x3_add1::IfcRelVoidsElement::setRelatedOpeningElement(const ::Ifc4x3_add1::IfcFeatureElementSubtraction& v) { set_attribute_value(5, v);if constexpr (false)unset_attribute_value(5); } @@ -14121,21 +14121,21 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcReparametrisedCompositeCurveSegment: Ifc4x3_add1::IfcReparametrisedCompositeCurveSegment Ifc4x3_add1::IfcReparametrisedCompositeCurveSegment::initialize(::Ifc4x3_add1::IfcTransitionCode::Value v1_Transition, bool v2_SameSense, ::Ifc4x3_add1::IfcCurve v3_ParentCurve, double v4_ParamLength) { set_attribute_value(0, (enumeration_reference(&::Ifc4x3_add1::IfcTransitionCode::Class(),(size_t)v1_Transition)));set_attribute_value(1, (v2_SameSense));set_attribute_value(2, (v3_ParentCurve));set_attribute_value(3, (v4_ParamLength));; return *this; } // Function implementations for IfcRepresentation -::Ifc4x3_add1::IfcRepresentationContext Ifc4x3_add1::IfcRepresentation::ContextOfItems() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcRepresentationContext>(); } +::Ifc4x3_add1::IfcRepresentationContext Ifc4x3_add1::IfcRepresentation::ContextOfItems() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcRepresentationContext>(); } void Ifc4x3_add1::IfcRepresentation::setContextOfItems(const ::Ifc4x3_add1::IfcRepresentationContext& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } std::optional< std::string > Ifc4x3_add1::IfcRepresentation::RepresentationIdentifier() const { if(get_attribute_value(1).isNull()) { return std::nullopt; } std::string v = get_attribute_value(1); return v; } void Ifc4x3_add1::IfcRepresentation::setRepresentationIdentifier(const std::optional< std::string >& v) { if (v) {set_attribute_value(1, *v);} else {unset_attribute_value(1);} } std::optional< std::string > Ifc4x3_add1::IfcRepresentation::RepresentationType() const { if(get_attribute_value(2).isNull()) { return std::nullopt; } std::string v = get_attribute_value(2); return v; } void Ifc4x3_add1::IfcRepresentation::setRepresentationType(const std::optional< std::string >& v) { if (v) {set_attribute_value(2, *v);} else {unset_attribute_value(2);} } -std::vector< ::Ifc4x3_add1::IfcRepresentationItem > Ifc4x3_add1::IfcRepresentation::Items() const { std::vector es = get_attribute_value(3); return cast_vector<::Ifc4x3_add1::IfcRepresentationItem>(es); } -void Ifc4x3_add1::IfcRepresentation::setItems(const std::vector< ::Ifc4x3_add1::IfcRepresentationItem >& v) { set_attribute_value(3, cast_vector(v));if constexpr (false)unset_attribute_value(3); } +std::vector< ::Ifc4x3_add1::IfcRepresentationItem > Ifc4x3_add1::IfcRepresentation::Items() const { std::vector es = get_attribute_value(3); return cast_vector<::Ifc4x3_add1::IfcRepresentationItem>(es); } +void Ifc4x3_add1::IfcRepresentation::setItems(const std::vector< ::Ifc4x3_add1::IfcRepresentationItem >& v) { set_attribute_value(3, cast_vector(v));if constexpr (false)unset_attribute_value(3); } std::vector<::Ifc4x3_add1::IfcRepresentationMap> Ifc4x3_add1::IfcRepresentation::RepresentationMap() const { return cast_vector(file()->get_inverse(data()->id(), IFC4X3_ADD1_types[953], 1)); } std::vector<::Ifc4x3_add1::IfcPresentationLayerAssignment> Ifc4x3_add1::IfcRepresentation::LayerAssignments() const { return cast_vector(file()->get_inverse(data()->id(), IFC4X3_ADD1_types[791], 2)); } std::vector<::Ifc4x3_add1::IfcProductRepresentation> Ifc4x3_add1::IfcRepresentation::OfProductRepresentation() const { return cast_vector(file()->get_inverse(data()->id(), IFC4X3_ADD1_types[802], 2)); } const ifcopenshell::entity& Ifc4x3_add1::IfcRepresentation::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[950]); } -Ifc4x3_add1::IfcRepresentation Ifc4x3_add1::IfcRepresentation::initialize(::Ifc4x3_add1::IfcRepresentationContext v1_ContextOfItems, std::optional< std::string > v2_RepresentationIdentifier, std::optional< std::string > v3_RepresentationType, std::vector< ::Ifc4x3_add1::IfcRepresentationItem > v4_Items) { set_attribute_value(0, (v1_ContextOfItems)); if (v2_RepresentationIdentifier) {set_attribute_value(1, (*v2_RepresentationIdentifier)); } if (v3_RepresentationType) {set_attribute_value(2, (*v3_RepresentationType)); }set_attribute_value(3, cast_vector(v4_Items));; return *this; } +Ifc4x3_add1::IfcRepresentation Ifc4x3_add1::IfcRepresentation::initialize(::Ifc4x3_add1::IfcRepresentationContext v1_ContextOfItems, std::optional< std::string > v2_RepresentationIdentifier, std::optional< std::string > v3_RepresentationType, std::vector< ::Ifc4x3_add1::IfcRepresentationItem > v4_Items) { set_attribute_value(0, (v1_ContextOfItems)); if (v2_RepresentationIdentifier) {set_attribute_value(1, (*v2_RepresentationIdentifier)); } if (v3_RepresentationType) {set_attribute_value(2, (*v3_RepresentationType)); }set_attribute_value(3, cast_vector(v4_Items));; return *this; } // Function implementations for IfcRepresentationContext std::optional< std::string > Ifc4x3_add1::IfcRepresentationContext::ContextIdentifier() const { if(get_attribute_value(0).isNull()) { return std::nullopt; } std::string v = get_attribute_value(0); return v; } @@ -14157,9 +14157,9 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcRepresentationItem::Class() { return Ifc4x3_add1::IfcRepresentationItem Ifc4x3_add1::IfcRepresentationItem::initialize() { ; return *this; } // Function implementations for IfcRepresentationMap -::Ifc4x3_add1::IfcAxis2Placement Ifc4x3_add1::IfcRepresentationMap::MappingOrigin() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcAxis2Placement>(); } +::Ifc4x3_add1::IfcAxis2Placement Ifc4x3_add1::IfcRepresentationMap::MappingOrigin() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcAxis2Placement>(); } void Ifc4x3_add1::IfcRepresentationMap::setMappingOrigin(const ::Ifc4x3_add1::IfcAxis2Placement& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } -::Ifc4x3_add1::IfcRepresentation Ifc4x3_add1::IfcRepresentationMap::MappedRepresentation() const { return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3_add1::IfcRepresentation>(); } +::Ifc4x3_add1::IfcRepresentation Ifc4x3_add1::IfcRepresentationMap::MappedRepresentation() const { return ((express::base)(get_attribute_value(1))).as<::Ifc4x3_add1::IfcRepresentation>(); } void Ifc4x3_add1::IfcRepresentationMap::setMappedRepresentation(const ::Ifc4x3_add1::IfcRepresentation& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } std::vector<::Ifc4x3_add1::IfcShapeAspect> Ifc4x3_add1::IfcRepresentationMap::HasShapeAspects() const { return cast_vector(file()->get_inverse(data()->id(), IFC4X3_ADD1_types[1006], 4)); } @@ -14180,24 +14180,24 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcResource::Class() { return *((ifcope Ifc4x3_add1::IfcResource Ifc4x3_add1::IfcResource::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, std::optional< std::string > v6_Identification, std::optional< std::string > v7_LongDescription) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); } if (v6_Identification) {set_attribute_value(5, (*v6_Identification)); } if (v7_LongDescription) {set_attribute_value(6, (*v7_LongDescription)); }; return *this; } // Function implementations for IfcResourceApprovalRelationship -std::vector< ::Ifc4x3_add1::IfcResourceObjectSelect > Ifc4x3_add1::IfcResourceApprovalRelationship::RelatedResourceObjects() const { std::vector es = get_attribute_value(2); return cast_vector<::Ifc4x3_add1::IfcResourceObjectSelect>(es); } -void Ifc4x3_add1::IfcResourceApprovalRelationship::setRelatedResourceObjects(const std::vector< ::Ifc4x3_add1::IfcResourceObjectSelect >& v) { set_attribute_value(2, cast_vector(v));if constexpr (false)unset_attribute_value(2); } -::Ifc4x3_add1::IfcApproval Ifc4x3_add1::IfcResourceApprovalRelationship::RelatingApproval() const { return ((express::Base)(get_attribute_value(3))).as<::Ifc4x3_add1::IfcApproval>(); } +std::vector< ::Ifc4x3_add1::IfcResourceObjectSelect > Ifc4x3_add1::IfcResourceApprovalRelationship::RelatedResourceObjects() const { std::vector es = get_attribute_value(2); return cast_vector<::Ifc4x3_add1::IfcResourceObjectSelect>(es); } +void Ifc4x3_add1::IfcResourceApprovalRelationship::setRelatedResourceObjects(const std::vector< ::Ifc4x3_add1::IfcResourceObjectSelect >& v) { set_attribute_value(2, cast_vector(v));if constexpr (false)unset_attribute_value(2); } +::Ifc4x3_add1::IfcApproval Ifc4x3_add1::IfcResourceApprovalRelationship::RelatingApproval() const { return ((express::base)(get_attribute_value(3))).as<::Ifc4x3_add1::IfcApproval>(); } void Ifc4x3_add1::IfcResourceApprovalRelationship::setRelatingApproval(const ::Ifc4x3_add1::IfcApproval& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } const ifcopenshell::entity& Ifc4x3_add1::IfcResourceApprovalRelationship::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[955]); } -Ifc4x3_add1::IfcResourceApprovalRelationship Ifc4x3_add1::IfcResourceApprovalRelationship::initialize(std::optional< std::string > v1_Name, std::optional< std::string > v2_Description, std::vector< ::Ifc4x3_add1::IfcResourceObjectSelect > v3_RelatedResourceObjects, ::Ifc4x3_add1::IfcApproval v4_RelatingApproval) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); } if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, cast_vector(v3_RelatedResourceObjects));set_attribute_value(3, (v4_RelatingApproval));; return *this; } +Ifc4x3_add1::IfcResourceApprovalRelationship Ifc4x3_add1::IfcResourceApprovalRelationship::initialize(std::optional< std::string > v1_Name, std::optional< std::string > v2_Description, std::vector< ::Ifc4x3_add1::IfcResourceObjectSelect > v3_RelatedResourceObjects, ::Ifc4x3_add1::IfcApproval v4_RelatingApproval) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); } if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, cast_vector(v3_RelatedResourceObjects));set_attribute_value(3, (v4_RelatingApproval));; return *this; } // Function implementations for IfcResourceConstraintRelationship -::Ifc4x3_add1::IfcConstraint Ifc4x3_add1::IfcResourceConstraintRelationship::RelatingConstraint() const { return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3_add1::IfcConstraint>(); } +::Ifc4x3_add1::IfcConstraint Ifc4x3_add1::IfcResourceConstraintRelationship::RelatingConstraint() const { return ((express::base)(get_attribute_value(2))).as<::Ifc4x3_add1::IfcConstraint>(); } void Ifc4x3_add1::IfcResourceConstraintRelationship::setRelatingConstraint(const ::Ifc4x3_add1::IfcConstraint& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } -std::vector< ::Ifc4x3_add1::IfcResourceObjectSelect > Ifc4x3_add1::IfcResourceConstraintRelationship::RelatedResourceObjects() const { std::vector es = get_attribute_value(3); return cast_vector<::Ifc4x3_add1::IfcResourceObjectSelect>(es); } -void Ifc4x3_add1::IfcResourceConstraintRelationship::setRelatedResourceObjects(const std::vector< ::Ifc4x3_add1::IfcResourceObjectSelect >& v) { set_attribute_value(3, cast_vector(v));if constexpr (false)unset_attribute_value(3); } +std::vector< ::Ifc4x3_add1::IfcResourceObjectSelect > Ifc4x3_add1::IfcResourceConstraintRelationship::RelatedResourceObjects() const { std::vector es = get_attribute_value(3); return cast_vector<::Ifc4x3_add1::IfcResourceObjectSelect>(es); } +void Ifc4x3_add1::IfcResourceConstraintRelationship::setRelatedResourceObjects(const std::vector< ::Ifc4x3_add1::IfcResourceObjectSelect >& v) { set_attribute_value(3, cast_vector(v));if constexpr (false)unset_attribute_value(3); } const ifcopenshell::entity& Ifc4x3_add1::IfcResourceConstraintRelationship::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[956]); } -Ifc4x3_add1::IfcResourceConstraintRelationship Ifc4x3_add1::IfcResourceConstraintRelationship::initialize(std::optional< std::string > v1_Name, std::optional< std::string > v2_Description, ::Ifc4x3_add1::IfcConstraint v3_RelatingConstraint, std::vector< ::Ifc4x3_add1::IfcResourceObjectSelect > v4_RelatedResourceObjects) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); } if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, (v3_RelatingConstraint));set_attribute_value(3, cast_vector(v4_RelatedResourceObjects));; return *this; } +Ifc4x3_add1::IfcResourceConstraintRelationship Ifc4x3_add1::IfcResourceConstraintRelationship::initialize(std::optional< std::string > v1_Name, std::optional< std::string > v2_Description, ::Ifc4x3_add1::IfcConstraint v3_RelatingConstraint, std::vector< ::Ifc4x3_add1::IfcResourceObjectSelect > v4_RelatedResourceObjects) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); } if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, (v3_RelatingConstraint));set_attribute_value(3, cast_vector(v4_RelatedResourceObjects));; return *this; } // Function implementations for IfcResourceLevelRelationship std::optional< std::string > Ifc4x3_add1::IfcResourceLevelRelationship::Name() const { if(get_attribute_value(0).isNull()) { return std::nullopt; } std::string v = get_attribute_value(0); return v; } @@ -14246,7 +14246,7 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcResourceTime::Class() { return *((if Ifc4x3_add1::IfcResourceTime Ifc4x3_add1::IfcResourceTime::initialize(std::optional< std::string > v1_Name, std::optional< ::Ifc4x3_add1::IfcDataOriginEnum::Value > v2_DataOrigin, std::optional< std::string > v3_UserDefinedDataOrigin, std::optional< std::string > v4_ScheduleWork, std::optional< double > v5_ScheduleUsage, std::optional< std::string > v6_ScheduleStart, std::optional< std::string > v7_ScheduleFinish, std::optional< std::string > v8_ScheduleContour, std::optional< std::string > v9_LevelingDelay, std::optional< bool > v10_IsOverAllocated, std::optional< std::string > v11_StatusTime, std::optional< std::string > v12_ActualWork, std::optional< double > v13_ActualUsage, std::optional< std::string > v14_ActualStart, std::optional< std::string > v15_ActualFinish, std::optional< std::string > v16_RemainingWork, std::optional< double > v17_RemainingUsage, std::optional< double > v18_Completion) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); } if (v2_DataOrigin) {set_attribute_value(1, (enumeration_reference(&::Ifc4x3_add1::IfcDataOriginEnum::Class(),(size_t)*v2_DataOrigin))); } if (v3_UserDefinedDataOrigin) {set_attribute_value(2, (*v3_UserDefinedDataOrigin)); } if (v4_ScheduleWork) {set_attribute_value(3, (*v4_ScheduleWork)); } if (v5_ScheduleUsage) {set_attribute_value(4, (*v5_ScheduleUsage)); } if (v6_ScheduleStart) {set_attribute_value(5, (*v6_ScheduleStart)); } if (v7_ScheduleFinish) {set_attribute_value(6, (*v7_ScheduleFinish)); } if (v8_ScheduleContour) {set_attribute_value(7, (*v8_ScheduleContour)); } if (v9_LevelingDelay) {set_attribute_value(8, (*v9_LevelingDelay)); } if (v10_IsOverAllocated) {set_attribute_value(9, (*v10_IsOverAllocated)); } if (v11_StatusTime) {set_attribute_value(10, (*v11_StatusTime)); } if (v12_ActualWork) {set_attribute_value(11, (*v12_ActualWork)); } if (v13_ActualUsage) {set_attribute_value(12, (*v13_ActualUsage)); } if (v14_ActualStart) {set_attribute_value(13, (*v14_ActualStart)); } if (v15_ActualFinish) {set_attribute_value(14, (*v15_ActualFinish)); } if (v16_RemainingWork) {set_attribute_value(15, (*v16_RemainingWork)); } if (v17_RemainingUsage) {set_attribute_value(16, (*v17_RemainingUsage)); } if (v18_Completion) {set_attribute_value(17, (*v18_Completion)); }; return *this; } // Function implementations for IfcRevolvedAreaSolid -::Ifc4x3_add1::IfcAxis1Placement Ifc4x3_add1::IfcRevolvedAreaSolid::Axis() const { return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3_add1::IfcAxis1Placement>(); } +::Ifc4x3_add1::IfcAxis1Placement Ifc4x3_add1::IfcRevolvedAreaSolid::Axis() const { return ((express::base)(get_attribute_value(2))).as<::Ifc4x3_add1::IfcAxis1Placement>(); } void Ifc4x3_add1::IfcRevolvedAreaSolid::setAxis(const ::Ifc4x3_add1::IfcAxis1Placement& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } double Ifc4x3_add1::IfcRevolvedAreaSolid::Angle() const { double v = get_attribute_value(3); return v; } void Ifc4x3_add1::IfcRevolvedAreaSolid::setAngle(const double& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } @@ -14256,7 +14256,7 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcRevolvedAreaSolid::Class() { return Ifc4x3_add1::IfcRevolvedAreaSolid Ifc4x3_add1::IfcRevolvedAreaSolid::initialize(::Ifc4x3_add1::IfcProfileDef v1_SweptArea, ::Ifc4x3_add1::IfcAxis2Placement3D v2_Position, ::Ifc4x3_add1::IfcAxis1Placement v3_Axis, double v4_Angle) { set_attribute_value(0, (v1_SweptArea));set_attribute_value(1, (v2_Position));set_attribute_value(2, (v3_Axis));set_attribute_value(3, (v4_Angle));; return *this; } // Function implementations for IfcRevolvedAreaSolidTapered -::Ifc4x3_add1::IfcProfileDef Ifc4x3_add1::IfcRevolvedAreaSolidTapered::EndSweptArea() const { return ((express::Base)(get_attribute_value(4))).as<::Ifc4x3_add1::IfcProfileDef>(); } +::Ifc4x3_add1::IfcProfileDef Ifc4x3_add1::IfcRevolvedAreaSolidTapered::EndSweptArea() const { return ((express::base)(get_attribute_value(4))).as<::Ifc4x3_add1::IfcProfileDef>(); } void Ifc4x3_add1::IfcRevolvedAreaSolidTapered::setEndSweptArea(const ::Ifc4x3_add1::IfcProfileDef& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } @@ -14284,9 +14284,9 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcRightCircularCylinder::Class() { ret Ifc4x3_add1::IfcRightCircularCylinder Ifc4x3_add1::IfcRightCircularCylinder::initialize(::Ifc4x3_add1::IfcAxis2Placement3D v1_Position, double v2_Height, double v3_Radius) { set_attribute_value(0, (v1_Position));set_attribute_value(1, (v2_Height));set_attribute_value(2, (v3_Radius));; return *this; } // Function implementations for IfcRigidOperation -::Ifc4x3_add1::IfcMeasureValue Ifc4x3_add1::IfcRigidOperation::FirstCoordinate() const { return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3_add1::IfcMeasureValue>(); } +::Ifc4x3_add1::IfcMeasureValue Ifc4x3_add1::IfcRigidOperation::FirstCoordinate() const { return ((express::base)(get_attribute_value(2))).as<::Ifc4x3_add1::IfcMeasureValue>(); } void Ifc4x3_add1::IfcRigidOperation::setFirstCoordinate(const ::Ifc4x3_add1::IfcMeasureValue& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } -::Ifc4x3_add1::IfcMeasureValue Ifc4x3_add1::IfcRigidOperation::SecondCoordinate() const { return ((express::Base)(get_attribute_value(3))).as<::Ifc4x3_add1::IfcMeasureValue>(); } +::Ifc4x3_add1::IfcMeasureValue Ifc4x3_add1::IfcRigidOperation::SecondCoordinate() const { return ((express::base)(get_attribute_value(3))).as<::Ifc4x3_add1::IfcMeasureValue>(); } void Ifc4x3_add1::IfcRigidOperation::setSecondCoordinate(const ::Ifc4x3_add1::IfcMeasureValue& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } double Ifc4x3_add1::IfcRigidOperation::Height() const { double v = get_attribute_value(4); return v; } void Ifc4x3_add1::IfcRigidOperation::setHeight(const double& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } @@ -14325,12 +14325,12 @@ void Ifc4x3_add1::IfcRoofType::setPredefinedType(const ::Ifc4x3_add1::IfcRoofTyp const ifcopenshell::entity& Ifc4x3_add1::IfcRoofType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[972]); } -Ifc4x3_add1::IfcRoofType Ifc4x3_add1::IfcRoofType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcRoofTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcRoofTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_add1::IfcRoofType Ifc4x3_add1::IfcRoofType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcRoofTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcRoofTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcRoot std::string Ifc4x3_add1::IfcRoot::GlobalId() const { std::string v = get_attribute_value(0); return v; } void Ifc4x3_add1::IfcRoot::setGlobalId(const std::string& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } -::Ifc4x3_add1::IfcOwnerHistory Ifc4x3_add1::IfcRoot::OwnerHistory() const { if(get_attribute_value(1).isNull()) { return ::Ifc4x3_add1::IfcOwnerHistory{}; } return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3_add1::IfcOwnerHistory>(); } +::Ifc4x3_add1::IfcOwnerHistory Ifc4x3_add1::IfcRoot::OwnerHistory() const { if(get_attribute_value(1).isNull()) { return ::Ifc4x3_add1::IfcOwnerHistory{}; } return ((express::base)(get_attribute_value(1))).as<::Ifc4x3_add1::IfcOwnerHistory>(); } void Ifc4x3_add1::IfcRoot::setOwnerHistory(const ::Ifc4x3_add1::IfcOwnerHistory& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } std::optional< std::string > Ifc4x3_add1::IfcRoot::Name() const { if(get_attribute_value(2).isNull()) { return std::nullopt; } std::string v = get_attribute_value(2); return v; } void Ifc4x3_add1::IfcRoot::setName(const std::optional< std::string >& v) { if (v) {set_attribute_value(2, *v);} else {unset_attribute_value(2);} } @@ -14373,7 +14373,7 @@ void Ifc4x3_add1::IfcSanitaryTerminalType::setPredefinedType(const ::Ifc4x3_add1 const ifcopenshell::entity& Ifc4x3_add1::IfcSanitaryTerminalType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[981]); } -Ifc4x3_add1::IfcSanitaryTerminalType Ifc4x3_add1::IfcSanitaryTerminalType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcSanitaryTerminalTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcSanitaryTerminalTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_add1::IfcSanitaryTerminalType Ifc4x3_add1::IfcSanitaryTerminalType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcSanitaryTerminalTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcSanitaryTerminalTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcSchedulingTime std::optional< std::string > Ifc4x3_add1::IfcSchedulingTime::Name() const { if(get_attribute_value(0).isNull()) { return std::nullopt; } std::string v = get_attribute_value(0); return v; } @@ -14391,7 +14391,7 @@ Ifc4x3_add1::IfcSchedulingTime Ifc4x3_add1::IfcSchedulingTime::initialize(std::o const ifcopenshell::entity& Ifc4x3_add1::IfcSeamCurve::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[984]); } -Ifc4x3_add1::IfcSeamCurve Ifc4x3_add1::IfcSeamCurve::initialize(::Ifc4x3_add1::IfcCurve v1_Curve3D, std::vector< ::Ifc4x3_add1::IfcPcurve > v2_AssociatedGeometry, ::Ifc4x3_add1::IfcPreferredSurfaceCurveRepresentation::Value v3_MasterRepresentation) { set_attribute_value(0, (v1_Curve3D));set_attribute_value(1, cast_vector(v2_AssociatedGeometry));set_attribute_value(2, (enumeration_reference(&::Ifc4x3_add1::IfcPreferredSurfaceCurveRepresentation::Class(),(size_t)v3_MasterRepresentation)));; return *this; } +Ifc4x3_add1::IfcSeamCurve Ifc4x3_add1::IfcSeamCurve::initialize(::Ifc4x3_add1::IfcCurve v1_Curve3D, std::vector< ::Ifc4x3_add1::IfcPcurve > v2_AssociatedGeometry, ::Ifc4x3_add1::IfcPreferredSurfaceCurveRepresentation::Value v3_MasterRepresentation) { set_attribute_value(0, (v1_Curve3D));set_attribute_value(1, cast_vector(v2_AssociatedGeometry));set_attribute_value(2, (enumeration_reference(&::Ifc4x3_add1::IfcPreferredSurfaceCurveRepresentation::Class(),(size_t)v3_MasterRepresentation)));; return *this; } // Function implementations for IfcSecondOrderPolynomialSpiral double Ifc4x3_add1::IfcSecondOrderPolynomialSpiral::QuadraticTerm() const { double v = get_attribute_value(1); return v; } @@ -14408,9 +14408,9 @@ Ifc4x3_add1::IfcSecondOrderPolynomialSpiral Ifc4x3_add1::IfcSecondOrderPolynomia // Function implementations for IfcSectionProperties ::Ifc4x3_add1::IfcSectionTypeEnum::Value Ifc4x3_add1::IfcSectionProperties::SectionType() const { return ::Ifc4x3_add1::IfcSectionTypeEnum::FromString(get_attribute_value(0)); } void Ifc4x3_add1::IfcSectionProperties::setSectionType(const ::Ifc4x3_add1::IfcSectionTypeEnum::Value& v) { set_attribute_value(0, enumeration_reference(&::Ifc4x3_add1::IfcSectionTypeEnum::Class(), (size_t) v));if constexpr (false)unset_attribute_value(0); } -::Ifc4x3_add1::IfcProfileDef Ifc4x3_add1::IfcSectionProperties::StartProfile() const { return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3_add1::IfcProfileDef>(); } +::Ifc4x3_add1::IfcProfileDef Ifc4x3_add1::IfcSectionProperties::StartProfile() const { return ((express::base)(get_attribute_value(1))).as<::Ifc4x3_add1::IfcProfileDef>(); } void Ifc4x3_add1::IfcSectionProperties::setStartProfile(const ::Ifc4x3_add1::IfcProfileDef& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } -::Ifc4x3_add1::IfcProfileDef Ifc4x3_add1::IfcSectionProperties::EndProfile() const { if(get_attribute_value(2).isNull()) { return ::Ifc4x3_add1::IfcProfileDef{}; } return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3_add1::IfcProfileDef>(); } +::Ifc4x3_add1::IfcProfileDef Ifc4x3_add1::IfcSectionProperties::EndProfile() const { if(get_attribute_value(2).isNull()) { return ::Ifc4x3_add1::IfcProfileDef{}; } return ((express::base)(get_attribute_value(2))).as<::Ifc4x3_add1::IfcProfileDef>(); } void Ifc4x3_add1::IfcSectionProperties::setEndProfile(const ::Ifc4x3_add1::IfcProfileDef& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } @@ -14426,56 +14426,56 @@ std::optional< double > Ifc4x3_add1::IfcSectionReinforcementProperties::Transver void Ifc4x3_add1::IfcSectionReinforcementProperties::setTransversePosition(const std::optional< double >& v) { if (v) {set_attribute_value(2, *v);} else {unset_attribute_value(2);} } ::Ifc4x3_add1::IfcReinforcingBarRoleEnum::Value Ifc4x3_add1::IfcSectionReinforcementProperties::ReinforcementRole() const { return ::Ifc4x3_add1::IfcReinforcingBarRoleEnum::FromString(get_attribute_value(3)); } void Ifc4x3_add1::IfcSectionReinforcementProperties::setReinforcementRole(const ::Ifc4x3_add1::IfcReinforcingBarRoleEnum::Value& v) { set_attribute_value(3, enumeration_reference(&::Ifc4x3_add1::IfcReinforcingBarRoleEnum::Class(), (size_t) v));if constexpr (false)unset_attribute_value(3); } -::Ifc4x3_add1::IfcSectionProperties Ifc4x3_add1::IfcSectionReinforcementProperties::SectionDefinition() const { return ((express::Base)(get_attribute_value(4))).as<::Ifc4x3_add1::IfcSectionProperties>(); } +::Ifc4x3_add1::IfcSectionProperties Ifc4x3_add1::IfcSectionReinforcementProperties::SectionDefinition() const { return ((express::base)(get_attribute_value(4))).as<::Ifc4x3_add1::IfcSectionProperties>(); } void Ifc4x3_add1::IfcSectionReinforcementProperties::setSectionDefinition(const ::Ifc4x3_add1::IfcSectionProperties& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } -std::vector< ::Ifc4x3_add1::IfcReinforcementBarProperties > Ifc4x3_add1::IfcSectionReinforcementProperties::CrossSectionReinforcementDefinitions() const { std::vector es = get_attribute_value(5); return cast_vector<::Ifc4x3_add1::IfcReinforcementBarProperties>(es); } -void Ifc4x3_add1::IfcSectionReinforcementProperties::setCrossSectionReinforcementDefinitions(const std::vector< ::Ifc4x3_add1::IfcReinforcementBarProperties >& v) { set_attribute_value(5, cast_vector(v));if constexpr (false)unset_attribute_value(5); } +std::vector< ::Ifc4x3_add1::IfcReinforcementBarProperties > Ifc4x3_add1::IfcSectionReinforcementProperties::CrossSectionReinforcementDefinitions() const { std::vector es = get_attribute_value(5); return cast_vector<::Ifc4x3_add1::IfcReinforcementBarProperties>(es); } +void Ifc4x3_add1::IfcSectionReinforcementProperties::setCrossSectionReinforcementDefinitions(const std::vector< ::Ifc4x3_add1::IfcReinforcementBarProperties >& v) { set_attribute_value(5, cast_vector(v));if constexpr (false)unset_attribute_value(5); } const ifcopenshell::entity& Ifc4x3_add1::IfcSectionReinforcementProperties::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[993]); } -Ifc4x3_add1::IfcSectionReinforcementProperties Ifc4x3_add1::IfcSectionReinforcementProperties::initialize(double v1_LongitudinalStartPosition, double v2_LongitudinalEndPosition, std::optional< double > v3_TransversePosition, ::Ifc4x3_add1::IfcReinforcingBarRoleEnum::Value v4_ReinforcementRole, ::Ifc4x3_add1::IfcSectionProperties v5_SectionDefinition, std::vector< ::Ifc4x3_add1::IfcReinforcementBarProperties > v6_CrossSectionReinforcementDefinitions) { set_attribute_value(0, (v1_LongitudinalStartPosition));set_attribute_value(1, (v2_LongitudinalEndPosition)); if (v3_TransversePosition) {set_attribute_value(2, (*v3_TransversePosition)); }set_attribute_value(3, (enumeration_reference(&::Ifc4x3_add1::IfcReinforcingBarRoleEnum::Class(),(size_t)v4_ReinforcementRole)));set_attribute_value(4, (v5_SectionDefinition));set_attribute_value(5, cast_vector(v6_CrossSectionReinforcementDefinitions));; return *this; } +Ifc4x3_add1::IfcSectionReinforcementProperties Ifc4x3_add1::IfcSectionReinforcementProperties::initialize(double v1_LongitudinalStartPosition, double v2_LongitudinalEndPosition, std::optional< double > v3_TransversePosition, ::Ifc4x3_add1::IfcReinforcingBarRoleEnum::Value v4_ReinforcementRole, ::Ifc4x3_add1::IfcSectionProperties v5_SectionDefinition, std::vector< ::Ifc4x3_add1::IfcReinforcementBarProperties > v6_CrossSectionReinforcementDefinitions) { set_attribute_value(0, (v1_LongitudinalStartPosition));set_attribute_value(1, (v2_LongitudinalEndPosition)); if (v3_TransversePosition) {set_attribute_value(2, (*v3_TransversePosition)); }set_attribute_value(3, (enumeration_reference(&::Ifc4x3_add1::IfcReinforcingBarRoleEnum::Class(),(size_t)v4_ReinforcementRole)));set_attribute_value(4, (v5_SectionDefinition));set_attribute_value(5, cast_vector(v6_CrossSectionReinforcementDefinitions));; return *this; } // Function implementations for IfcSectionedSolid -::Ifc4x3_add1::IfcCurve Ifc4x3_add1::IfcSectionedSolid::Directrix() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcCurve>(); } +::Ifc4x3_add1::IfcCurve Ifc4x3_add1::IfcSectionedSolid::Directrix() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcCurve>(); } void Ifc4x3_add1::IfcSectionedSolid::setDirectrix(const ::Ifc4x3_add1::IfcCurve& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } -std::vector< ::Ifc4x3_add1::IfcProfileDef > Ifc4x3_add1::IfcSectionedSolid::CrossSections() const { std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3_add1::IfcProfileDef>(es); } -void Ifc4x3_add1::IfcSectionedSolid::setCrossSections(const std::vector< ::Ifc4x3_add1::IfcProfileDef >& v) { set_attribute_value(1, cast_vector(v));if constexpr (false)unset_attribute_value(1); } +std::vector< ::Ifc4x3_add1::IfcProfileDef > Ifc4x3_add1::IfcSectionedSolid::CrossSections() const { std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3_add1::IfcProfileDef>(es); } +void Ifc4x3_add1::IfcSectionedSolid::setCrossSections(const std::vector< ::Ifc4x3_add1::IfcProfileDef >& v) { set_attribute_value(1, cast_vector(v));if constexpr (false)unset_attribute_value(1); } const ifcopenshell::entity& Ifc4x3_add1::IfcSectionedSolid::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[987]); } -Ifc4x3_add1::IfcSectionedSolid Ifc4x3_add1::IfcSectionedSolid::initialize(::Ifc4x3_add1::IfcCurve v1_Directrix, std::vector< ::Ifc4x3_add1::IfcProfileDef > v2_CrossSections) { set_attribute_value(0, (v1_Directrix));set_attribute_value(1, cast_vector(v2_CrossSections));; return *this; } +Ifc4x3_add1::IfcSectionedSolid Ifc4x3_add1::IfcSectionedSolid::initialize(::Ifc4x3_add1::IfcCurve v1_Directrix, std::vector< ::Ifc4x3_add1::IfcProfileDef > v2_CrossSections) { set_attribute_value(0, (v1_Directrix));set_attribute_value(1, cast_vector(v2_CrossSections));; return *this; } // Function implementations for IfcSectionedSolidHorizontal -std::vector< ::Ifc4x3_add1::IfcAxis2PlacementLinear > Ifc4x3_add1::IfcSectionedSolidHorizontal::CrossSectionPositions() const { std::vector es = get_attribute_value(2); return cast_vector<::Ifc4x3_add1::IfcAxis2PlacementLinear>(es); } -void Ifc4x3_add1::IfcSectionedSolidHorizontal::setCrossSectionPositions(const std::vector< ::Ifc4x3_add1::IfcAxis2PlacementLinear >& v) { set_attribute_value(2, cast_vector(v));if constexpr (false)unset_attribute_value(2); } +std::vector< ::Ifc4x3_add1::IfcAxis2PlacementLinear > Ifc4x3_add1::IfcSectionedSolidHorizontal::CrossSectionPositions() const { std::vector es = get_attribute_value(2); return cast_vector<::Ifc4x3_add1::IfcAxis2PlacementLinear>(es); } +void Ifc4x3_add1::IfcSectionedSolidHorizontal::setCrossSectionPositions(const std::vector< ::Ifc4x3_add1::IfcAxis2PlacementLinear >& v) { set_attribute_value(2, cast_vector(v));if constexpr (false)unset_attribute_value(2); } const ifcopenshell::entity& Ifc4x3_add1::IfcSectionedSolidHorizontal::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[988]); } -Ifc4x3_add1::IfcSectionedSolidHorizontal Ifc4x3_add1::IfcSectionedSolidHorizontal::initialize(::Ifc4x3_add1::IfcCurve v1_Directrix, std::vector< ::Ifc4x3_add1::IfcProfileDef > v2_CrossSections, std::vector< ::Ifc4x3_add1::IfcAxis2PlacementLinear > v3_CrossSectionPositions) { set_attribute_value(0, (v1_Directrix));set_attribute_value(1, cast_vector(v2_CrossSections));set_attribute_value(2, cast_vector(v3_CrossSectionPositions));; return *this; } +Ifc4x3_add1::IfcSectionedSolidHorizontal Ifc4x3_add1::IfcSectionedSolidHorizontal::initialize(::Ifc4x3_add1::IfcCurve v1_Directrix, std::vector< ::Ifc4x3_add1::IfcProfileDef > v2_CrossSections, std::vector< ::Ifc4x3_add1::IfcAxis2PlacementLinear > v3_CrossSectionPositions) { set_attribute_value(0, (v1_Directrix));set_attribute_value(1, cast_vector(v2_CrossSections));set_attribute_value(2, cast_vector(v3_CrossSectionPositions));; return *this; } // Function implementations for IfcSectionedSpine -::Ifc4x3_add1::IfcCompositeCurve Ifc4x3_add1::IfcSectionedSpine::SpineCurve() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcCompositeCurve>(); } +::Ifc4x3_add1::IfcCompositeCurve Ifc4x3_add1::IfcSectionedSpine::SpineCurve() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcCompositeCurve>(); } void Ifc4x3_add1::IfcSectionedSpine::setSpineCurve(const ::Ifc4x3_add1::IfcCompositeCurve& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } -std::vector< ::Ifc4x3_add1::IfcProfileDef > Ifc4x3_add1::IfcSectionedSpine::CrossSections() const { std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3_add1::IfcProfileDef>(es); } -void Ifc4x3_add1::IfcSectionedSpine::setCrossSections(const std::vector< ::Ifc4x3_add1::IfcProfileDef >& v) { set_attribute_value(1, cast_vector(v));if constexpr (false)unset_attribute_value(1); } -std::vector< ::Ifc4x3_add1::IfcAxis2Placement3D > Ifc4x3_add1::IfcSectionedSpine::CrossSectionPositions() const { std::vector es = get_attribute_value(2); return cast_vector<::Ifc4x3_add1::IfcAxis2Placement3D>(es); } -void Ifc4x3_add1::IfcSectionedSpine::setCrossSectionPositions(const std::vector< ::Ifc4x3_add1::IfcAxis2Placement3D >& v) { set_attribute_value(2, cast_vector(v));if constexpr (false)unset_attribute_value(2); } +std::vector< ::Ifc4x3_add1::IfcProfileDef > Ifc4x3_add1::IfcSectionedSpine::CrossSections() const { std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3_add1::IfcProfileDef>(es); } +void Ifc4x3_add1::IfcSectionedSpine::setCrossSections(const std::vector< ::Ifc4x3_add1::IfcProfileDef >& v) { set_attribute_value(1, cast_vector(v));if constexpr (false)unset_attribute_value(1); } +std::vector< ::Ifc4x3_add1::IfcAxis2Placement3D > Ifc4x3_add1::IfcSectionedSpine::CrossSectionPositions() const { std::vector es = get_attribute_value(2); return cast_vector<::Ifc4x3_add1::IfcAxis2Placement3D>(es); } +void Ifc4x3_add1::IfcSectionedSpine::setCrossSectionPositions(const std::vector< ::Ifc4x3_add1::IfcAxis2Placement3D >& v) { set_attribute_value(2, cast_vector(v));if constexpr (false)unset_attribute_value(2); } const ifcopenshell::entity& Ifc4x3_add1::IfcSectionedSpine::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[989]); } -Ifc4x3_add1::IfcSectionedSpine Ifc4x3_add1::IfcSectionedSpine::initialize(::Ifc4x3_add1::IfcCompositeCurve v1_SpineCurve, std::vector< ::Ifc4x3_add1::IfcProfileDef > v2_CrossSections, std::vector< ::Ifc4x3_add1::IfcAxis2Placement3D > v3_CrossSectionPositions) { set_attribute_value(0, (v1_SpineCurve));set_attribute_value(1, cast_vector(v2_CrossSections));set_attribute_value(2, cast_vector(v3_CrossSectionPositions));; return *this; } +Ifc4x3_add1::IfcSectionedSpine Ifc4x3_add1::IfcSectionedSpine::initialize(::Ifc4x3_add1::IfcCompositeCurve v1_SpineCurve, std::vector< ::Ifc4x3_add1::IfcProfileDef > v2_CrossSections, std::vector< ::Ifc4x3_add1::IfcAxis2Placement3D > v3_CrossSectionPositions) { set_attribute_value(0, (v1_SpineCurve));set_attribute_value(1, cast_vector(v2_CrossSections));set_attribute_value(2, cast_vector(v3_CrossSectionPositions));; return *this; } // Function implementations for IfcSectionedSurface -::Ifc4x3_add1::IfcCurve Ifc4x3_add1::IfcSectionedSurface::Directrix() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcCurve>(); } +::Ifc4x3_add1::IfcCurve Ifc4x3_add1::IfcSectionedSurface::Directrix() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcCurve>(); } void Ifc4x3_add1::IfcSectionedSurface::setDirectrix(const ::Ifc4x3_add1::IfcCurve& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } -std::vector< ::Ifc4x3_add1::IfcAxis2PlacementLinear > Ifc4x3_add1::IfcSectionedSurface::CrossSectionPositions() const { std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3_add1::IfcAxis2PlacementLinear>(es); } -void Ifc4x3_add1::IfcSectionedSurface::setCrossSectionPositions(const std::vector< ::Ifc4x3_add1::IfcAxis2PlacementLinear >& v) { set_attribute_value(1, cast_vector(v));if constexpr (false)unset_attribute_value(1); } -std::vector< ::Ifc4x3_add1::IfcProfileDef > Ifc4x3_add1::IfcSectionedSurface::CrossSections() const { std::vector es = get_attribute_value(2); return cast_vector<::Ifc4x3_add1::IfcProfileDef>(es); } -void Ifc4x3_add1::IfcSectionedSurface::setCrossSections(const std::vector< ::Ifc4x3_add1::IfcProfileDef >& v) { set_attribute_value(2, cast_vector(v));if constexpr (false)unset_attribute_value(2); } +std::vector< ::Ifc4x3_add1::IfcAxis2PlacementLinear > Ifc4x3_add1::IfcSectionedSurface::CrossSectionPositions() const { std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3_add1::IfcAxis2PlacementLinear>(es); } +void Ifc4x3_add1::IfcSectionedSurface::setCrossSectionPositions(const std::vector< ::Ifc4x3_add1::IfcAxis2PlacementLinear >& v) { set_attribute_value(1, cast_vector(v));if constexpr (false)unset_attribute_value(1); } +std::vector< ::Ifc4x3_add1::IfcProfileDef > Ifc4x3_add1::IfcSectionedSurface::CrossSections() const { std::vector es = get_attribute_value(2); return cast_vector<::Ifc4x3_add1::IfcProfileDef>(es); } +void Ifc4x3_add1::IfcSectionedSurface::setCrossSections(const std::vector< ::Ifc4x3_add1::IfcProfileDef >& v) { set_attribute_value(2, cast_vector(v));if constexpr (false)unset_attribute_value(2); } const ifcopenshell::entity& Ifc4x3_add1::IfcSectionedSurface::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[990]); } -Ifc4x3_add1::IfcSectionedSurface Ifc4x3_add1::IfcSectionedSurface::initialize(::Ifc4x3_add1::IfcCurve v1_Directrix, std::vector< ::Ifc4x3_add1::IfcAxis2PlacementLinear > v2_CrossSectionPositions, std::vector< ::Ifc4x3_add1::IfcProfileDef > v3_CrossSections) { set_attribute_value(0, (v1_Directrix));set_attribute_value(1, cast_vector(v2_CrossSectionPositions));set_attribute_value(2, cast_vector(v3_CrossSections));; return *this; } +Ifc4x3_add1::IfcSectionedSurface Ifc4x3_add1::IfcSectionedSurface::initialize(::Ifc4x3_add1::IfcCurve v1_Directrix, std::vector< ::Ifc4x3_add1::IfcAxis2PlacementLinear > v2_CrossSectionPositions, std::vector< ::Ifc4x3_add1::IfcProfileDef > v3_CrossSections) { set_attribute_value(0, (v1_Directrix));set_attribute_value(1, cast_vector(v2_CrossSectionPositions));set_attribute_value(2, cast_vector(v3_CrossSections));; return *this; } // Function implementations for IfcSegment ::Ifc4x3_add1::IfcTransitionCode::Value Ifc4x3_add1::IfcSegment::Transition() const { return ::Ifc4x3_add1::IfcTransitionCode::FromString(get_attribute_value(0)); } @@ -14487,14 +14487,14 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcSegment::Class() { return *((ifcopen Ifc4x3_add1::IfcSegment Ifc4x3_add1::IfcSegment::initialize(::Ifc4x3_add1::IfcTransitionCode::Value v1_Transition) { set_attribute_value(0, (enumeration_reference(&::Ifc4x3_add1::IfcTransitionCode::Class(),(size_t)v1_Transition)));; return *this; } // Function implementations for IfcSegmentedReferenceCurve -::Ifc4x3_add1::IfcBoundedCurve Ifc4x3_add1::IfcSegmentedReferenceCurve::BaseCurve() const { return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3_add1::IfcBoundedCurve>(); } +::Ifc4x3_add1::IfcBoundedCurve Ifc4x3_add1::IfcSegmentedReferenceCurve::BaseCurve() const { return ((express::base)(get_attribute_value(2))).as<::Ifc4x3_add1::IfcBoundedCurve>(); } void Ifc4x3_add1::IfcSegmentedReferenceCurve::setBaseCurve(const ::Ifc4x3_add1::IfcBoundedCurve& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } -::Ifc4x3_add1::IfcPlacement Ifc4x3_add1::IfcSegmentedReferenceCurve::EndPoint() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3_add1::IfcPlacement{}; } return ((express::Base)(get_attribute_value(3))).as<::Ifc4x3_add1::IfcPlacement>(); } +::Ifc4x3_add1::IfcPlacement Ifc4x3_add1::IfcSegmentedReferenceCurve::EndPoint() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3_add1::IfcPlacement{}; } return ((express::base)(get_attribute_value(3))).as<::Ifc4x3_add1::IfcPlacement>(); } void Ifc4x3_add1::IfcSegmentedReferenceCurve::setEndPoint(const ::Ifc4x3_add1::IfcPlacement& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } const ifcopenshell::entity& Ifc4x3_add1::IfcSegmentedReferenceCurve::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[996]); } -Ifc4x3_add1::IfcSegmentedReferenceCurve Ifc4x3_add1::IfcSegmentedReferenceCurve::initialize(std::vector< ::Ifc4x3_add1::IfcSegment > v1_Segments, boost::logic::tribool v2_SelfIntersect, ::Ifc4x3_add1::IfcBoundedCurve v3_BaseCurve, ::Ifc4x3_add1::IfcPlacement v4_EndPoint) { set_attribute_value(0, cast_vector(v1_Segments));set_attribute_value(1, (v2_SelfIntersect));set_attribute_value(2, (v3_BaseCurve));set_attribute_value(3, (v4_EndPoint));; return *this; } +Ifc4x3_add1::IfcSegmentedReferenceCurve Ifc4x3_add1::IfcSegmentedReferenceCurve::initialize(std::vector< ::Ifc4x3_add1::IfcSegment > v1_Segments, boost::logic::tribool v2_SelfIntersect, ::Ifc4x3_add1::IfcBoundedCurve v3_BaseCurve, ::Ifc4x3_add1::IfcPlacement v4_EndPoint) { set_attribute_value(0, cast_vector(v1_Segments));set_attribute_value(1, (v2_SelfIntersect));set_attribute_value(2, (v3_BaseCurve));set_attribute_value(3, (v4_EndPoint));; return *this; } // Function implementations for IfcSensor std::optional< ::Ifc4x3_add1::IfcSensorTypeEnum::Value > Ifc4x3_add1::IfcSensor::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_add1::IfcSensorTypeEnum::FromString(get_attribute_value(8)); } @@ -14510,7 +14510,7 @@ void Ifc4x3_add1::IfcSensorType::setPredefinedType(const ::Ifc4x3_add1::IfcSenso const ifcopenshell::entity& Ifc4x3_add1::IfcSensorType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[999]); } -Ifc4x3_add1::IfcSensorType Ifc4x3_add1::IfcSensorType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcSensorTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcSensorTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_add1::IfcSensorType Ifc4x3_add1::IfcSensorType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcSensorTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcSensorTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcSeventhOrderPolynomialSpiral double Ifc4x3_add1::IfcSeventhOrderPolynomialSpiral::SepticTerm() const { double v = get_attribute_value(1); return v; } @@ -14548,45 +14548,45 @@ void Ifc4x3_add1::IfcShadingDeviceType::setPredefinedType(const ::Ifc4x3_add1::I const ifcopenshell::entity& Ifc4x3_add1::IfcShadingDeviceType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[1004]); } -Ifc4x3_add1::IfcShadingDeviceType Ifc4x3_add1::IfcShadingDeviceType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcShadingDeviceTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcShadingDeviceTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_add1::IfcShadingDeviceType Ifc4x3_add1::IfcShadingDeviceType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcShadingDeviceTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcShadingDeviceTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcShapeAspect -std::vector< ::Ifc4x3_add1::IfcShapeModel > Ifc4x3_add1::IfcShapeAspect::ShapeRepresentations() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3_add1::IfcShapeModel>(es); } -void Ifc4x3_add1::IfcShapeAspect::setShapeRepresentations(const std::vector< ::Ifc4x3_add1::IfcShapeModel >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } +std::vector< ::Ifc4x3_add1::IfcShapeModel > Ifc4x3_add1::IfcShapeAspect::ShapeRepresentations() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3_add1::IfcShapeModel>(es); } +void Ifc4x3_add1::IfcShapeAspect::setShapeRepresentations(const std::vector< ::Ifc4x3_add1::IfcShapeModel >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } std::optional< std::string > Ifc4x3_add1::IfcShapeAspect::Name() const { if(get_attribute_value(1).isNull()) { return std::nullopt; } std::string v = get_attribute_value(1); return v; } void Ifc4x3_add1::IfcShapeAspect::setName(const std::optional< std::string >& v) { if (v) {set_attribute_value(1, *v);} else {unset_attribute_value(1);} } std::optional< std::string > Ifc4x3_add1::IfcShapeAspect::Description() const { if(get_attribute_value(2).isNull()) { return std::nullopt; } std::string v = get_attribute_value(2); return v; } void Ifc4x3_add1::IfcShapeAspect::setDescription(const std::optional< std::string >& v) { if (v) {set_attribute_value(2, *v);} else {unset_attribute_value(2);} } boost::logic::tribool Ifc4x3_add1::IfcShapeAspect::ProductDefinitional() const { boost::logic::tribool v = get_attribute_value(3); return v; } void Ifc4x3_add1::IfcShapeAspect::setProductDefinitional(const boost::logic::tribool& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } -::Ifc4x3_add1::IfcProductRepresentationSelect Ifc4x3_add1::IfcShapeAspect::PartOfProductDefinitionShape() const { if(get_attribute_value(4).isNull()) { return ::Ifc4x3_add1::IfcProductRepresentationSelect{}; } return ((express::Base)(get_attribute_value(4))).as<::Ifc4x3_add1::IfcProductRepresentationSelect>(); } +::Ifc4x3_add1::IfcProductRepresentationSelect Ifc4x3_add1::IfcShapeAspect::PartOfProductDefinitionShape() const { if(get_attribute_value(4).isNull()) { return ::Ifc4x3_add1::IfcProductRepresentationSelect{}; } return ((express::base)(get_attribute_value(4))).as<::Ifc4x3_add1::IfcProductRepresentationSelect>(); } void Ifc4x3_add1::IfcShapeAspect::setPartOfProductDefinitionShape(const ::Ifc4x3_add1::IfcProductRepresentationSelect& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } std::vector<::Ifc4x3_add1::IfcExternalReferenceRelationship> Ifc4x3_add1::IfcShapeAspect::HasExternalReferences() const { return cast_vector(file()->get_inverse(data()->id(), IFC4X3_ADD1_types[427], 3)); } const ifcopenshell::entity& Ifc4x3_add1::IfcShapeAspect::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[1006]); } -Ifc4x3_add1::IfcShapeAspect Ifc4x3_add1::IfcShapeAspect::initialize(std::vector< ::Ifc4x3_add1::IfcShapeModel > v1_ShapeRepresentations, std::optional< std::string > v2_Name, std::optional< std::string > v3_Description, boost::logic::tribool v4_ProductDefinitional, ::Ifc4x3_add1::IfcProductRepresentationSelect v5_PartOfProductDefinitionShape) { set_attribute_value(0, cast_vector(v1_ShapeRepresentations)); if (v2_Name) {set_attribute_value(1, (*v2_Name)); } if (v3_Description) {set_attribute_value(2, (*v3_Description)); }set_attribute_value(3, (v4_ProductDefinitional));set_attribute_value(4, (v5_PartOfProductDefinitionShape));; return *this; } +Ifc4x3_add1::IfcShapeAspect Ifc4x3_add1::IfcShapeAspect::initialize(std::vector< ::Ifc4x3_add1::IfcShapeModel > v1_ShapeRepresentations, std::optional< std::string > v2_Name, std::optional< std::string > v3_Description, boost::logic::tribool v4_ProductDefinitional, ::Ifc4x3_add1::IfcProductRepresentationSelect v5_PartOfProductDefinitionShape) { set_attribute_value(0, cast_vector(v1_ShapeRepresentations)); if (v2_Name) {set_attribute_value(1, (*v2_Name)); } if (v3_Description) {set_attribute_value(2, (*v3_Description)); }set_attribute_value(3, (v4_ProductDefinitional));set_attribute_value(4, (v5_PartOfProductDefinitionShape));; return *this; } // Function implementations for IfcShapeModel std::vector<::Ifc4x3_add1::IfcShapeAspect> Ifc4x3_add1::IfcShapeModel::OfShapeAspect() const { return cast_vector(file()->get_inverse(data()->id(), IFC4X3_ADD1_types[1006], 0)); } const ifcopenshell::entity& Ifc4x3_add1::IfcShapeModel::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[1007]); } -Ifc4x3_add1::IfcShapeModel Ifc4x3_add1::IfcShapeModel::initialize(::Ifc4x3_add1::IfcRepresentationContext v1_ContextOfItems, std::optional< std::string > v2_RepresentationIdentifier, std::optional< std::string > v3_RepresentationType, std::vector< ::Ifc4x3_add1::IfcRepresentationItem > v4_Items) { set_attribute_value(0, (v1_ContextOfItems)); if (v2_RepresentationIdentifier) {set_attribute_value(1, (*v2_RepresentationIdentifier)); } if (v3_RepresentationType) {set_attribute_value(2, (*v3_RepresentationType)); }set_attribute_value(3, cast_vector(v4_Items));; return *this; } +Ifc4x3_add1::IfcShapeModel Ifc4x3_add1::IfcShapeModel::initialize(::Ifc4x3_add1::IfcRepresentationContext v1_ContextOfItems, std::optional< std::string > v2_RepresentationIdentifier, std::optional< std::string > v3_RepresentationType, std::vector< ::Ifc4x3_add1::IfcRepresentationItem > v4_Items) { set_attribute_value(0, (v1_ContextOfItems)); if (v2_RepresentationIdentifier) {set_attribute_value(1, (*v2_RepresentationIdentifier)); } if (v3_RepresentationType) {set_attribute_value(2, (*v3_RepresentationType)); }set_attribute_value(3, cast_vector(v4_Items));; return *this; } // Function implementations for IfcShapeRepresentation const ifcopenshell::entity& Ifc4x3_add1::IfcShapeRepresentation::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[1008]); } -Ifc4x3_add1::IfcShapeRepresentation Ifc4x3_add1::IfcShapeRepresentation::initialize(::Ifc4x3_add1::IfcRepresentationContext v1_ContextOfItems, std::optional< std::string > v2_RepresentationIdentifier, std::optional< std::string > v3_RepresentationType, std::vector< ::Ifc4x3_add1::IfcRepresentationItem > v4_Items) { set_attribute_value(0, (v1_ContextOfItems)); if (v2_RepresentationIdentifier) {set_attribute_value(1, (*v2_RepresentationIdentifier)); } if (v3_RepresentationType) {set_attribute_value(2, (*v3_RepresentationType)); }set_attribute_value(3, cast_vector(v4_Items));; return *this; } +Ifc4x3_add1::IfcShapeRepresentation Ifc4x3_add1::IfcShapeRepresentation::initialize(::Ifc4x3_add1::IfcRepresentationContext v1_ContextOfItems, std::optional< std::string > v2_RepresentationIdentifier, std::optional< std::string > v3_RepresentationType, std::vector< ::Ifc4x3_add1::IfcRepresentationItem > v4_Items) { set_attribute_value(0, (v1_ContextOfItems)); if (v2_RepresentationIdentifier) {set_attribute_value(1, (*v2_RepresentationIdentifier)); } if (v3_RepresentationType) {set_attribute_value(2, (*v3_RepresentationType)); }set_attribute_value(3, cast_vector(v4_Items));; return *this; } // Function implementations for IfcShellBasedSurfaceModel -std::vector< ::Ifc4x3_add1::IfcShell > Ifc4x3_add1::IfcShellBasedSurfaceModel::SbsmBoundary() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3_add1::IfcShell>(es); } -void Ifc4x3_add1::IfcShellBasedSurfaceModel::setSbsmBoundary(const std::vector< ::Ifc4x3_add1::IfcShell >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } +std::vector< ::Ifc4x3_add1::IfcShell > Ifc4x3_add1::IfcShellBasedSurfaceModel::SbsmBoundary() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3_add1::IfcShell>(es); } +void Ifc4x3_add1::IfcShellBasedSurfaceModel::setSbsmBoundary(const std::vector< ::Ifc4x3_add1::IfcShell >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } const ifcopenshell::entity& Ifc4x3_add1::IfcShellBasedSurfaceModel::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[1011]); } -Ifc4x3_add1::IfcShellBasedSurfaceModel Ifc4x3_add1::IfcShellBasedSurfaceModel::initialize(std::vector< ::Ifc4x3_add1::IfcShell > v1_SbsmBoundary) { set_attribute_value(0, cast_vector(v1_SbsmBoundary));; return *this; } +Ifc4x3_add1::IfcShellBasedSurfaceModel Ifc4x3_add1::IfcShellBasedSurfaceModel::initialize(std::vector< ::Ifc4x3_add1::IfcShell > v1_SbsmBoundary) { set_attribute_value(0, cast_vector(v1_SbsmBoundary));; return *this; } // Function implementations for IfcSign std::optional< ::Ifc4x3_add1::IfcSignTypeEnum::Value > Ifc4x3_add1::IfcSign::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_add1::IfcSignTypeEnum::FromString(get_attribute_value(8)); } @@ -14602,7 +14602,7 @@ void Ifc4x3_add1::IfcSignType::setPredefinedType(const ::Ifc4x3_add1::IfcSignTyp const ifcopenshell::entity& Ifc4x3_add1::IfcSignType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[1016]); } -Ifc4x3_add1::IfcSignType Ifc4x3_add1::IfcSignType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcSignTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcSignTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_add1::IfcSignType Ifc4x3_add1::IfcSignType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcSignTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcSignTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcSignal std::optional< ::Ifc4x3_add1::IfcSignalTypeEnum::Value > Ifc4x3_add1::IfcSignal::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_add1::IfcSignalTypeEnum::FromString(get_attribute_value(8)); } @@ -14618,7 +14618,7 @@ void Ifc4x3_add1::IfcSignalType::setPredefinedType(const ::Ifc4x3_add1::IfcSigna const ifcopenshell::entity& Ifc4x3_add1::IfcSignalType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[1014]); } -Ifc4x3_add1::IfcSignalType Ifc4x3_add1::IfcSignalType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcSignalTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcSignalTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_add1::IfcSignalType Ifc4x3_add1::IfcSignalType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcSignalTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcSignalTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcSimpleProperty @@ -14633,11 +14633,11 @@ std::optional< std::string > Ifc4x3_add1::IfcSimplePropertyTemplate::PrimaryMeas void Ifc4x3_add1::IfcSimplePropertyTemplate::setPrimaryMeasureType(const std::optional< std::string >& v) { if (v) {set_attribute_value(5, *v);} else {unset_attribute_value(5);} } std::optional< std::string > Ifc4x3_add1::IfcSimplePropertyTemplate::SecondaryMeasureType() const { if(get_attribute_value(6).isNull()) { return std::nullopt; } std::string v = get_attribute_value(6); return v; } void Ifc4x3_add1::IfcSimplePropertyTemplate::setSecondaryMeasureType(const std::optional< std::string >& v) { if (v) {set_attribute_value(6, *v);} else {unset_attribute_value(6);} } -::Ifc4x3_add1::IfcPropertyEnumeration Ifc4x3_add1::IfcSimplePropertyTemplate::Enumerators() const { if(get_attribute_value(7).isNull()) { return ::Ifc4x3_add1::IfcPropertyEnumeration{}; } return ((express::Base)(get_attribute_value(7))).as<::Ifc4x3_add1::IfcPropertyEnumeration>(); } +::Ifc4x3_add1::IfcPropertyEnumeration Ifc4x3_add1::IfcSimplePropertyTemplate::Enumerators() const { if(get_attribute_value(7).isNull()) { return ::Ifc4x3_add1::IfcPropertyEnumeration{}; } return ((express::base)(get_attribute_value(7))).as<::Ifc4x3_add1::IfcPropertyEnumeration>(); } void Ifc4x3_add1::IfcSimplePropertyTemplate::setEnumerators(const ::Ifc4x3_add1::IfcPropertyEnumeration& v) { set_attribute_value(7, v);if constexpr (false)unset_attribute_value(7); } -::Ifc4x3_add1::IfcUnit Ifc4x3_add1::IfcSimplePropertyTemplate::PrimaryUnit() const { if(get_attribute_value(8).isNull()) { return ::Ifc4x3_add1::IfcUnit{}; } return ((express::Base)(get_attribute_value(8))).as<::Ifc4x3_add1::IfcUnit>(); } +::Ifc4x3_add1::IfcUnit Ifc4x3_add1::IfcSimplePropertyTemplate::PrimaryUnit() const { if(get_attribute_value(8).isNull()) { return ::Ifc4x3_add1::IfcUnit{}; } return ((express::base)(get_attribute_value(8))).as<::Ifc4x3_add1::IfcUnit>(); } void Ifc4x3_add1::IfcSimplePropertyTemplate::setPrimaryUnit(const ::Ifc4x3_add1::IfcUnit& v) { set_attribute_value(8, v);if constexpr (false)unset_attribute_value(8); } -::Ifc4x3_add1::IfcUnit Ifc4x3_add1::IfcSimplePropertyTemplate::SecondaryUnit() const { if(get_attribute_value(9).isNull()) { return ::Ifc4x3_add1::IfcUnit{}; } return ((express::Base)(get_attribute_value(9))).as<::Ifc4x3_add1::IfcUnit>(); } +::Ifc4x3_add1::IfcUnit Ifc4x3_add1::IfcSimplePropertyTemplate::SecondaryUnit() const { if(get_attribute_value(9).isNull()) { return ::Ifc4x3_add1::IfcUnit{}; } return ((express::base)(get_attribute_value(9))).as<::Ifc4x3_add1::IfcUnit>(); } void Ifc4x3_add1::IfcSimplePropertyTemplate::setSecondaryUnit(const ::Ifc4x3_add1::IfcUnit& v) { set_attribute_value(9, v);if constexpr (false)unset_attribute_value(9); } std::optional< std::string > Ifc4x3_add1::IfcSimplePropertyTemplate::Expression() const { if(get_attribute_value(10).isNull()) { return std::nullopt; } std::string v = get_attribute_value(10); return v; } void Ifc4x3_add1::IfcSimplePropertyTemplate::setExpression(const std::optional< std::string >& v) { if (v) {set_attribute_value(10, *v);} else {unset_attribute_value(10);} } @@ -14669,7 +14669,7 @@ std::optional< double > Ifc4x3_add1::IfcSite::RefElevation() const { if(get_attr void Ifc4x3_add1::IfcSite::setRefElevation(const std::optional< double >& v) { if (v) {set_attribute_value(11, *v);} else {unset_attribute_value(11);} } std::optional< std::string > Ifc4x3_add1::IfcSite::LandTitleNumber() const { if(get_attribute_value(12).isNull()) { return std::nullopt; } std::string v = get_attribute_value(12); return v; } void Ifc4x3_add1::IfcSite::setLandTitleNumber(const std::optional< std::string >& v) { if (v) {set_attribute_value(12, *v);} else {unset_attribute_value(12);} } -::Ifc4x3_add1::IfcPostalAddress Ifc4x3_add1::IfcSite::SiteAddress() const { if(get_attribute_value(13).isNull()) { return ::Ifc4x3_add1::IfcPostalAddress{}; } return ((express::Base)(get_attribute_value(13))).as<::Ifc4x3_add1::IfcPostalAddress>(); } +::Ifc4x3_add1::IfcPostalAddress Ifc4x3_add1::IfcSite::SiteAddress() const { if(get_attribute_value(13).isNull()) { return ::Ifc4x3_add1::IfcPostalAddress{}; } return ((express::base)(get_attribute_value(13))).as<::Ifc4x3_add1::IfcPostalAddress>(); } void Ifc4x3_add1::IfcSite::setSiteAddress(const ::Ifc4x3_add1::IfcPostalAddress& v) { set_attribute_value(13, v);if constexpr (false)unset_attribute_value(13); } @@ -14690,7 +14690,7 @@ void Ifc4x3_add1::IfcSlabType::setPredefinedType(const ::Ifc4x3_add1::IfcSlabTyp const ifcopenshell::entity& Ifc4x3_add1::IfcSlabType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[1029]); } -Ifc4x3_add1::IfcSlabType Ifc4x3_add1::IfcSlabType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcSlabTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcSlabTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_add1::IfcSlabType Ifc4x3_add1::IfcSlabType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcSlabTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcSlabTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcSlippageConnectionCondition std::optional< double > Ifc4x3_add1::IfcSlippageConnectionCondition::SlippageX() const { if(get_attribute_value(1).isNull()) { return std::nullopt; } double v = get_attribute_value(1); return v; } @@ -14718,7 +14718,7 @@ void Ifc4x3_add1::IfcSolarDeviceType::setPredefinedType(const ::Ifc4x3_add1::Ifc const ifcopenshell::entity& Ifc4x3_add1::IfcSolarDeviceType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[1033]); } -Ifc4x3_add1::IfcSolarDeviceType Ifc4x3_add1::IfcSolarDeviceType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcSolarDeviceTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcSolarDeviceTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_add1::IfcSolarDeviceType Ifc4x3_add1::IfcSolarDeviceType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcSolarDeviceTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcSolarDeviceTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcSolidModel @@ -14752,7 +14752,7 @@ void Ifc4x3_add1::IfcSpaceHeaterType::setPredefinedType(const ::Ifc4x3_add1::Ifc const ifcopenshell::entity& Ifc4x3_add1::IfcSpaceHeaterType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[1045]); } -Ifc4x3_add1::IfcSpaceHeaterType Ifc4x3_add1::IfcSpaceHeaterType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcSpaceHeaterTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcSpaceHeaterTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_add1::IfcSpaceHeaterType Ifc4x3_add1::IfcSpaceHeaterType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcSpaceHeaterTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcSpaceHeaterTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcSpaceType ::Ifc4x3_add1::IfcSpaceTypeEnum::Value Ifc4x3_add1::IfcSpaceType::PredefinedType() const { return ::Ifc4x3_add1::IfcSpaceTypeEnum::FromString(get_attribute_value(9)); } @@ -14762,7 +14762,7 @@ void Ifc4x3_add1::IfcSpaceType::setLongName(const std::optional< std::string >& const ifcopenshell::entity& Ifc4x3_add1::IfcSpaceType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[1047]); } -Ifc4x3_add1::IfcSpaceType Ifc4x3_add1::IfcSpaceType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcSpaceTypeEnum::Value v10_PredefinedType, std::optional< std::string > v11_LongName) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcSpaceTypeEnum::Class(),(size_t)v10_PredefinedType))); if (v11_LongName) {set_attribute_value(10, (*v11_LongName)); }; return *this; } +Ifc4x3_add1::IfcSpaceType Ifc4x3_add1::IfcSpaceType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcSpaceTypeEnum::Value v10_PredefinedType, std::optional< std::string > v11_LongName) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcSpaceTypeEnum::Class(),(size_t)v10_PredefinedType))); if (v11_LongName) {set_attribute_value(10, (*v11_LongName)); }; return *this; } // Function implementations for IfcSpatialElement std::optional< std::string > Ifc4x3_add1::IfcSpatialElement::LongName() const { if(get_attribute_value(7).isNull()) { return std::nullopt; } std::string v = get_attribute_value(7); return v; } @@ -14783,7 +14783,7 @@ void Ifc4x3_add1::IfcSpatialElementType::setElementType(const std::optional< std const ifcopenshell::entity& Ifc4x3_add1::IfcSpatialElementType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[1050]); } -Ifc4x3_add1::IfcSpatialElementType Ifc4x3_add1::IfcSpatialElementType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } +Ifc4x3_add1::IfcSpatialElementType Ifc4x3_add1::IfcSpatialElementType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } // Function implementations for IfcSpatialStructureElement std::optional< ::Ifc4x3_add1::IfcElementCompositionEnum::Value > Ifc4x3_add1::IfcSpatialStructureElement::CompositionType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_add1::IfcElementCompositionEnum::FromString(get_attribute_value(8)); } @@ -14797,7 +14797,7 @@ Ifc4x3_add1::IfcSpatialStructureElement Ifc4x3_add1::IfcSpatialStructureElement: const ifcopenshell::entity& Ifc4x3_add1::IfcSpatialStructureElementType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[1053]); } -Ifc4x3_add1::IfcSpatialStructureElementType Ifc4x3_add1::IfcSpatialStructureElementType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } +Ifc4x3_add1::IfcSpatialStructureElementType Ifc4x3_add1::IfcSpatialStructureElementType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } // Function implementations for IfcSpatialZone std::optional< ::Ifc4x3_add1::IfcSpatialZoneTypeEnum::Value > Ifc4x3_add1::IfcSpatialZone::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_add1::IfcSpatialZoneTypeEnum::FromString(get_attribute_value(8)); } @@ -14815,7 +14815,7 @@ void Ifc4x3_add1::IfcSpatialZoneType::setLongName(const std::optional< std::stri const ifcopenshell::entity& Ifc4x3_add1::IfcSpatialZoneType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[1055]); } -Ifc4x3_add1::IfcSpatialZoneType Ifc4x3_add1::IfcSpatialZoneType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcSpatialZoneTypeEnum::Value v10_PredefinedType, std::optional< std::string > v11_LongName) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcSpatialZoneTypeEnum::Class(),(size_t)v10_PredefinedType))); if (v11_LongName) {set_attribute_value(10, (*v11_LongName)); }; return *this; } +Ifc4x3_add1::IfcSpatialZoneType Ifc4x3_add1::IfcSpatialZoneType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcSpatialZoneTypeEnum::Value v10_PredefinedType, std::optional< std::string > v11_LongName) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcSpatialZoneTypeEnum::Class(),(size_t)v10_PredefinedType))); if (v11_LongName) {set_attribute_value(10, (*v11_LongName)); }; return *this; } // Function implementations for IfcSphere double Ifc4x3_add1::IfcSphere::Radius() const { double v = get_attribute_value(1); return v; } @@ -14834,7 +14834,7 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcSphericalSurface::Class() { return * Ifc4x3_add1::IfcSphericalSurface Ifc4x3_add1::IfcSphericalSurface::initialize(::Ifc4x3_add1::IfcAxis2Placement3D v1_Position, double v2_Radius) { set_attribute_value(0, (v1_Position));set_attribute_value(1, (v2_Radius));; return *this; } // Function implementations for IfcSpiral -::Ifc4x3_add1::IfcAxis2Placement Ifc4x3_add1::IfcSpiral::Position() const { if(get_attribute_value(0).isNull()) { return ::Ifc4x3_add1::IfcAxis2Placement{}; } return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcAxis2Placement>(); } +::Ifc4x3_add1::IfcAxis2Placement Ifc4x3_add1::IfcSpiral::Position() const { if(get_attribute_value(0).isNull()) { return ::Ifc4x3_add1::IfcAxis2Placement{}; } return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcAxis2Placement>(); } void Ifc4x3_add1::IfcSpiral::setPosition(const ::Ifc4x3_add1::IfcAxis2Placement& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } @@ -14855,7 +14855,7 @@ void Ifc4x3_add1::IfcStackTerminalType::setPredefinedType(const ::Ifc4x3_add1::I const ifcopenshell::entity& Ifc4x3_add1::IfcStackTerminalType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[1065]); } -Ifc4x3_add1::IfcStackTerminalType Ifc4x3_add1::IfcStackTerminalType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcStackTerminalTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcStackTerminalTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_add1::IfcStackTerminalType Ifc4x3_add1::IfcStackTerminalType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcStackTerminalTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcStackTerminalTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcStair std::optional< ::Ifc4x3_add1::IfcStairTypeEnum::Value > Ifc4x3_add1::IfcStair::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_add1::IfcStairTypeEnum::FromString(get_attribute_value(8)); } @@ -14887,7 +14887,7 @@ void Ifc4x3_add1::IfcStairFlightType::setPredefinedType(const ::Ifc4x3_add1::Ifc const ifcopenshell::entity& Ifc4x3_add1::IfcStairFlightType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[1069]); } -Ifc4x3_add1::IfcStairFlightType Ifc4x3_add1::IfcStairFlightType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcStairFlightTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcStairFlightTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_add1::IfcStairFlightType Ifc4x3_add1::IfcStairFlightType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcStairFlightTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcStairFlightTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcStairType ::Ifc4x3_add1::IfcStairTypeEnum::Value Ifc4x3_add1::IfcStairType::PredefinedType() const { return ::Ifc4x3_add1::IfcStairTypeEnum::FromString(get_attribute_value(9)); } @@ -14895,7 +14895,7 @@ void Ifc4x3_add1::IfcStairType::setPredefinedType(const ::Ifc4x3_add1::IfcStairT const ifcopenshell::entity& Ifc4x3_add1::IfcStairType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[1071]); } -Ifc4x3_add1::IfcStairType Ifc4x3_add1::IfcStairType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcStairTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcStairTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_add1::IfcStairType Ifc4x3_add1::IfcStairType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcStairTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcStairTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcStructuralAction std::optional< bool > Ifc4x3_add1::IfcStructuralAction::DestabilizingLoad() const { if(get_attribute_value(9).isNull()) { return std::nullopt; } bool v = get_attribute_value(9); return v; } @@ -14906,7 +14906,7 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcStructuralAction::Class() { return * Ifc4x3_add1::IfcStructuralAction Ifc4x3_add1::IfcStructuralAction::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, ::Ifc4x3_add1::IfcObjectPlacement v6_ObjectPlacement, ::Ifc4x3_add1::IfcProductRepresentation v7_Representation, ::Ifc4x3_add1::IfcStructuralLoad v8_AppliedLoad, ::Ifc4x3_add1::IfcGlobalOrLocalEnum::Value v9_GlobalOrLocal, std::optional< bool > v10_DestabilizingLoad) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); }set_attribute_value(5, (v6_ObjectPlacement));set_attribute_value(6, (v7_Representation));set_attribute_value(7, (v8_AppliedLoad));set_attribute_value(8, (enumeration_reference(&::Ifc4x3_add1::IfcGlobalOrLocalEnum::Class(),(size_t)v9_GlobalOrLocal))); if (v10_DestabilizingLoad) {set_attribute_value(9, (*v10_DestabilizingLoad)); }; return *this; } // Function implementations for IfcStructuralActivity -::Ifc4x3_add1::IfcStructuralLoad Ifc4x3_add1::IfcStructuralActivity::AppliedLoad() const { return ((express::Base)(get_attribute_value(7))).as<::Ifc4x3_add1::IfcStructuralLoad>(); } +::Ifc4x3_add1::IfcStructuralLoad Ifc4x3_add1::IfcStructuralActivity::AppliedLoad() const { return ((express::base)(get_attribute_value(7))).as<::Ifc4x3_add1::IfcStructuralLoad>(); } void Ifc4x3_add1::IfcStructuralActivity::setAppliedLoad(const ::Ifc4x3_add1::IfcStructuralLoad& v) { set_attribute_value(7, v);if constexpr (false)unset_attribute_value(7); } ::Ifc4x3_add1::IfcGlobalOrLocalEnum::Value Ifc4x3_add1::IfcStructuralActivity::GlobalOrLocal() const { return ::Ifc4x3_add1::IfcGlobalOrLocalEnum::FromString(get_attribute_value(8)); } void Ifc4x3_add1::IfcStructuralActivity::setGlobalOrLocal(const ::Ifc4x3_add1::IfcGlobalOrLocalEnum::Value& v) { set_attribute_value(8, enumeration_reference(&::Ifc4x3_add1::IfcGlobalOrLocalEnum::Class(), (size_t) v));if constexpr (false)unset_attribute_value(8); } @@ -14919,21 +14919,21 @@ Ifc4x3_add1::IfcStructuralActivity Ifc4x3_add1::IfcStructuralActivity::initializ // Function implementations for IfcStructuralAnalysisModel ::Ifc4x3_add1::IfcAnalysisModelTypeEnum::Value Ifc4x3_add1::IfcStructuralAnalysisModel::PredefinedType() const { return ::Ifc4x3_add1::IfcAnalysisModelTypeEnum::FromString(get_attribute_value(5)); } void Ifc4x3_add1::IfcStructuralAnalysisModel::setPredefinedType(const ::Ifc4x3_add1::IfcAnalysisModelTypeEnum::Value& v) { set_attribute_value(5, enumeration_reference(&::Ifc4x3_add1::IfcAnalysisModelTypeEnum::Class(), (size_t) v));if constexpr (false)unset_attribute_value(5); } -::Ifc4x3_add1::IfcAxis2Placement3D Ifc4x3_add1::IfcStructuralAnalysisModel::OrientationOf2DPlane() const { if(get_attribute_value(6).isNull()) { return ::Ifc4x3_add1::IfcAxis2Placement3D{}; } return ((express::Base)(get_attribute_value(6))).as<::Ifc4x3_add1::IfcAxis2Placement3D>(); } +::Ifc4x3_add1::IfcAxis2Placement3D Ifc4x3_add1::IfcStructuralAnalysisModel::OrientationOf2DPlane() const { if(get_attribute_value(6).isNull()) { return ::Ifc4x3_add1::IfcAxis2Placement3D{}; } return ((express::base)(get_attribute_value(6))).as<::Ifc4x3_add1::IfcAxis2Placement3D>(); } void Ifc4x3_add1::IfcStructuralAnalysisModel::setOrientationOf2DPlane(const ::Ifc4x3_add1::IfcAxis2Placement3D& v) { set_attribute_value(6, v);if constexpr (false)unset_attribute_value(6); } -std::optional< std::vector< ::Ifc4x3_add1::IfcStructuralLoadGroup > > Ifc4x3_add1::IfcStructuralAnalysisModel::LoadedBy() const { if(get_attribute_value(7).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(7); return cast_vector<::Ifc4x3_add1::IfcStructuralLoadGroup>(es); } -void Ifc4x3_add1::IfcStructuralAnalysisModel::setLoadedBy(const std::optional< std::vector< ::Ifc4x3_add1::IfcStructuralLoadGroup > >& v) { if (v) {set_attribute_value(7, cast_vector(*v));} else {unset_attribute_value(7);} } -std::optional< std::vector< ::Ifc4x3_add1::IfcStructuralResultGroup > > Ifc4x3_add1::IfcStructuralAnalysisModel::HasResults() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(8); return cast_vector<::Ifc4x3_add1::IfcStructuralResultGroup>(es); } -void Ifc4x3_add1::IfcStructuralAnalysisModel::setHasResults(const std::optional< std::vector< ::Ifc4x3_add1::IfcStructuralResultGroup > >& v) { if (v) {set_attribute_value(8, cast_vector(*v));} else {unset_attribute_value(8);} } -::Ifc4x3_add1::IfcObjectPlacement Ifc4x3_add1::IfcStructuralAnalysisModel::SharedPlacement() const { if(get_attribute_value(9).isNull()) { return ::Ifc4x3_add1::IfcObjectPlacement{}; } return ((express::Base)(get_attribute_value(9))).as<::Ifc4x3_add1::IfcObjectPlacement>(); } +std::optional< std::vector< ::Ifc4x3_add1::IfcStructuralLoadGroup > > Ifc4x3_add1::IfcStructuralAnalysisModel::LoadedBy() const { if(get_attribute_value(7).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(7); return cast_vector<::Ifc4x3_add1::IfcStructuralLoadGroup>(es); } +void Ifc4x3_add1::IfcStructuralAnalysisModel::setLoadedBy(const std::optional< std::vector< ::Ifc4x3_add1::IfcStructuralLoadGroup > >& v) { if (v) {set_attribute_value(7, cast_vector(*v));} else {unset_attribute_value(7);} } +std::optional< std::vector< ::Ifc4x3_add1::IfcStructuralResultGroup > > Ifc4x3_add1::IfcStructuralAnalysisModel::HasResults() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(8); return cast_vector<::Ifc4x3_add1::IfcStructuralResultGroup>(es); } +void Ifc4x3_add1::IfcStructuralAnalysisModel::setHasResults(const std::optional< std::vector< ::Ifc4x3_add1::IfcStructuralResultGroup > >& v) { if (v) {set_attribute_value(8, cast_vector(*v));} else {unset_attribute_value(8);} } +::Ifc4x3_add1::IfcObjectPlacement Ifc4x3_add1::IfcStructuralAnalysisModel::SharedPlacement() const { if(get_attribute_value(9).isNull()) { return ::Ifc4x3_add1::IfcObjectPlacement{}; } return ((express::base)(get_attribute_value(9))).as<::Ifc4x3_add1::IfcObjectPlacement>(); } void Ifc4x3_add1::IfcStructuralAnalysisModel::setSharedPlacement(const ::Ifc4x3_add1::IfcObjectPlacement& v) { set_attribute_value(9, v);if constexpr (false)unset_attribute_value(9); } const ifcopenshell::entity& Ifc4x3_add1::IfcStructuralAnalysisModel::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[1078]); } -Ifc4x3_add1::IfcStructuralAnalysisModel Ifc4x3_add1::IfcStructuralAnalysisModel::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, ::Ifc4x3_add1::IfcAnalysisModelTypeEnum::Value v6_PredefinedType, ::Ifc4x3_add1::IfcAxis2Placement3D v7_OrientationOf2DPlane, std::optional< std::vector< ::Ifc4x3_add1::IfcStructuralLoadGroup > > v8_LoadedBy, std::optional< std::vector< ::Ifc4x3_add1::IfcStructuralResultGroup > > v9_HasResults, ::Ifc4x3_add1::IfcObjectPlacement v10_SharedPlacement) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); }set_attribute_value(5, (enumeration_reference(&::Ifc4x3_add1::IfcAnalysisModelTypeEnum::Class(),(size_t)v6_PredefinedType)));set_attribute_value(6, (v7_OrientationOf2DPlane)); if (v8_LoadedBy) {set_attribute_value(7, cast_vector(*v8_LoadedBy)); } if (v9_HasResults) {set_attribute_value(8, cast_vector(*v9_HasResults)); }set_attribute_value(9, (v10_SharedPlacement));; return *this; } +Ifc4x3_add1::IfcStructuralAnalysisModel Ifc4x3_add1::IfcStructuralAnalysisModel::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, ::Ifc4x3_add1::IfcAnalysisModelTypeEnum::Value v6_PredefinedType, ::Ifc4x3_add1::IfcAxis2Placement3D v7_OrientationOf2DPlane, std::optional< std::vector< ::Ifc4x3_add1::IfcStructuralLoadGroup > > v8_LoadedBy, std::optional< std::vector< ::Ifc4x3_add1::IfcStructuralResultGroup > > v9_HasResults, ::Ifc4x3_add1::IfcObjectPlacement v10_SharedPlacement) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); }set_attribute_value(5, (enumeration_reference(&::Ifc4x3_add1::IfcAnalysisModelTypeEnum::Class(),(size_t)v6_PredefinedType)));set_attribute_value(6, (v7_OrientationOf2DPlane)); if (v8_LoadedBy) {set_attribute_value(7, cast_vector(*v8_LoadedBy)); } if (v9_HasResults) {set_attribute_value(8, cast_vector(*v9_HasResults)); }set_attribute_value(9, (v10_SharedPlacement));; return *this; } // Function implementations for IfcStructuralConnection -::Ifc4x3_add1::IfcBoundaryCondition Ifc4x3_add1::IfcStructuralConnection::AppliedCondition() const { if(get_attribute_value(7).isNull()) { return ::Ifc4x3_add1::IfcBoundaryCondition{}; } return ((express::Base)(get_attribute_value(7))).as<::Ifc4x3_add1::IfcBoundaryCondition>(); } +::Ifc4x3_add1::IfcBoundaryCondition Ifc4x3_add1::IfcStructuralConnection::AppliedCondition() const { if(get_attribute_value(7).isNull()) { return ::Ifc4x3_add1::IfcBoundaryCondition{}; } return ((express::base)(get_attribute_value(7))).as<::Ifc4x3_add1::IfcBoundaryCondition>(); } void Ifc4x3_add1::IfcStructuralConnection::setAppliedCondition(const ::Ifc4x3_add1::IfcBoundaryCondition& v) { set_attribute_value(7, v);if constexpr (false)unset_attribute_value(7); } std::vector<::Ifc4x3_add1::IfcRelConnectsStructuralMember> Ifc4x3_add1::IfcStructuralConnection::ConnectsStructuralMembers() const { return cast_vector(file()->get_inverse(data()->id(), IFC4X3_ADD1_types[923], 5)); } @@ -14960,7 +14960,7 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcStructuralCurveAction::Class() { ret Ifc4x3_add1::IfcStructuralCurveAction Ifc4x3_add1::IfcStructuralCurveAction::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, ::Ifc4x3_add1::IfcObjectPlacement v6_ObjectPlacement, ::Ifc4x3_add1::IfcProductRepresentation v7_Representation, ::Ifc4x3_add1::IfcStructuralLoad v8_AppliedLoad, ::Ifc4x3_add1::IfcGlobalOrLocalEnum::Value v9_GlobalOrLocal, std::optional< bool > v10_DestabilizingLoad, std::optional< ::Ifc4x3_add1::IfcProjectedOrTrueLengthEnum::Value > v11_ProjectedOrTrue, ::Ifc4x3_add1::IfcStructuralCurveActivityTypeEnum::Value v12_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); }set_attribute_value(5, (v6_ObjectPlacement));set_attribute_value(6, (v7_Representation));set_attribute_value(7, (v8_AppliedLoad));set_attribute_value(8, (enumeration_reference(&::Ifc4x3_add1::IfcGlobalOrLocalEnum::Class(),(size_t)v9_GlobalOrLocal))); if (v10_DestabilizingLoad) {set_attribute_value(9, (*v10_DestabilizingLoad)); } if (v11_ProjectedOrTrue) {set_attribute_value(10, (enumeration_reference(&::Ifc4x3_add1::IfcProjectedOrTrueLengthEnum::Class(),(size_t)*v11_ProjectedOrTrue))); }set_attribute_value(11, (enumeration_reference(&::Ifc4x3_add1::IfcStructuralCurveActivityTypeEnum::Class(),(size_t)v12_PredefinedType)));; return *this; } // Function implementations for IfcStructuralCurveConnection -::Ifc4x3_add1::IfcDirection Ifc4x3_add1::IfcStructuralCurveConnection::AxisDirection() const { return ((express::Base)(get_attribute_value(8))).as<::Ifc4x3_add1::IfcDirection>(); } +::Ifc4x3_add1::IfcDirection Ifc4x3_add1::IfcStructuralCurveConnection::AxisDirection() const { return ((express::base)(get_attribute_value(8))).as<::Ifc4x3_add1::IfcDirection>(); } void Ifc4x3_add1::IfcStructuralCurveConnection::setAxisDirection(const ::Ifc4x3_add1::IfcDirection& v) { set_attribute_value(8, v);if constexpr (false)unset_attribute_value(8); } @@ -14970,7 +14970,7 @@ Ifc4x3_add1::IfcStructuralCurveConnection Ifc4x3_add1::IfcStructuralCurveConnect // Function implementations for IfcStructuralCurveMember ::Ifc4x3_add1::IfcStructuralCurveMemberTypeEnum::Value Ifc4x3_add1::IfcStructuralCurveMember::PredefinedType() const { return ::Ifc4x3_add1::IfcStructuralCurveMemberTypeEnum::FromString(get_attribute_value(7)); } void Ifc4x3_add1::IfcStructuralCurveMember::setPredefinedType(const ::Ifc4x3_add1::IfcStructuralCurveMemberTypeEnum::Value& v) { set_attribute_value(7, enumeration_reference(&::Ifc4x3_add1::IfcStructuralCurveMemberTypeEnum::Class(), (size_t) v));if constexpr (false)unset_attribute_value(7); } -::Ifc4x3_add1::IfcDirection Ifc4x3_add1::IfcStructuralCurveMember::Axis() const { return ((express::Base)(get_attribute_value(8))).as<::Ifc4x3_add1::IfcDirection>(); } +::Ifc4x3_add1::IfcDirection Ifc4x3_add1::IfcStructuralCurveMember::Axis() const { return ((express::base)(get_attribute_value(8))).as<::Ifc4x3_add1::IfcDirection>(); } void Ifc4x3_add1::IfcStructuralCurveMember::setAxis(const ::Ifc4x3_add1::IfcDirection& v) { set_attribute_value(8, v);if constexpr (false)unset_attribute_value(8); } @@ -15021,14 +15021,14 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcStructuralLoadCase::Class() { return Ifc4x3_add1::IfcStructuralLoadCase Ifc4x3_add1::IfcStructuralLoadCase::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, ::Ifc4x3_add1::IfcLoadGroupTypeEnum::Value v6_PredefinedType, ::Ifc4x3_add1::IfcActionTypeEnum::Value v7_ActionType, ::Ifc4x3_add1::IfcActionSourceTypeEnum::Value v8_ActionSource, std::optional< double > v9_Coefficient, std::optional< std::string > v10_Purpose, std::optional< std::vector< double > /*[3:3]*/ > v11_SelfWeightCoefficients) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); }set_attribute_value(5, (enumeration_reference(&::Ifc4x3_add1::IfcLoadGroupTypeEnum::Class(),(size_t)v6_PredefinedType)));set_attribute_value(6, (enumeration_reference(&::Ifc4x3_add1::IfcActionTypeEnum::Class(),(size_t)v7_ActionType)));set_attribute_value(7, (enumeration_reference(&::Ifc4x3_add1::IfcActionSourceTypeEnum::Class(),(size_t)v8_ActionSource))); if (v9_Coefficient) {set_attribute_value(8, (*v9_Coefficient)); } if (v10_Purpose) {set_attribute_value(9, (*v10_Purpose)); } if (v11_SelfWeightCoefficients) {set_attribute_value(10, (*v11_SelfWeightCoefficients)); }; return *this; } // Function implementations for IfcStructuralLoadConfiguration -std::vector< ::Ifc4x3_add1::IfcStructuralLoadOrResult > Ifc4x3_add1::IfcStructuralLoadConfiguration::Values() const { std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3_add1::IfcStructuralLoadOrResult>(es); } -void Ifc4x3_add1::IfcStructuralLoadConfiguration::setValues(const std::vector< ::Ifc4x3_add1::IfcStructuralLoadOrResult >& v) { set_attribute_value(1, cast_vector(v));if constexpr (false)unset_attribute_value(1); } +std::vector< ::Ifc4x3_add1::IfcStructuralLoadOrResult > Ifc4x3_add1::IfcStructuralLoadConfiguration::Values() const { std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3_add1::IfcStructuralLoadOrResult>(es); } +void Ifc4x3_add1::IfcStructuralLoadConfiguration::setValues(const std::vector< ::Ifc4x3_add1::IfcStructuralLoadOrResult >& v) { set_attribute_value(1, cast_vector(v));if constexpr (false)unset_attribute_value(1); } std::optional< std::vector< std::vector< double > > > Ifc4x3_add1::IfcStructuralLoadConfiguration::Locations() const { if(get_attribute_value(2).isNull()) { return std::nullopt; } std::vector< std::vector< double > > v = get_attribute_value(2); return v; } void Ifc4x3_add1::IfcStructuralLoadConfiguration::setLocations(const std::optional< std::vector< std::vector< double > > >& v) { if (v) {set_attribute_value(2, *v);} else {unset_attribute_value(2);} } const ifcopenshell::entity& Ifc4x3_add1::IfcStructuralLoadConfiguration::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[1092]); } -Ifc4x3_add1::IfcStructuralLoadConfiguration Ifc4x3_add1::IfcStructuralLoadConfiguration::initialize(std::optional< std::string > v1_Name, std::vector< ::Ifc4x3_add1::IfcStructuralLoadOrResult > v2_Values, std::optional< std::vector< std::vector< double > > > v3_Locations) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); }set_attribute_value(1, cast_vector(v2_Values)); if (v3_Locations) {set_attribute_value(2, (*v3_Locations)); }; return *this; } +Ifc4x3_add1::IfcStructuralLoadConfiguration Ifc4x3_add1::IfcStructuralLoadConfiguration::initialize(std::optional< std::string > v1_Name, std::vector< ::Ifc4x3_add1::IfcStructuralLoadOrResult > v2_Values, std::optional< std::vector< std::vector< double > > > v3_Locations) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); }set_attribute_value(1, cast_vector(v2_Values)); if (v3_Locations) {set_attribute_value(2, (*v3_Locations)); }; return *this; } // Function implementations for IfcStructuralLoadGroup ::Ifc4x3_add1::IfcLoadGroupTypeEnum::Value Ifc4x3_add1::IfcStructuralLoadGroup::PredefinedType() const { return ::Ifc4x3_add1::IfcLoadGroupTypeEnum::FromString(get_attribute_value(5)); } @@ -15174,7 +15174,7 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcStructuralPointAction::Class() { ret Ifc4x3_add1::IfcStructuralPointAction Ifc4x3_add1::IfcStructuralPointAction::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, ::Ifc4x3_add1::IfcObjectPlacement v6_ObjectPlacement, ::Ifc4x3_add1::IfcProductRepresentation v7_Representation, ::Ifc4x3_add1::IfcStructuralLoad v8_AppliedLoad, ::Ifc4x3_add1::IfcGlobalOrLocalEnum::Value v9_GlobalOrLocal, std::optional< bool > v10_DestabilizingLoad) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); }set_attribute_value(5, (v6_ObjectPlacement));set_attribute_value(6, (v7_Representation));set_attribute_value(7, (v8_AppliedLoad));set_attribute_value(8, (enumeration_reference(&::Ifc4x3_add1::IfcGlobalOrLocalEnum::Class(),(size_t)v9_GlobalOrLocal))); if (v10_DestabilizingLoad) {set_attribute_value(9, (*v10_DestabilizingLoad)); }; return *this; } // Function implementations for IfcStructuralPointConnection -::Ifc4x3_add1::IfcAxis2Placement3D Ifc4x3_add1::IfcStructuralPointConnection::ConditionCoordinateSystem() const { if(get_attribute_value(8).isNull()) { return ::Ifc4x3_add1::IfcAxis2Placement3D{}; } return ((express::Base)(get_attribute_value(8))).as<::Ifc4x3_add1::IfcAxis2Placement3D>(); } +::Ifc4x3_add1::IfcAxis2Placement3D Ifc4x3_add1::IfcStructuralPointConnection::ConditionCoordinateSystem() const { if(get_attribute_value(8).isNull()) { return ::Ifc4x3_add1::IfcAxis2Placement3D{}; } return ((express::base)(get_attribute_value(8))).as<::Ifc4x3_add1::IfcAxis2Placement3D>(); } void Ifc4x3_add1::IfcStructuralPointConnection::setConditionCoordinateSystem(const ::Ifc4x3_add1::IfcAxis2Placement3D& v) { set_attribute_value(8, v);if constexpr (false)unset_attribute_value(8); } @@ -15196,7 +15196,7 @@ Ifc4x3_add1::IfcStructuralReaction Ifc4x3_add1::IfcStructuralReaction::initializ // Function implementations for IfcStructuralResultGroup ::Ifc4x3_add1::IfcAnalysisTheoryTypeEnum::Value Ifc4x3_add1::IfcStructuralResultGroup::TheoryType() const { return ::Ifc4x3_add1::IfcAnalysisTheoryTypeEnum::FromString(get_attribute_value(5)); } void Ifc4x3_add1::IfcStructuralResultGroup::setTheoryType(const ::Ifc4x3_add1::IfcAnalysisTheoryTypeEnum::Value& v) { set_attribute_value(5, enumeration_reference(&::Ifc4x3_add1::IfcAnalysisTheoryTypeEnum::Class(), (size_t) v));if constexpr (false)unset_attribute_value(5); } -::Ifc4x3_add1::IfcStructuralLoadGroup Ifc4x3_add1::IfcStructuralResultGroup::ResultForLoadGroup() const { if(get_attribute_value(6).isNull()) { return ::Ifc4x3_add1::IfcStructuralLoadGroup{}; } return ((express::Base)(get_attribute_value(6))).as<::Ifc4x3_add1::IfcStructuralLoadGroup>(); } +::Ifc4x3_add1::IfcStructuralLoadGroup Ifc4x3_add1::IfcStructuralResultGroup::ResultForLoadGroup() const { if(get_attribute_value(6).isNull()) { return ::Ifc4x3_add1::IfcStructuralLoadGroup{}; } return ((express::base)(get_attribute_value(6))).as<::Ifc4x3_add1::IfcStructuralLoadGroup>(); } void Ifc4x3_add1::IfcStructuralResultGroup::setResultForLoadGroup(const ::Ifc4x3_add1::IfcStructuralLoadGroup& v) { set_attribute_value(6, v);if constexpr (false)unset_attribute_value(6); } bool Ifc4x3_add1::IfcStructuralResultGroup::IsLinear() const { bool v = get_attribute_value(7); return v; } void Ifc4x3_add1::IfcStructuralResultGroup::setIsLinear(const bool& v) { set_attribute_value(7, v);if constexpr (false)unset_attribute_value(7); } @@ -15250,25 +15250,25 @@ Ifc4x3_add1::IfcStructuralSurfaceReaction Ifc4x3_add1::IfcStructuralSurfaceReact const ifcopenshell::entity& Ifc4x3_add1::IfcStyleModel::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[1119]); } -Ifc4x3_add1::IfcStyleModel Ifc4x3_add1::IfcStyleModel::initialize(::Ifc4x3_add1::IfcRepresentationContext v1_ContextOfItems, std::optional< std::string > v2_RepresentationIdentifier, std::optional< std::string > v3_RepresentationType, std::vector< ::Ifc4x3_add1::IfcRepresentationItem > v4_Items) { set_attribute_value(0, (v1_ContextOfItems)); if (v2_RepresentationIdentifier) {set_attribute_value(1, (*v2_RepresentationIdentifier)); } if (v3_RepresentationType) {set_attribute_value(2, (*v3_RepresentationType)); }set_attribute_value(3, cast_vector(v4_Items));; return *this; } +Ifc4x3_add1::IfcStyleModel Ifc4x3_add1::IfcStyleModel::initialize(::Ifc4x3_add1::IfcRepresentationContext v1_ContextOfItems, std::optional< std::string > v2_RepresentationIdentifier, std::optional< std::string > v3_RepresentationType, std::vector< ::Ifc4x3_add1::IfcRepresentationItem > v4_Items) { set_attribute_value(0, (v1_ContextOfItems)); if (v2_RepresentationIdentifier) {set_attribute_value(1, (*v2_RepresentationIdentifier)); } if (v3_RepresentationType) {set_attribute_value(2, (*v3_RepresentationType)); }set_attribute_value(3, cast_vector(v4_Items));; return *this; } // Function implementations for IfcStyledItem -::Ifc4x3_add1::IfcRepresentationItem Ifc4x3_add1::IfcStyledItem::Item() const { if(get_attribute_value(0).isNull()) { return ::Ifc4x3_add1::IfcRepresentationItem{}; } return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcRepresentationItem>(); } +::Ifc4x3_add1::IfcRepresentationItem Ifc4x3_add1::IfcStyledItem::Item() const { if(get_attribute_value(0).isNull()) { return ::Ifc4x3_add1::IfcRepresentationItem{}; } return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcRepresentationItem>(); } void Ifc4x3_add1::IfcStyledItem::setItem(const ::Ifc4x3_add1::IfcRepresentationItem& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } -std::vector< ::Ifc4x3_add1::IfcPresentationStyle > Ifc4x3_add1::IfcStyledItem::Styles() const { std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3_add1::IfcPresentationStyle>(es); } -void Ifc4x3_add1::IfcStyledItem::setStyles(const std::vector< ::Ifc4x3_add1::IfcPresentationStyle >& v) { set_attribute_value(1, cast_vector(v));if constexpr (false)unset_attribute_value(1); } +std::vector< ::Ifc4x3_add1::IfcPresentationStyle > Ifc4x3_add1::IfcStyledItem::Styles() const { std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3_add1::IfcPresentationStyle>(es); } +void Ifc4x3_add1::IfcStyledItem::setStyles(const std::vector< ::Ifc4x3_add1::IfcPresentationStyle >& v) { set_attribute_value(1, cast_vector(v));if constexpr (false)unset_attribute_value(1); } std::optional< std::string > Ifc4x3_add1::IfcStyledItem::Name() const { if(get_attribute_value(2).isNull()) { return std::nullopt; } std::string v = get_attribute_value(2); return v; } void Ifc4x3_add1::IfcStyledItem::setName(const std::optional< std::string >& v) { if (v) {set_attribute_value(2, *v);} else {unset_attribute_value(2);} } const ifcopenshell::entity& Ifc4x3_add1::IfcStyledItem::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[1117]); } -Ifc4x3_add1::IfcStyledItem Ifc4x3_add1::IfcStyledItem::initialize(::Ifc4x3_add1::IfcRepresentationItem v1_Item, std::vector< ::Ifc4x3_add1::IfcPresentationStyle > v2_Styles, std::optional< std::string > v3_Name) { set_attribute_value(0, (v1_Item));set_attribute_value(1, cast_vector(v2_Styles)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); }; return *this; } +Ifc4x3_add1::IfcStyledItem Ifc4x3_add1::IfcStyledItem::initialize(::Ifc4x3_add1::IfcRepresentationItem v1_Item, std::vector< ::Ifc4x3_add1::IfcPresentationStyle > v2_Styles, std::optional< std::string > v3_Name) { set_attribute_value(0, (v1_Item));set_attribute_value(1, cast_vector(v2_Styles)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); }; return *this; } // Function implementations for IfcStyledRepresentation const ifcopenshell::entity& Ifc4x3_add1::IfcStyledRepresentation::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[1118]); } -Ifc4x3_add1::IfcStyledRepresentation Ifc4x3_add1::IfcStyledRepresentation::initialize(::Ifc4x3_add1::IfcRepresentationContext v1_ContextOfItems, std::optional< std::string > v2_RepresentationIdentifier, std::optional< std::string > v3_RepresentationType, std::vector< ::Ifc4x3_add1::IfcRepresentationItem > v4_Items) { set_attribute_value(0, (v1_ContextOfItems)); if (v2_RepresentationIdentifier) {set_attribute_value(1, (*v2_RepresentationIdentifier)); } if (v3_RepresentationType) {set_attribute_value(2, (*v3_RepresentationType)); }set_attribute_value(3, cast_vector(v4_Items));; return *this; } +Ifc4x3_add1::IfcStyledRepresentation Ifc4x3_add1::IfcStyledRepresentation::initialize(::Ifc4x3_add1::IfcRepresentationContext v1_ContextOfItems, std::optional< std::string > v2_RepresentationIdentifier, std::optional< std::string > v3_RepresentationType, std::vector< ::Ifc4x3_add1::IfcRepresentationItem > v4_Items) { set_attribute_value(0, (v1_ContextOfItems)); if (v2_RepresentationIdentifier) {set_attribute_value(1, (*v2_RepresentationIdentifier)); } if (v3_RepresentationType) {set_attribute_value(2, (*v3_RepresentationType)); }set_attribute_value(3, cast_vector(v4_Items));; return *this; } // Function implementations for IfcSubContractResource std::optional< ::Ifc4x3_add1::IfcSubContractResourceTypeEnum::Value > Ifc4x3_add1::IfcSubContractResource::PredefinedType() const { if(get_attribute_value(10).isNull()) { return std::nullopt; } return ::Ifc4x3_add1::IfcSubContractResourceTypeEnum::FromString(get_attribute_value(10)); } @@ -15276,7 +15276,7 @@ void Ifc4x3_add1::IfcSubContractResource::setPredefinedType(const std::optional< const ifcopenshell::entity& Ifc4x3_add1::IfcSubContractResource::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[1120]); } -Ifc4x3_add1::IfcSubContractResource Ifc4x3_add1::IfcSubContractResource::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, std::optional< std::string > v6_Identification, std::optional< std::string > v7_LongDescription, ::Ifc4x3_add1::IfcResourceTime v8_Usage, std::optional< std::vector< ::Ifc4x3_add1::IfcAppliedValue > > v9_BaseCosts, ::Ifc4x3_add1::IfcPhysicalQuantity v10_BaseQuantity, std::optional< ::Ifc4x3_add1::IfcSubContractResourceTypeEnum::Value > v11_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); } if (v6_Identification) {set_attribute_value(5, (*v6_Identification)); } if (v7_LongDescription) {set_attribute_value(6, (*v7_LongDescription)); }set_attribute_value(7, (v8_Usage)); if (v9_BaseCosts) {set_attribute_value(8, cast_vector(*v9_BaseCosts)); }set_attribute_value(9, (v10_BaseQuantity)); if (v11_PredefinedType) {set_attribute_value(10, (enumeration_reference(&::Ifc4x3_add1::IfcSubContractResourceTypeEnum::Class(),(size_t)*v11_PredefinedType))); }; return *this; } +Ifc4x3_add1::IfcSubContractResource Ifc4x3_add1::IfcSubContractResource::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, std::optional< std::string > v6_Identification, std::optional< std::string > v7_LongDescription, ::Ifc4x3_add1::IfcResourceTime v8_Usage, std::optional< std::vector< ::Ifc4x3_add1::IfcAppliedValue > > v9_BaseCosts, ::Ifc4x3_add1::IfcPhysicalQuantity v10_BaseQuantity, std::optional< ::Ifc4x3_add1::IfcSubContractResourceTypeEnum::Value > v11_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); } if (v6_Identification) {set_attribute_value(5, (*v6_Identification)); } if (v7_LongDescription) {set_attribute_value(6, (*v7_LongDescription)); }set_attribute_value(7, (v8_Usage)); if (v9_BaseCosts) {set_attribute_value(8, cast_vector(*v9_BaseCosts)); }set_attribute_value(9, (v10_BaseQuantity)); if (v11_PredefinedType) {set_attribute_value(10, (enumeration_reference(&::Ifc4x3_add1::IfcSubContractResourceTypeEnum::Class(),(size_t)*v11_PredefinedType))); }; return *this; } // Function implementations for IfcSubContractResourceType ::Ifc4x3_add1::IfcSubContractResourceTypeEnum::Value Ifc4x3_add1::IfcSubContractResourceType::PredefinedType() const { return ::Ifc4x3_add1::IfcSubContractResourceTypeEnum::FromString(get_attribute_value(11)); } @@ -15284,10 +15284,10 @@ void Ifc4x3_add1::IfcSubContractResourceType::setPredefinedType(const ::Ifc4x3_a const ifcopenshell::entity& Ifc4x3_add1::IfcSubContractResourceType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[1121]); } -Ifc4x3_add1::IfcSubContractResourceType Ifc4x3_add1::IfcSubContractResourceType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::string > v7_Identification, std::optional< std::string > v8_LongDescription, std::optional< std::string > v9_ResourceType, std::optional< std::vector< ::Ifc4x3_add1::IfcAppliedValue > > v10_BaseCosts, ::Ifc4x3_add1::IfcPhysicalQuantity v11_BaseQuantity, ::Ifc4x3_add1::IfcSubContractResourceTypeEnum::Value v12_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_Identification) {set_attribute_value(6, (*v7_Identification)); } if (v8_LongDescription) {set_attribute_value(7, (*v8_LongDescription)); } if (v9_ResourceType) {set_attribute_value(8, (*v9_ResourceType)); } if (v10_BaseCosts) {set_attribute_value(9, cast_vector(*v10_BaseCosts)); }set_attribute_value(10, (v11_BaseQuantity));set_attribute_value(11, (enumeration_reference(&::Ifc4x3_add1::IfcSubContractResourceTypeEnum::Class(),(size_t)v12_PredefinedType)));; return *this; } +Ifc4x3_add1::IfcSubContractResourceType Ifc4x3_add1::IfcSubContractResourceType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::string > v7_Identification, std::optional< std::string > v8_LongDescription, std::optional< std::string > v9_ResourceType, std::optional< std::vector< ::Ifc4x3_add1::IfcAppliedValue > > v10_BaseCosts, ::Ifc4x3_add1::IfcPhysicalQuantity v11_BaseQuantity, ::Ifc4x3_add1::IfcSubContractResourceTypeEnum::Value v12_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_Identification) {set_attribute_value(6, (*v7_Identification)); } if (v8_LongDescription) {set_attribute_value(7, (*v8_LongDescription)); } if (v9_ResourceType) {set_attribute_value(8, (*v9_ResourceType)); } if (v10_BaseCosts) {set_attribute_value(9, cast_vector(*v10_BaseCosts)); }set_attribute_value(10, (v11_BaseQuantity));set_attribute_value(11, (enumeration_reference(&::Ifc4x3_add1::IfcSubContractResourceTypeEnum::Class(),(size_t)v12_PredefinedType)));; return *this; } // Function implementations for IfcSubedge -::Ifc4x3_add1::IfcEdge Ifc4x3_add1::IfcSubedge::ParentEdge() const { return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3_add1::IfcEdge>(); } +::Ifc4x3_add1::IfcEdge Ifc4x3_add1::IfcSubedge::ParentEdge() const { return ((express::base)(get_attribute_value(2))).as<::Ifc4x3_add1::IfcEdge>(); } void Ifc4x3_add1::IfcSubedge::setParentEdge(const ::Ifc4x3_add1::IfcEdge& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } @@ -15301,19 +15301,19 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcSurface::Class() { return *((ifcopen Ifc4x3_add1::IfcSurface Ifc4x3_add1::IfcSurface::initialize() { ; return *this; } // Function implementations for IfcSurfaceCurve -::Ifc4x3_add1::IfcCurve Ifc4x3_add1::IfcSurfaceCurve::Curve3D() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcCurve>(); } +::Ifc4x3_add1::IfcCurve Ifc4x3_add1::IfcSurfaceCurve::Curve3D() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcCurve>(); } void Ifc4x3_add1::IfcSurfaceCurve::setCurve3D(const ::Ifc4x3_add1::IfcCurve& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } -std::vector< ::Ifc4x3_add1::IfcPcurve > Ifc4x3_add1::IfcSurfaceCurve::AssociatedGeometry() const { std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3_add1::IfcPcurve>(es); } -void Ifc4x3_add1::IfcSurfaceCurve::setAssociatedGeometry(const std::vector< ::Ifc4x3_add1::IfcPcurve >& v) { set_attribute_value(1, cast_vector(v));if constexpr (false)unset_attribute_value(1); } +std::vector< ::Ifc4x3_add1::IfcPcurve > Ifc4x3_add1::IfcSurfaceCurve::AssociatedGeometry() const { std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3_add1::IfcPcurve>(es); } +void Ifc4x3_add1::IfcSurfaceCurve::setAssociatedGeometry(const std::vector< ::Ifc4x3_add1::IfcPcurve >& v) { set_attribute_value(1, cast_vector(v));if constexpr (false)unset_attribute_value(1); } ::Ifc4x3_add1::IfcPreferredSurfaceCurveRepresentation::Value Ifc4x3_add1::IfcSurfaceCurve::MasterRepresentation() const { return ::Ifc4x3_add1::IfcPreferredSurfaceCurveRepresentation::FromString(get_attribute_value(2)); } void Ifc4x3_add1::IfcSurfaceCurve::setMasterRepresentation(const ::Ifc4x3_add1::IfcPreferredSurfaceCurveRepresentation::Value& v) { set_attribute_value(2, enumeration_reference(&::Ifc4x3_add1::IfcPreferredSurfaceCurveRepresentation::Class(), (size_t) v));if constexpr (false)unset_attribute_value(2); } const ifcopenshell::entity& Ifc4x3_add1::IfcSurfaceCurve::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[1125]); } -Ifc4x3_add1::IfcSurfaceCurve Ifc4x3_add1::IfcSurfaceCurve::initialize(::Ifc4x3_add1::IfcCurve v1_Curve3D, std::vector< ::Ifc4x3_add1::IfcPcurve > v2_AssociatedGeometry, ::Ifc4x3_add1::IfcPreferredSurfaceCurveRepresentation::Value v3_MasterRepresentation) { set_attribute_value(0, (v1_Curve3D));set_attribute_value(1, cast_vector(v2_AssociatedGeometry));set_attribute_value(2, (enumeration_reference(&::Ifc4x3_add1::IfcPreferredSurfaceCurveRepresentation::Class(),(size_t)v3_MasterRepresentation)));; return *this; } +Ifc4x3_add1::IfcSurfaceCurve Ifc4x3_add1::IfcSurfaceCurve::initialize(::Ifc4x3_add1::IfcCurve v1_Curve3D, std::vector< ::Ifc4x3_add1::IfcPcurve > v2_AssociatedGeometry, ::Ifc4x3_add1::IfcPreferredSurfaceCurveRepresentation::Value v3_MasterRepresentation) { set_attribute_value(0, (v1_Curve3D));set_attribute_value(1, cast_vector(v2_AssociatedGeometry));set_attribute_value(2, (enumeration_reference(&::Ifc4x3_add1::IfcPreferredSurfaceCurveRepresentation::Class(),(size_t)v3_MasterRepresentation)));; return *this; } // Function implementations for IfcSurfaceCurveSweptAreaSolid -::Ifc4x3_add1::IfcSurface Ifc4x3_add1::IfcSurfaceCurveSweptAreaSolid::ReferenceSurface() const { return ((express::Base)(get_attribute_value(5))).as<::Ifc4x3_add1::IfcSurface>(); } +::Ifc4x3_add1::IfcSurface Ifc4x3_add1::IfcSurfaceCurveSweptAreaSolid::ReferenceSurface() const { return ((express::base)(get_attribute_value(5))).as<::Ifc4x3_add1::IfcSurface>(); } void Ifc4x3_add1::IfcSurfaceCurveSweptAreaSolid::setReferenceSurface(const ::Ifc4x3_add1::IfcSurface& v) { set_attribute_value(5, v);if constexpr (false)unset_attribute_value(5); } @@ -15330,7 +15330,7 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcSurfaceFeature::Class() { return *(( Ifc4x3_add1::IfcSurfaceFeature Ifc4x3_add1::IfcSurfaceFeature::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, ::Ifc4x3_add1::IfcObjectPlacement v6_ObjectPlacement, ::Ifc4x3_add1::IfcProductRepresentation v7_Representation, std::optional< std::string > v8_Tag, std::optional< ::Ifc4x3_add1::IfcSurfaceFeatureTypeEnum::Value > v9_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); }set_attribute_value(5, (v6_ObjectPlacement));set_attribute_value(6, (v7_Representation)); if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_PredefinedType) {set_attribute_value(8, (enumeration_reference(&::Ifc4x3_add1::IfcSurfaceFeatureTypeEnum::Class(),(size_t)*v9_PredefinedType))); }; return *this; } // Function implementations for IfcSurfaceOfLinearExtrusion -::Ifc4x3_add1::IfcDirection Ifc4x3_add1::IfcSurfaceOfLinearExtrusion::ExtrudedDirection() const { return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3_add1::IfcDirection>(); } +::Ifc4x3_add1::IfcDirection Ifc4x3_add1::IfcSurfaceOfLinearExtrusion::ExtrudedDirection() const { return ((express::base)(get_attribute_value(2))).as<::Ifc4x3_add1::IfcDirection>(); } void Ifc4x3_add1::IfcSurfaceOfLinearExtrusion::setExtrudedDirection(const ::Ifc4x3_add1::IfcDirection& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } double Ifc4x3_add1::IfcSurfaceOfLinearExtrusion::Depth() const { double v = get_attribute_value(3); return v; } void Ifc4x3_add1::IfcSurfaceOfLinearExtrusion::setDepth(const double& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } @@ -15340,7 +15340,7 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcSurfaceOfLinearExtrusion::Class() { Ifc4x3_add1::IfcSurfaceOfLinearExtrusion Ifc4x3_add1::IfcSurfaceOfLinearExtrusion::initialize(::Ifc4x3_add1::IfcProfileDef v1_SweptCurve, ::Ifc4x3_add1::IfcAxis2Placement3D v2_Position, ::Ifc4x3_add1::IfcDirection v3_ExtrudedDirection, double v4_Depth) { set_attribute_value(0, (v1_SweptCurve));set_attribute_value(1, (v2_Position));set_attribute_value(2, (v3_ExtrudedDirection));set_attribute_value(3, (v4_Depth));; return *this; } // Function implementations for IfcSurfaceOfRevolution -::Ifc4x3_add1::IfcAxis1Placement Ifc4x3_add1::IfcSurfaceOfRevolution::AxisPosition() const { return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3_add1::IfcAxis1Placement>(); } +::Ifc4x3_add1::IfcAxis1Placement Ifc4x3_add1::IfcSurfaceOfRevolution::AxisPosition() const { return ((express::base)(get_attribute_value(2))).as<::Ifc4x3_add1::IfcAxis1Placement>(); } void Ifc4x3_add1::IfcSurfaceOfRevolution::setAxisPosition(const ::Ifc4x3_add1::IfcAxis1Placement& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } @@ -15362,21 +15362,21 @@ Ifc4x3_add1::IfcSurfaceReinforcementArea Ifc4x3_add1::IfcSurfaceReinforcementAre // Function implementations for IfcSurfaceStyle ::Ifc4x3_add1::IfcSurfaceSide::Value Ifc4x3_add1::IfcSurfaceStyle::Side() const { return ::Ifc4x3_add1::IfcSurfaceSide::FromString(get_attribute_value(1)); } void Ifc4x3_add1::IfcSurfaceStyle::setSide(const ::Ifc4x3_add1::IfcSurfaceSide::Value& v) { set_attribute_value(1, enumeration_reference(&::Ifc4x3_add1::IfcSurfaceSide::Class(), (size_t) v));if constexpr (false)unset_attribute_value(1); } -std::vector< ::Ifc4x3_add1::IfcSurfaceStyleElementSelect > Ifc4x3_add1::IfcSurfaceStyle::Styles() const { std::vector es = get_attribute_value(2); return cast_vector<::Ifc4x3_add1::IfcSurfaceStyleElementSelect>(es); } -void Ifc4x3_add1::IfcSurfaceStyle::setStyles(const std::vector< ::Ifc4x3_add1::IfcSurfaceStyleElementSelect >& v) { set_attribute_value(2, cast_vector(v));if constexpr (false)unset_attribute_value(2); } +std::vector< ::Ifc4x3_add1::IfcSurfaceStyleElementSelect > Ifc4x3_add1::IfcSurfaceStyle::Styles() const { std::vector es = get_attribute_value(2); return cast_vector<::Ifc4x3_add1::IfcSurfaceStyleElementSelect>(es); } +void Ifc4x3_add1::IfcSurfaceStyle::setStyles(const std::vector< ::Ifc4x3_add1::IfcSurfaceStyleElementSelect >& v) { set_attribute_value(2, cast_vector(v));if constexpr (false)unset_attribute_value(2); } const ifcopenshell::entity& Ifc4x3_add1::IfcSurfaceStyle::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[1134]); } -Ifc4x3_add1::IfcSurfaceStyle Ifc4x3_add1::IfcSurfaceStyle::initialize(std::optional< std::string > v1_Name, ::Ifc4x3_add1::IfcSurfaceSide::Value v2_Side, std::vector< ::Ifc4x3_add1::IfcSurfaceStyleElementSelect > v3_Styles) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); }set_attribute_value(1, (enumeration_reference(&::Ifc4x3_add1::IfcSurfaceSide::Class(),(size_t)v2_Side)));set_attribute_value(2, cast_vector(v3_Styles));; return *this; } +Ifc4x3_add1::IfcSurfaceStyle Ifc4x3_add1::IfcSurfaceStyle::initialize(std::optional< std::string > v1_Name, ::Ifc4x3_add1::IfcSurfaceSide::Value v2_Side, std::vector< ::Ifc4x3_add1::IfcSurfaceStyleElementSelect > v3_Styles) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); }set_attribute_value(1, (enumeration_reference(&::Ifc4x3_add1::IfcSurfaceSide::Class(),(size_t)v2_Side)));set_attribute_value(2, cast_vector(v3_Styles));; return *this; } // Function implementations for IfcSurfaceStyleLighting -::Ifc4x3_add1::IfcColourRgb Ifc4x3_add1::IfcSurfaceStyleLighting::DiffuseTransmissionColour() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcColourRgb>(); } +::Ifc4x3_add1::IfcColourRgb Ifc4x3_add1::IfcSurfaceStyleLighting::DiffuseTransmissionColour() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcColourRgb>(); } void Ifc4x3_add1::IfcSurfaceStyleLighting::setDiffuseTransmissionColour(const ::Ifc4x3_add1::IfcColourRgb& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } -::Ifc4x3_add1::IfcColourRgb Ifc4x3_add1::IfcSurfaceStyleLighting::DiffuseReflectionColour() const { return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3_add1::IfcColourRgb>(); } +::Ifc4x3_add1::IfcColourRgb Ifc4x3_add1::IfcSurfaceStyleLighting::DiffuseReflectionColour() const { return ((express::base)(get_attribute_value(1))).as<::Ifc4x3_add1::IfcColourRgb>(); } void Ifc4x3_add1::IfcSurfaceStyleLighting::setDiffuseReflectionColour(const ::Ifc4x3_add1::IfcColourRgb& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } -::Ifc4x3_add1::IfcColourRgb Ifc4x3_add1::IfcSurfaceStyleLighting::TransmissionColour() const { return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3_add1::IfcColourRgb>(); } +::Ifc4x3_add1::IfcColourRgb Ifc4x3_add1::IfcSurfaceStyleLighting::TransmissionColour() const { return ((express::base)(get_attribute_value(2))).as<::Ifc4x3_add1::IfcColourRgb>(); } void Ifc4x3_add1::IfcSurfaceStyleLighting::setTransmissionColour(const ::Ifc4x3_add1::IfcColourRgb& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } -::Ifc4x3_add1::IfcColourRgb Ifc4x3_add1::IfcSurfaceStyleLighting::ReflectanceColour() const { return ((express::Base)(get_attribute_value(3))).as<::Ifc4x3_add1::IfcColourRgb>(); } +::Ifc4x3_add1::IfcColourRgb Ifc4x3_add1::IfcSurfaceStyleLighting::ReflectanceColour() const { return ((express::base)(get_attribute_value(3))).as<::Ifc4x3_add1::IfcColourRgb>(); } void Ifc4x3_add1::IfcSurfaceStyleLighting::setReflectanceColour(const ::Ifc4x3_add1::IfcColourRgb& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } @@ -15394,17 +15394,17 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcSurfaceStyleRefraction::Class() { re Ifc4x3_add1::IfcSurfaceStyleRefraction Ifc4x3_add1::IfcSurfaceStyleRefraction::initialize(std::optional< double > v1_RefractionIndex, std::optional< double > v2_DispersionFactor) { if (v1_RefractionIndex) {set_attribute_value(0, (*v1_RefractionIndex)); } if (v2_DispersionFactor) {set_attribute_value(1, (*v2_DispersionFactor)); }; return *this; } // Function implementations for IfcSurfaceStyleRendering -::Ifc4x3_add1::IfcColourOrFactor Ifc4x3_add1::IfcSurfaceStyleRendering::DiffuseColour() const { if(get_attribute_value(2).isNull()) { return ::Ifc4x3_add1::IfcColourOrFactor{}; } return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3_add1::IfcColourOrFactor>(); } +::Ifc4x3_add1::IfcColourOrFactor Ifc4x3_add1::IfcSurfaceStyleRendering::DiffuseColour() const { if(get_attribute_value(2).isNull()) { return ::Ifc4x3_add1::IfcColourOrFactor{}; } return ((express::base)(get_attribute_value(2))).as<::Ifc4x3_add1::IfcColourOrFactor>(); } void Ifc4x3_add1::IfcSurfaceStyleRendering::setDiffuseColour(const ::Ifc4x3_add1::IfcColourOrFactor& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } -::Ifc4x3_add1::IfcColourOrFactor Ifc4x3_add1::IfcSurfaceStyleRendering::TransmissionColour() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3_add1::IfcColourOrFactor{}; } return ((express::Base)(get_attribute_value(3))).as<::Ifc4x3_add1::IfcColourOrFactor>(); } +::Ifc4x3_add1::IfcColourOrFactor Ifc4x3_add1::IfcSurfaceStyleRendering::TransmissionColour() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3_add1::IfcColourOrFactor{}; } return ((express::base)(get_attribute_value(3))).as<::Ifc4x3_add1::IfcColourOrFactor>(); } void Ifc4x3_add1::IfcSurfaceStyleRendering::setTransmissionColour(const ::Ifc4x3_add1::IfcColourOrFactor& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } -::Ifc4x3_add1::IfcColourOrFactor Ifc4x3_add1::IfcSurfaceStyleRendering::DiffuseTransmissionColour() const { if(get_attribute_value(4).isNull()) { return ::Ifc4x3_add1::IfcColourOrFactor{}; } return ((express::Base)(get_attribute_value(4))).as<::Ifc4x3_add1::IfcColourOrFactor>(); } +::Ifc4x3_add1::IfcColourOrFactor Ifc4x3_add1::IfcSurfaceStyleRendering::DiffuseTransmissionColour() const { if(get_attribute_value(4).isNull()) { return ::Ifc4x3_add1::IfcColourOrFactor{}; } return ((express::base)(get_attribute_value(4))).as<::Ifc4x3_add1::IfcColourOrFactor>(); } void Ifc4x3_add1::IfcSurfaceStyleRendering::setDiffuseTransmissionColour(const ::Ifc4x3_add1::IfcColourOrFactor& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } -::Ifc4x3_add1::IfcColourOrFactor Ifc4x3_add1::IfcSurfaceStyleRendering::ReflectionColour() const { if(get_attribute_value(5).isNull()) { return ::Ifc4x3_add1::IfcColourOrFactor{}; } return ((express::Base)(get_attribute_value(5))).as<::Ifc4x3_add1::IfcColourOrFactor>(); } +::Ifc4x3_add1::IfcColourOrFactor Ifc4x3_add1::IfcSurfaceStyleRendering::ReflectionColour() const { if(get_attribute_value(5).isNull()) { return ::Ifc4x3_add1::IfcColourOrFactor{}; } return ((express::base)(get_attribute_value(5))).as<::Ifc4x3_add1::IfcColourOrFactor>(); } void Ifc4x3_add1::IfcSurfaceStyleRendering::setReflectionColour(const ::Ifc4x3_add1::IfcColourOrFactor& v) { set_attribute_value(5, v);if constexpr (false)unset_attribute_value(5); } -::Ifc4x3_add1::IfcColourOrFactor Ifc4x3_add1::IfcSurfaceStyleRendering::SpecularColour() const { if(get_attribute_value(6).isNull()) { return ::Ifc4x3_add1::IfcColourOrFactor{}; } return ((express::Base)(get_attribute_value(6))).as<::Ifc4x3_add1::IfcColourOrFactor>(); } +::Ifc4x3_add1::IfcColourOrFactor Ifc4x3_add1::IfcSurfaceStyleRendering::SpecularColour() const { if(get_attribute_value(6).isNull()) { return ::Ifc4x3_add1::IfcColourOrFactor{}; } return ((express::base)(get_attribute_value(6))).as<::Ifc4x3_add1::IfcColourOrFactor>(); } void Ifc4x3_add1::IfcSurfaceStyleRendering::setSpecularColour(const ::Ifc4x3_add1::IfcColourOrFactor& v) { set_attribute_value(6, v);if constexpr (false)unset_attribute_value(6); } -::Ifc4x3_add1::IfcSpecularHighlightSelect Ifc4x3_add1::IfcSurfaceStyleRendering::SpecularHighlight() const { if(get_attribute_value(7).isNull()) { return ::Ifc4x3_add1::IfcSpecularHighlightSelect{}; } return ((express::Base)(get_attribute_value(7))).as<::Ifc4x3_add1::IfcSpecularHighlightSelect>(); } +::Ifc4x3_add1::IfcSpecularHighlightSelect Ifc4x3_add1::IfcSurfaceStyleRendering::SpecularHighlight() const { if(get_attribute_value(7).isNull()) { return ::Ifc4x3_add1::IfcSpecularHighlightSelect{}; } return ((express::base)(get_attribute_value(7))).as<::Ifc4x3_add1::IfcSpecularHighlightSelect>(); } void Ifc4x3_add1::IfcSurfaceStyleRendering::setSpecularHighlight(const ::Ifc4x3_add1::IfcSpecularHighlightSelect& v) { set_attribute_value(7, v);if constexpr (false)unset_attribute_value(7); } ::Ifc4x3_add1::IfcReflectanceMethodEnum::Value Ifc4x3_add1::IfcSurfaceStyleRendering::ReflectanceMethod() const { return ::Ifc4x3_add1::IfcReflectanceMethodEnum::FromString(get_attribute_value(8)); } void Ifc4x3_add1::IfcSurfaceStyleRendering::setReflectanceMethod(const ::Ifc4x3_add1::IfcReflectanceMethodEnum::Value& v) { set_attribute_value(8, enumeration_reference(&::Ifc4x3_add1::IfcReflectanceMethodEnum::Class(), (size_t) v));if constexpr (false)unset_attribute_value(8); } @@ -15414,7 +15414,7 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcSurfaceStyleRendering::Class() { ret Ifc4x3_add1::IfcSurfaceStyleRendering Ifc4x3_add1::IfcSurfaceStyleRendering::initialize(::Ifc4x3_add1::IfcColourRgb v1_SurfaceColour, std::optional< double > v2_Transparency, ::Ifc4x3_add1::IfcColourOrFactor v3_DiffuseColour, ::Ifc4x3_add1::IfcColourOrFactor v4_TransmissionColour, ::Ifc4x3_add1::IfcColourOrFactor v5_DiffuseTransmissionColour, ::Ifc4x3_add1::IfcColourOrFactor v6_ReflectionColour, ::Ifc4x3_add1::IfcColourOrFactor v7_SpecularColour, ::Ifc4x3_add1::IfcSpecularHighlightSelect v8_SpecularHighlight, ::Ifc4x3_add1::IfcReflectanceMethodEnum::Value v9_ReflectanceMethod) { set_attribute_value(0, (v1_SurfaceColour)); if (v2_Transparency) {set_attribute_value(1, (*v2_Transparency)); }set_attribute_value(2, (v3_DiffuseColour));set_attribute_value(3, (v4_TransmissionColour));set_attribute_value(4, (v5_DiffuseTransmissionColour));set_attribute_value(5, (v6_ReflectionColour));set_attribute_value(6, (v7_SpecularColour));set_attribute_value(7, (v8_SpecularHighlight));set_attribute_value(8, (enumeration_reference(&::Ifc4x3_add1::IfcReflectanceMethodEnum::Class(),(size_t)v9_ReflectanceMethod)));; return *this; } // Function implementations for IfcSurfaceStyleShading -::Ifc4x3_add1::IfcColourRgb Ifc4x3_add1::IfcSurfaceStyleShading::SurfaceColour() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcColourRgb>(); } +::Ifc4x3_add1::IfcColourRgb Ifc4x3_add1::IfcSurfaceStyleShading::SurfaceColour() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcColourRgb>(); } void Ifc4x3_add1::IfcSurfaceStyleShading::setSurfaceColour(const ::Ifc4x3_add1::IfcColourRgb& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } std::optional< double > Ifc4x3_add1::IfcSurfaceStyleShading::Transparency() const { if(get_attribute_value(1).isNull()) { return std::nullopt; } double v = get_attribute_value(1); return v; } void Ifc4x3_add1::IfcSurfaceStyleShading::setTransparency(const std::optional< double >& v) { if (v) {set_attribute_value(1, *v);} else {unset_attribute_value(1);} } @@ -15424,12 +15424,12 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcSurfaceStyleShading::Class() { retur Ifc4x3_add1::IfcSurfaceStyleShading Ifc4x3_add1::IfcSurfaceStyleShading::initialize(::Ifc4x3_add1::IfcColourRgb v1_SurfaceColour, std::optional< double > v2_Transparency) { set_attribute_value(0, (v1_SurfaceColour)); if (v2_Transparency) {set_attribute_value(1, (*v2_Transparency)); }; return *this; } // Function implementations for IfcSurfaceStyleWithTextures -std::vector< ::Ifc4x3_add1::IfcSurfaceTexture > Ifc4x3_add1::IfcSurfaceStyleWithTextures::Textures() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3_add1::IfcSurfaceTexture>(es); } -void Ifc4x3_add1::IfcSurfaceStyleWithTextures::setTextures(const std::vector< ::Ifc4x3_add1::IfcSurfaceTexture >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } +std::vector< ::Ifc4x3_add1::IfcSurfaceTexture > Ifc4x3_add1::IfcSurfaceStyleWithTextures::Textures() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3_add1::IfcSurfaceTexture>(es); } +void Ifc4x3_add1::IfcSurfaceStyleWithTextures::setTextures(const std::vector< ::Ifc4x3_add1::IfcSurfaceTexture >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } const ifcopenshell::entity& Ifc4x3_add1::IfcSurfaceStyleWithTextures::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[1140]); } -Ifc4x3_add1::IfcSurfaceStyleWithTextures Ifc4x3_add1::IfcSurfaceStyleWithTextures::initialize(std::vector< ::Ifc4x3_add1::IfcSurfaceTexture > v1_Textures) { set_attribute_value(0, cast_vector(v1_Textures));; return *this; } +Ifc4x3_add1::IfcSurfaceStyleWithTextures Ifc4x3_add1::IfcSurfaceStyleWithTextures::initialize(std::vector< ::Ifc4x3_add1::IfcSurfaceTexture > v1_Textures) { set_attribute_value(0, cast_vector(v1_Textures));; return *this; } // Function implementations for IfcSurfaceTexture bool Ifc4x3_add1::IfcSurfaceTexture::RepeatS() const { bool v = get_attribute_value(0); return v; } @@ -15438,7 +15438,7 @@ bool Ifc4x3_add1::IfcSurfaceTexture::RepeatT() const { bool v = get_attribute_v void Ifc4x3_add1::IfcSurfaceTexture::setRepeatT(const bool& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } std::optional< std::string > Ifc4x3_add1::IfcSurfaceTexture::Mode() const { if(get_attribute_value(2).isNull()) { return std::nullopt; } std::string v = get_attribute_value(2); return v; } void Ifc4x3_add1::IfcSurfaceTexture::setMode(const std::optional< std::string >& v) { if (v) {set_attribute_value(2, *v);} else {unset_attribute_value(2);} } -::Ifc4x3_add1::IfcCartesianTransformationOperator2D Ifc4x3_add1::IfcSurfaceTexture::TextureTransform() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3_add1::IfcCartesianTransformationOperator2D{}; } return ((express::Base)(get_attribute_value(3))).as<::Ifc4x3_add1::IfcCartesianTransformationOperator2D>(); } +::Ifc4x3_add1::IfcCartesianTransformationOperator2D Ifc4x3_add1::IfcSurfaceTexture::TextureTransform() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3_add1::IfcCartesianTransformationOperator2D{}; } return ((express::base)(get_attribute_value(3))).as<::Ifc4x3_add1::IfcCartesianTransformationOperator2D>(); } void Ifc4x3_add1::IfcSurfaceTexture::setTextureTransform(const ::Ifc4x3_add1::IfcCartesianTransformationOperator2D& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } std::optional< std::vector< std::string > /*[1:?]*/ > Ifc4x3_add1::IfcSurfaceTexture::Parameter() const { if(get_attribute_value(4).isNull()) { return std::nullopt; } std::vector< std::string > /*[1:?]*/ v = get_attribute_value(4); return v; } void Ifc4x3_add1::IfcSurfaceTexture::setParameter(const std::optional< std::vector< std::string > /*[1:?]*/ >& v) { if (v) {set_attribute_value(4, *v);} else {unset_attribute_value(4);} } @@ -15450,9 +15450,9 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcSurfaceTexture::Class() { return *(( Ifc4x3_add1::IfcSurfaceTexture Ifc4x3_add1::IfcSurfaceTexture::initialize(bool v1_RepeatS, bool v2_RepeatT, std::optional< std::string > v3_Mode, ::Ifc4x3_add1::IfcCartesianTransformationOperator2D v4_TextureTransform, std::optional< std::vector< std::string > /*[1:?]*/ > v5_Parameter) { set_attribute_value(0, (v1_RepeatS));set_attribute_value(1, (v2_RepeatT)); if (v3_Mode) {set_attribute_value(2, (*v3_Mode)); }set_attribute_value(3, (v4_TextureTransform)); if (v5_Parameter) {set_attribute_value(4, (*v5_Parameter)); }; return *this; } // Function implementations for IfcSweptAreaSolid -::Ifc4x3_add1::IfcProfileDef Ifc4x3_add1::IfcSweptAreaSolid::SweptArea() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcProfileDef>(); } +::Ifc4x3_add1::IfcProfileDef Ifc4x3_add1::IfcSweptAreaSolid::SweptArea() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcProfileDef>(); } void Ifc4x3_add1::IfcSweptAreaSolid::setSweptArea(const ::Ifc4x3_add1::IfcProfileDef& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } -::Ifc4x3_add1::IfcAxis2Placement3D Ifc4x3_add1::IfcSweptAreaSolid::Position() const { if(get_attribute_value(1).isNull()) { return ::Ifc4x3_add1::IfcAxis2Placement3D{}; } return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3_add1::IfcAxis2Placement3D>(); } +::Ifc4x3_add1::IfcAxis2Placement3D Ifc4x3_add1::IfcSweptAreaSolid::Position() const { if(get_attribute_value(1).isNull()) { return ::Ifc4x3_add1::IfcAxis2Placement3D{}; } return ((express::base)(get_attribute_value(1))).as<::Ifc4x3_add1::IfcAxis2Placement3D>(); } void Ifc4x3_add1::IfcSweptAreaSolid::setPosition(const ::Ifc4x3_add1::IfcAxis2Placement3D& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } @@ -15460,7 +15460,7 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcSweptAreaSolid::Class() { return *(( Ifc4x3_add1::IfcSweptAreaSolid Ifc4x3_add1::IfcSweptAreaSolid::initialize(::Ifc4x3_add1::IfcProfileDef v1_SweptArea, ::Ifc4x3_add1::IfcAxis2Placement3D v2_Position) { set_attribute_value(0, (v1_SweptArea));set_attribute_value(1, (v2_Position));; return *this; } // Function implementations for IfcSweptDiskSolid -::Ifc4x3_add1::IfcCurve Ifc4x3_add1::IfcSweptDiskSolid::Directrix() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcCurve>(); } +::Ifc4x3_add1::IfcCurve Ifc4x3_add1::IfcSweptDiskSolid::Directrix() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcCurve>(); } void Ifc4x3_add1::IfcSweptDiskSolid::setDirectrix(const ::Ifc4x3_add1::IfcCurve& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } double Ifc4x3_add1::IfcSweptDiskSolid::Radius() const { double v = get_attribute_value(1); return v; } void Ifc4x3_add1::IfcSweptDiskSolid::setRadius(const double& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } @@ -15484,9 +15484,9 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcSweptDiskSolidPolygonal::Class() { r Ifc4x3_add1::IfcSweptDiskSolidPolygonal Ifc4x3_add1::IfcSweptDiskSolidPolygonal::initialize(::Ifc4x3_add1::IfcCurve v1_Directrix, double v2_Radius, std::optional< double > v3_InnerRadius, std::optional< double > v4_StartParam, std::optional< double > v5_EndParam, std::optional< double > v6_FilletRadius) { set_attribute_value(0, (v1_Directrix));set_attribute_value(1, (v2_Radius)); if (v3_InnerRadius) {set_attribute_value(2, (*v3_InnerRadius)); } if (v4_StartParam) {set_attribute_value(3, (*v4_StartParam)); } if (v5_EndParam) {set_attribute_value(4, (*v5_EndParam)); } if (v6_FilletRadius) {set_attribute_value(5, (*v6_FilletRadius)); }; return *this; } // Function implementations for IfcSweptSurface -::Ifc4x3_add1::IfcProfileDef Ifc4x3_add1::IfcSweptSurface::SweptCurve() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcProfileDef>(); } +::Ifc4x3_add1::IfcProfileDef Ifc4x3_add1::IfcSweptSurface::SweptCurve() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcProfileDef>(); } void Ifc4x3_add1::IfcSweptSurface::setSweptCurve(const ::Ifc4x3_add1::IfcProfileDef& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } -::Ifc4x3_add1::IfcAxis2Placement3D Ifc4x3_add1::IfcSweptSurface::Position() const { if(get_attribute_value(1).isNull()) { return ::Ifc4x3_add1::IfcAxis2Placement3D{}; } return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3_add1::IfcAxis2Placement3D>(); } +::Ifc4x3_add1::IfcAxis2Placement3D Ifc4x3_add1::IfcSweptSurface::Position() const { if(get_attribute_value(1).isNull()) { return ::Ifc4x3_add1::IfcAxis2Placement3D{}; } return ((express::base)(get_attribute_value(1))).as<::Ifc4x3_add1::IfcAxis2Placement3D>(); } void Ifc4x3_add1::IfcSweptSurface::setPosition(const ::Ifc4x3_add1::IfcAxis2Placement3D& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } @@ -15507,7 +15507,7 @@ void Ifc4x3_add1::IfcSwitchingDeviceType::setPredefinedType(const ::Ifc4x3_add1: const ifcopenshell::entity& Ifc4x3_add1::IfcSwitchingDeviceType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[1147]); } -Ifc4x3_add1::IfcSwitchingDeviceType Ifc4x3_add1::IfcSwitchingDeviceType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcSwitchingDeviceTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcSwitchingDeviceTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_add1::IfcSwitchingDeviceType Ifc4x3_add1::IfcSwitchingDeviceType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcSwitchingDeviceTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcSwitchingDeviceTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcSystem @@ -15531,7 +15531,7 @@ void Ifc4x3_add1::IfcSystemFurnitureElementType::setPredefinedType(const std::op const ifcopenshell::entity& Ifc4x3_add1::IfcSystemFurnitureElementType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[1151]); } -Ifc4x3_add1::IfcSystemFurnitureElementType Ifc4x3_add1::IfcSystemFurnitureElementType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, std::optional< ::Ifc4x3_add1::IfcSystemFurnitureElementTypeEnum::Value > v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); } if (v10_PredefinedType) {set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcSystemFurnitureElementTypeEnum::Class(),(size_t)*v10_PredefinedType))); }; return *this; } +Ifc4x3_add1::IfcSystemFurnitureElementType Ifc4x3_add1::IfcSystemFurnitureElementType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, std::optional< ::Ifc4x3_add1::IfcSystemFurnitureElementTypeEnum::Value > v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); } if (v10_PredefinedType) {set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcSystemFurnitureElementTypeEnum::Class(),(size_t)*v10_PredefinedType))); }; return *this; } // Function implementations for IfcTShapeProfileDef double Ifc4x3_add1::IfcTShapeProfileDef::Depth() const { double v = get_attribute_value(3); return v; } @@ -15560,14 +15560,14 @@ Ifc4x3_add1::IfcTShapeProfileDef Ifc4x3_add1::IfcTShapeProfileDef::initialize(:: // Function implementations for IfcTable std::optional< std::string > Ifc4x3_add1::IfcTable::Name() const { if(get_attribute_value(0).isNull()) { return std::nullopt; } std::string v = get_attribute_value(0); return v; } void Ifc4x3_add1::IfcTable::setName(const std::optional< std::string >& v) { if (v) {set_attribute_value(0, *v);} else {unset_attribute_value(0);} } -std::optional< std::vector< ::Ifc4x3_add1::IfcTableRow > > Ifc4x3_add1::IfcTable::Rows() const { if(get_attribute_value(1).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3_add1::IfcTableRow>(es); } -void Ifc4x3_add1::IfcTable::setRows(const std::optional< std::vector< ::Ifc4x3_add1::IfcTableRow > >& v) { if (v) {set_attribute_value(1, cast_vector(*v));} else {unset_attribute_value(1);} } -std::optional< std::vector< ::Ifc4x3_add1::IfcTableColumn > > Ifc4x3_add1::IfcTable::Columns() const { if(get_attribute_value(2).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(2); return cast_vector<::Ifc4x3_add1::IfcTableColumn>(es); } -void Ifc4x3_add1::IfcTable::setColumns(const std::optional< std::vector< ::Ifc4x3_add1::IfcTableColumn > >& v) { if (v) {set_attribute_value(2, cast_vector(*v));} else {unset_attribute_value(2);} } +std::optional< std::vector< ::Ifc4x3_add1::IfcTableRow > > Ifc4x3_add1::IfcTable::Rows() const { if(get_attribute_value(1).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3_add1::IfcTableRow>(es); } +void Ifc4x3_add1::IfcTable::setRows(const std::optional< std::vector< ::Ifc4x3_add1::IfcTableRow > >& v) { if (v) {set_attribute_value(1, cast_vector(*v));} else {unset_attribute_value(1);} } +std::optional< std::vector< ::Ifc4x3_add1::IfcTableColumn > > Ifc4x3_add1::IfcTable::Columns() const { if(get_attribute_value(2).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(2); return cast_vector<::Ifc4x3_add1::IfcTableColumn>(es); } +void Ifc4x3_add1::IfcTable::setColumns(const std::optional< std::vector< ::Ifc4x3_add1::IfcTableColumn > >& v) { if (v) {set_attribute_value(2, cast_vector(*v));} else {unset_attribute_value(2);} } const ifcopenshell::entity& Ifc4x3_add1::IfcTable::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[1153]); } -Ifc4x3_add1::IfcTable Ifc4x3_add1::IfcTable::initialize(std::optional< std::string > v1_Name, std::optional< std::vector< ::Ifc4x3_add1::IfcTableRow > > v2_Rows, std::optional< std::vector< ::Ifc4x3_add1::IfcTableColumn > > v3_Columns) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); } if (v2_Rows) {set_attribute_value(1, cast_vector(*v2_Rows)); } if (v3_Columns) {set_attribute_value(2, cast_vector(*v3_Columns)); }; return *this; } +Ifc4x3_add1::IfcTable Ifc4x3_add1::IfcTable::initialize(std::optional< std::string > v1_Name, std::optional< std::vector< ::Ifc4x3_add1::IfcTableRow > > v2_Rows, std::optional< std::vector< ::Ifc4x3_add1::IfcTableColumn > > v3_Columns) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); } if (v2_Rows) {set_attribute_value(1, cast_vector(*v2_Rows)); } if (v3_Columns) {set_attribute_value(2, cast_vector(*v3_Columns)); }; return *this; } // Function implementations for IfcTableColumn std::optional< std::string > Ifc4x3_add1::IfcTableColumn::Identifier() const { if(get_attribute_value(0).isNull()) { return std::nullopt; } std::string v = get_attribute_value(0); return v; } @@ -15576,9 +15576,9 @@ std::optional< std::string > Ifc4x3_add1::IfcTableColumn::Name() const { if(get_ void Ifc4x3_add1::IfcTableColumn::setName(const std::optional< std::string >& v) { if (v) {set_attribute_value(1, *v);} else {unset_attribute_value(1);} } std::optional< std::string > Ifc4x3_add1::IfcTableColumn::Description() const { if(get_attribute_value(2).isNull()) { return std::nullopt; } std::string v = get_attribute_value(2); return v; } void Ifc4x3_add1::IfcTableColumn::setDescription(const std::optional< std::string >& v) { if (v) {set_attribute_value(2, *v);} else {unset_attribute_value(2);} } -::Ifc4x3_add1::IfcUnit Ifc4x3_add1::IfcTableColumn::Unit() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3_add1::IfcUnit{}; } return ((express::Base)(get_attribute_value(3))).as<::Ifc4x3_add1::IfcUnit>(); } +::Ifc4x3_add1::IfcUnit Ifc4x3_add1::IfcTableColumn::Unit() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3_add1::IfcUnit{}; } return ((express::base)(get_attribute_value(3))).as<::Ifc4x3_add1::IfcUnit>(); } void Ifc4x3_add1::IfcTableColumn::setUnit(const ::Ifc4x3_add1::IfcUnit& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } -::Ifc4x3_add1::IfcReference Ifc4x3_add1::IfcTableColumn::ReferencePath() const { if(get_attribute_value(4).isNull()) { return ::Ifc4x3_add1::IfcReference{}; } return ((express::Base)(get_attribute_value(4))).as<::Ifc4x3_add1::IfcReference>(); } +::Ifc4x3_add1::IfcReference Ifc4x3_add1::IfcTableColumn::ReferencePath() const { if(get_attribute_value(4).isNull()) { return ::Ifc4x3_add1::IfcReference{}; } return ((express::base)(get_attribute_value(4))).as<::Ifc4x3_add1::IfcReference>(); } void Ifc4x3_add1::IfcTableColumn::setReferencePath(const ::Ifc4x3_add1::IfcReference& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } @@ -15586,14 +15586,14 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcTableColumn::Class() { return *((ifc Ifc4x3_add1::IfcTableColumn Ifc4x3_add1::IfcTableColumn::initialize(std::optional< std::string > v1_Identifier, std::optional< std::string > v2_Name, std::optional< std::string > v3_Description, ::Ifc4x3_add1::IfcUnit v4_Unit, ::Ifc4x3_add1::IfcReference v5_ReferencePath) { if (v1_Identifier) {set_attribute_value(0, (*v1_Identifier)); } if (v2_Name) {set_attribute_value(1, (*v2_Name)); } if (v3_Description) {set_attribute_value(2, (*v3_Description)); }set_attribute_value(3, (v4_Unit));set_attribute_value(4, (v5_ReferencePath));; return *this; } // Function implementations for IfcTableRow -std::optional< std::vector< ::Ifc4x3_add1::IfcValue > > Ifc4x3_add1::IfcTableRow::RowCells() const { if(get_attribute_value(0).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3_add1::IfcValue>(es); } -void Ifc4x3_add1::IfcTableRow::setRowCells(const std::optional< std::vector< ::Ifc4x3_add1::IfcValue > >& v) { if (v) {set_attribute_value(0, cast_vector(*v));} else {unset_attribute_value(0);} } +std::optional< std::vector< ::Ifc4x3_add1::IfcValue > > Ifc4x3_add1::IfcTableRow::RowCells() const { if(get_attribute_value(0).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3_add1::IfcValue>(es); } +void Ifc4x3_add1::IfcTableRow::setRowCells(const std::optional< std::vector< ::Ifc4x3_add1::IfcValue > >& v) { if (v) {set_attribute_value(0, cast_vector(*v));} else {unset_attribute_value(0);} } std::optional< bool > Ifc4x3_add1::IfcTableRow::IsHeading() const { if(get_attribute_value(1).isNull()) { return std::nullopt; } bool v = get_attribute_value(1); return v; } void Ifc4x3_add1::IfcTableRow::setIsHeading(const std::optional< bool >& v) { if (v) {set_attribute_value(1, *v);} else {unset_attribute_value(1);} } const ifcopenshell::entity& Ifc4x3_add1::IfcTableRow::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[1155]); } -Ifc4x3_add1::IfcTableRow Ifc4x3_add1::IfcTableRow::initialize(std::optional< std::vector< ::Ifc4x3_add1::IfcValue > > v1_RowCells, std::optional< bool > v2_IsHeading) { if (v1_RowCells) {set_attribute_value(0, cast_vector(*v1_RowCells)); } if (v2_IsHeading) {set_attribute_value(1, (*v2_IsHeading)); }; return *this; } +Ifc4x3_add1::IfcTableRow Ifc4x3_add1::IfcTableRow::initialize(std::optional< std::vector< ::Ifc4x3_add1::IfcValue > > v1_RowCells, std::optional< bool > v2_IsHeading) { if (v1_RowCells) {set_attribute_value(0, cast_vector(*v1_RowCells)); } if (v2_IsHeading) {set_attribute_value(1, (*v2_IsHeading)); }; return *this; } // Function implementations for IfcTank std::optional< ::Ifc4x3_add1::IfcTankTypeEnum::Value > Ifc4x3_add1::IfcTank::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_add1::IfcTankTypeEnum::FromString(get_attribute_value(8)); } @@ -15609,7 +15609,7 @@ void Ifc4x3_add1::IfcTankType::setPredefinedType(const ::Ifc4x3_add1::IfcTankTyp const ifcopenshell::entity& Ifc4x3_add1::IfcTankType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[1157]); } -Ifc4x3_add1::IfcTankType Ifc4x3_add1::IfcTankType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcTankTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcTankTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_add1::IfcTankType Ifc4x3_add1::IfcTankType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcTankTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcTankTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcTask std::optional< std::string > Ifc4x3_add1::IfcTask::Status() const { if(get_attribute_value(7).isNull()) { return std::nullopt; } std::string v = get_attribute_value(7); return v; } @@ -15620,7 +15620,7 @@ bool Ifc4x3_add1::IfcTask::IsMilestone() const { bool v = get_attribute_value(9 void Ifc4x3_add1::IfcTask::setIsMilestone(const bool& v) { set_attribute_value(9, v);if constexpr (false)unset_attribute_value(9); } std::optional< int64_t > Ifc4x3_add1::IfcTask::Priority() const { if(get_attribute_value(10).isNull()) { return std::nullopt; } int64_t v = get_attribute_value(10); return v; } void Ifc4x3_add1::IfcTask::setPriority(const std::optional< int64_t >& v) { if (v) {set_attribute_value(10, *v);} else {unset_attribute_value(10);} } -::Ifc4x3_add1::IfcTaskTime Ifc4x3_add1::IfcTask::TaskTime() const { if(get_attribute_value(11).isNull()) { return ::Ifc4x3_add1::IfcTaskTime{}; } return ((express::Base)(get_attribute_value(11))).as<::Ifc4x3_add1::IfcTaskTime>(); } +::Ifc4x3_add1::IfcTaskTime Ifc4x3_add1::IfcTask::TaskTime() const { if(get_attribute_value(11).isNull()) { return ::Ifc4x3_add1::IfcTaskTime{}; } return ((express::base)(get_attribute_value(11))).as<::Ifc4x3_add1::IfcTaskTime>(); } void Ifc4x3_add1::IfcTask::setTaskTime(const ::Ifc4x3_add1::IfcTaskTime& v) { set_attribute_value(11, v);if constexpr (false)unset_attribute_value(11); } std::optional< ::Ifc4x3_add1::IfcTaskTypeEnum::Value > Ifc4x3_add1::IfcTask::PredefinedType() const { if(get_attribute_value(12).isNull()) { return std::nullopt; } return ::Ifc4x3_add1::IfcTaskTypeEnum::FromString(get_attribute_value(12)); } void Ifc4x3_add1::IfcTask::setPredefinedType(const std::optional< ::Ifc4x3_add1::IfcTaskTypeEnum::Value >& v) { if (v) {set_attribute_value(12, enumeration_reference(&::Ifc4x3_add1::IfcTaskTypeEnum::Class(), (size_t) *v));} else {unset_attribute_value(12);} } @@ -15670,7 +15670,7 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcTaskTime::Class() { return *((ifcope Ifc4x3_add1::IfcTaskTime Ifc4x3_add1::IfcTaskTime::initialize(std::optional< std::string > v1_Name, std::optional< ::Ifc4x3_add1::IfcDataOriginEnum::Value > v2_DataOrigin, std::optional< std::string > v3_UserDefinedDataOrigin, std::optional< ::Ifc4x3_add1::IfcTaskDurationEnum::Value > v4_DurationType, std::optional< std::string > v5_ScheduleDuration, std::optional< std::string > v6_ScheduleStart, std::optional< std::string > v7_ScheduleFinish, std::optional< std::string > v8_EarlyStart, std::optional< std::string > v9_EarlyFinish, std::optional< std::string > v10_LateStart, std::optional< std::string > v11_LateFinish, std::optional< std::string > v12_FreeFloat, std::optional< std::string > v13_TotalFloat, std::optional< bool > v14_IsCritical, std::optional< std::string > v15_StatusTime, std::optional< std::string > v16_ActualDuration, std::optional< std::string > v17_ActualStart, std::optional< std::string > v18_ActualFinish, std::optional< std::string > v19_RemainingTime, std::optional< double > v20_Completion) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); } if (v2_DataOrigin) {set_attribute_value(1, (enumeration_reference(&::Ifc4x3_add1::IfcDataOriginEnum::Class(),(size_t)*v2_DataOrigin))); } if (v3_UserDefinedDataOrigin) {set_attribute_value(2, (*v3_UserDefinedDataOrigin)); } if (v4_DurationType) {set_attribute_value(3, (enumeration_reference(&::Ifc4x3_add1::IfcTaskDurationEnum::Class(),(size_t)*v4_DurationType))); } if (v5_ScheduleDuration) {set_attribute_value(4, (*v5_ScheduleDuration)); } if (v6_ScheduleStart) {set_attribute_value(5, (*v6_ScheduleStart)); } if (v7_ScheduleFinish) {set_attribute_value(6, (*v7_ScheduleFinish)); } if (v8_EarlyStart) {set_attribute_value(7, (*v8_EarlyStart)); } if (v9_EarlyFinish) {set_attribute_value(8, (*v9_EarlyFinish)); } if (v10_LateStart) {set_attribute_value(9, (*v10_LateStart)); } if (v11_LateFinish) {set_attribute_value(10, (*v11_LateFinish)); } if (v12_FreeFloat) {set_attribute_value(11, (*v12_FreeFloat)); } if (v13_TotalFloat) {set_attribute_value(12, (*v13_TotalFloat)); } if (v14_IsCritical) {set_attribute_value(13, (*v14_IsCritical)); } if (v15_StatusTime) {set_attribute_value(14, (*v15_StatusTime)); } if (v16_ActualDuration) {set_attribute_value(15, (*v16_ActualDuration)); } if (v17_ActualStart) {set_attribute_value(16, (*v17_ActualStart)); } if (v18_ActualFinish) {set_attribute_value(17, (*v18_ActualFinish)); } if (v19_RemainingTime) {set_attribute_value(18, (*v19_RemainingTime)); } if (v20_Completion) {set_attribute_value(19, (*v20_Completion)); }; return *this; } // Function implementations for IfcTaskTimeRecurring -::Ifc4x3_add1::IfcRecurrencePattern Ifc4x3_add1::IfcTaskTimeRecurring::Recurrence() const { return ((express::Base)(get_attribute_value(20))).as<::Ifc4x3_add1::IfcRecurrencePattern>(); } +::Ifc4x3_add1::IfcRecurrencePattern Ifc4x3_add1::IfcTaskTimeRecurring::Recurrence() const { return ((express::base)(get_attribute_value(20))).as<::Ifc4x3_add1::IfcRecurrencePattern>(); } void Ifc4x3_add1::IfcTaskTimeRecurring::setRecurrence(const ::Ifc4x3_add1::IfcRecurrencePattern& v) { set_attribute_value(20, v);if constexpr (false)unset_attribute_value(20); } @@ -15685,7 +15685,7 @@ void Ifc4x3_add1::IfcTaskType::setWorkMethod(const std::optional< std::string >& const ifcopenshell::entity& Ifc4x3_add1::IfcTaskType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[1163]); } -Ifc4x3_add1::IfcTaskType Ifc4x3_add1::IfcTaskType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::string > v7_Identification, std::optional< std::string > v8_LongDescription, std::optional< std::string > v9_ProcessType, ::Ifc4x3_add1::IfcTaskTypeEnum::Value v10_PredefinedType, std::optional< std::string > v11_WorkMethod) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_Identification) {set_attribute_value(6, (*v7_Identification)); } if (v8_LongDescription) {set_attribute_value(7, (*v8_LongDescription)); } if (v9_ProcessType) {set_attribute_value(8, (*v9_ProcessType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcTaskTypeEnum::Class(),(size_t)v10_PredefinedType))); if (v11_WorkMethod) {set_attribute_value(10, (*v11_WorkMethod)); }; return *this; } +Ifc4x3_add1::IfcTaskType Ifc4x3_add1::IfcTaskType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::string > v7_Identification, std::optional< std::string > v8_LongDescription, std::optional< std::string > v9_ProcessType, ::Ifc4x3_add1::IfcTaskTypeEnum::Value v10_PredefinedType, std::optional< std::string > v11_WorkMethod) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_Identification) {set_attribute_value(6, (*v7_Identification)); } if (v8_LongDescription) {set_attribute_value(7, (*v8_LongDescription)); } if (v9_ProcessType) {set_attribute_value(8, (*v9_ProcessType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcTaskTypeEnum::Class(),(size_t)v10_PredefinedType))); if (v11_WorkMethod) {set_attribute_value(10, (*v11_WorkMethod)); }; return *this; } // Function implementations for IfcTelecomAddress std::optional< std::vector< std::string > /*[1:?]*/ > Ifc4x3_add1::IfcTelecomAddress::TelephoneNumbers() const { if(get_attribute_value(3).isNull()) { return std::nullopt; } std::vector< std::string > /*[1:?]*/ v = get_attribute_value(3); return v; } @@ -15741,7 +15741,7 @@ void Ifc4x3_add1::IfcTendonAnchorType::setPredefinedType(const ::Ifc4x3_add1::If const ifcopenshell::entity& Ifc4x3_add1::IfcTendonAnchorType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[1170]); } -Ifc4x3_add1::IfcTendonAnchorType Ifc4x3_add1::IfcTendonAnchorType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcTendonAnchorTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcTendonAnchorTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_add1::IfcTendonAnchorType Ifc4x3_add1::IfcTendonAnchorType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcTendonAnchorTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcTendonAnchorTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcTendonConduit ::Ifc4x3_add1::IfcTendonConduitTypeEnum::Value Ifc4x3_add1::IfcTendonConduit::PredefinedType() const { return ::Ifc4x3_add1::IfcTendonConduitTypeEnum::FromString(get_attribute_value(9)); } @@ -15757,7 +15757,7 @@ void Ifc4x3_add1::IfcTendonConduitType::setPredefinedType(const ::Ifc4x3_add1::I const ifcopenshell::entity& Ifc4x3_add1::IfcTendonConduitType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[1173]); } -Ifc4x3_add1::IfcTendonConduitType Ifc4x3_add1::IfcTendonConduitType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcTendonConduitTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcTendonConduitTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_add1::IfcTendonConduitType Ifc4x3_add1::IfcTendonConduitType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcTendonConduitTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcTendonConduitTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcTendonType ::Ifc4x3_add1::IfcTendonTypeEnum::Value Ifc4x3_add1::IfcTendonType::PredefinedType() const { return ::Ifc4x3_add1::IfcTendonTypeEnum::FromString(get_attribute_value(9)); } @@ -15771,10 +15771,10 @@ void Ifc4x3_add1::IfcTendonType::setSheathDiameter(const std::optional< double > const ifcopenshell::entity& Ifc4x3_add1::IfcTendonType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[1175]); } -Ifc4x3_add1::IfcTendonType Ifc4x3_add1::IfcTendonType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcTendonTypeEnum::Value v10_PredefinedType, std::optional< double > v11_NominalDiameter, std::optional< double > v12_CrossSectionArea, std::optional< double > v13_SheathDiameter) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcTendonTypeEnum::Class(),(size_t)v10_PredefinedType))); if (v11_NominalDiameter) {set_attribute_value(10, (*v11_NominalDiameter)); } if (v12_CrossSectionArea) {set_attribute_value(11, (*v12_CrossSectionArea)); } if (v13_SheathDiameter) {set_attribute_value(12, (*v13_SheathDiameter)); }; return *this; } +Ifc4x3_add1::IfcTendonType Ifc4x3_add1::IfcTendonType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcTendonTypeEnum::Value v10_PredefinedType, std::optional< double > v11_NominalDiameter, std::optional< double > v12_CrossSectionArea, std::optional< double > v13_SheathDiameter) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcTendonTypeEnum::Class(),(size_t)v10_PredefinedType))); if (v11_NominalDiameter) {set_attribute_value(10, (*v11_NominalDiameter)); } if (v12_CrossSectionArea) {set_attribute_value(11, (*v12_CrossSectionArea)); } if (v13_SheathDiameter) {set_attribute_value(12, (*v13_SheathDiameter)); }; return *this; } // Function implementations for IfcTessellatedFaceSet -::Ifc4x3_add1::IfcCartesianPointList3D Ifc4x3_add1::IfcTessellatedFaceSet::Coordinates() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcCartesianPointList3D>(); } +::Ifc4x3_add1::IfcCartesianPointList3D Ifc4x3_add1::IfcTessellatedFaceSet::Coordinates() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcCartesianPointList3D>(); } void Ifc4x3_add1::IfcTessellatedFaceSet::setCoordinates(const ::Ifc4x3_add1::IfcCartesianPointList3D& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } std::vector<::Ifc4x3_add1::IfcIndexedColourMap> Ifc4x3_add1::IfcTessellatedFaceSet::HasColours() const { return cast_vector(file()->get_inverse(data()->id(), IFC4X3_ADD1_types[542], 0)); } @@ -15792,7 +15792,7 @@ Ifc4x3_add1::IfcTessellatedItem Ifc4x3_add1::IfcTessellatedItem::initialize() { // Function implementations for IfcTextLiteral std::string Ifc4x3_add1::IfcTextLiteral::Literal() const { std::string v = get_attribute_value(0); return v; } void Ifc4x3_add1::IfcTextLiteral::setLiteral(const std::string& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } -::Ifc4x3_add1::IfcAxis2Placement Ifc4x3_add1::IfcTextLiteral::Placement() const { return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3_add1::IfcAxis2Placement>(); } +::Ifc4x3_add1::IfcAxis2Placement Ifc4x3_add1::IfcTextLiteral::Placement() const { return ((express::base)(get_attribute_value(1))).as<::Ifc4x3_add1::IfcAxis2Placement>(); } void Ifc4x3_add1::IfcTextLiteral::setPlacement(const ::Ifc4x3_add1::IfcAxis2Placement& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } ::Ifc4x3_add1::IfcTextPath::Value Ifc4x3_add1::IfcTextLiteral::Path() const { return ::Ifc4x3_add1::IfcTextPath::FromString(get_attribute_value(2)); } void Ifc4x3_add1::IfcTextLiteral::setPath(const ::Ifc4x3_add1::IfcTextPath::Value& v) { set_attribute_value(2, enumeration_reference(&::Ifc4x3_add1::IfcTextPath::Class(), (size_t) v));if constexpr (false)unset_attribute_value(2); } @@ -15802,7 +15802,7 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcTextLiteral::Class() { return *((ifc Ifc4x3_add1::IfcTextLiteral Ifc4x3_add1::IfcTextLiteral::initialize(std::string v1_Literal, ::Ifc4x3_add1::IfcAxis2Placement v2_Placement, ::Ifc4x3_add1::IfcTextPath::Value v3_Path) { set_attribute_value(0, (v1_Literal));set_attribute_value(1, (v2_Placement));set_attribute_value(2, (enumeration_reference(&::Ifc4x3_add1::IfcTextPath::Class(),(size_t)v3_Path)));; return *this; } // Function implementations for IfcTextLiteralWithExtent -::Ifc4x3_add1::IfcPlanarExtent Ifc4x3_add1::IfcTextLiteralWithExtent::Extent() const { return ((express::Base)(get_attribute_value(3))).as<::Ifc4x3_add1::IfcPlanarExtent>(); } +::Ifc4x3_add1::IfcPlanarExtent Ifc4x3_add1::IfcTextLiteralWithExtent::Extent() const { return ((express::base)(get_attribute_value(3))).as<::Ifc4x3_add1::IfcPlanarExtent>(); } void Ifc4x3_add1::IfcTextLiteralWithExtent::setExtent(const ::Ifc4x3_add1::IfcPlanarExtent& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } std::string Ifc4x3_add1::IfcTextLiteralWithExtent::BoxAlignment() const { std::string v = get_attribute_value(4); return v; } void Ifc4x3_add1::IfcTextLiteralWithExtent::setBoxAlignment(const std::string& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } @@ -15812,11 +15812,11 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcTextLiteralWithExtent::Class() { ret Ifc4x3_add1::IfcTextLiteralWithExtent Ifc4x3_add1::IfcTextLiteralWithExtent::initialize(std::string v1_Literal, ::Ifc4x3_add1::IfcAxis2Placement v2_Placement, ::Ifc4x3_add1::IfcTextPath::Value v3_Path, ::Ifc4x3_add1::IfcPlanarExtent v4_Extent, std::string v5_BoxAlignment) { set_attribute_value(0, (v1_Literal));set_attribute_value(1, (v2_Placement));set_attribute_value(2, (enumeration_reference(&::Ifc4x3_add1::IfcTextPath::Class(),(size_t)v3_Path)));set_attribute_value(3, (v4_Extent));set_attribute_value(4, (v5_BoxAlignment));; return *this; } // Function implementations for IfcTextStyle -::Ifc4x3_add1::IfcTextStyleForDefinedFont Ifc4x3_add1::IfcTextStyle::TextCharacterAppearance() const { if(get_attribute_value(1).isNull()) { return ::Ifc4x3_add1::IfcTextStyleForDefinedFont{}; } return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3_add1::IfcTextStyleForDefinedFont>(); } +::Ifc4x3_add1::IfcTextStyleForDefinedFont Ifc4x3_add1::IfcTextStyle::TextCharacterAppearance() const { if(get_attribute_value(1).isNull()) { return ::Ifc4x3_add1::IfcTextStyleForDefinedFont{}; } return ((express::base)(get_attribute_value(1))).as<::Ifc4x3_add1::IfcTextStyleForDefinedFont>(); } void Ifc4x3_add1::IfcTextStyle::setTextCharacterAppearance(const ::Ifc4x3_add1::IfcTextStyleForDefinedFont& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } -::Ifc4x3_add1::IfcTextStyleTextModel Ifc4x3_add1::IfcTextStyle::TextStyle() const { if(get_attribute_value(2).isNull()) { return ::Ifc4x3_add1::IfcTextStyleTextModel{}; } return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3_add1::IfcTextStyleTextModel>(); } +::Ifc4x3_add1::IfcTextStyleTextModel Ifc4x3_add1::IfcTextStyle::TextStyle() const { if(get_attribute_value(2).isNull()) { return ::Ifc4x3_add1::IfcTextStyleTextModel{}; } return ((express::base)(get_attribute_value(2))).as<::Ifc4x3_add1::IfcTextStyleTextModel>(); } void Ifc4x3_add1::IfcTextStyle::setTextStyle(const ::Ifc4x3_add1::IfcTextStyleTextModel& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } -::Ifc4x3_add1::IfcTextFontSelect Ifc4x3_add1::IfcTextStyle::TextFontStyle() const { return ((express::Base)(get_attribute_value(3))).as<::Ifc4x3_add1::IfcTextFontSelect>(); } +::Ifc4x3_add1::IfcTextFontSelect Ifc4x3_add1::IfcTextStyle::TextFontStyle() const { return ((express::base)(get_attribute_value(3))).as<::Ifc4x3_add1::IfcTextFontSelect>(); } void Ifc4x3_add1::IfcTextStyle::setTextFontStyle(const ::Ifc4x3_add1::IfcTextFontSelect& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } std::optional< bool > Ifc4x3_add1::IfcTextStyle::ModelOrDraughting() const { if(get_attribute_value(4).isNull()) { return std::nullopt; } bool v = get_attribute_value(4); return v; } void Ifc4x3_add1::IfcTextStyle::setModelOrDraughting(const std::optional< bool >& v) { if (v) {set_attribute_value(4, *v);} else {unset_attribute_value(4);} } @@ -15834,7 +15834,7 @@ std::optional< std::string > Ifc4x3_add1::IfcTextStyleFontModel::FontVariant() c void Ifc4x3_add1::IfcTextStyleFontModel::setFontVariant(const std::optional< std::string >& v) { if (v) {set_attribute_value(3, *v);} else {unset_attribute_value(3);} } std::optional< std::string > Ifc4x3_add1::IfcTextStyleFontModel::FontWeight() const { if(get_attribute_value(4).isNull()) { return std::nullopt; } std::string v = get_attribute_value(4); return v; } void Ifc4x3_add1::IfcTextStyleFontModel::setFontWeight(const std::optional< std::string >& v) { if (v) {set_attribute_value(4, *v);} else {unset_attribute_value(4);} } -::Ifc4x3_add1::IfcSizeSelect Ifc4x3_add1::IfcTextStyleFontModel::FontSize() const { return ((express::Base)(get_attribute_value(5))).as<::Ifc4x3_add1::IfcSizeSelect>(); } +::Ifc4x3_add1::IfcSizeSelect Ifc4x3_add1::IfcTextStyleFontModel::FontSize() const { return ((express::base)(get_attribute_value(5))).as<::Ifc4x3_add1::IfcSizeSelect>(); } void Ifc4x3_add1::IfcTextStyleFontModel::setFontSize(const ::Ifc4x3_add1::IfcSizeSelect& v) { set_attribute_value(5, v);if constexpr (false)unset_attribute_value(5); } @@ -15842,9 +15842,9 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcTextStyleFontModel::Class() { return Ifc4x3_add1::IfcTextStyleFontModel Ifc4x3_add1::IfcTextStyleFontModel::initialize(std::string v1_Name, std::vector< std::string > /*[1:?]*/ v2_FontFamily, std::optional< std::string > v3_FontStyle, std::optional< std::string > v4_FontVariant, std::optional< std::string > v5_FontWeight, ::Ifc4x3_add1::IfcSizeSelect v6_FontSize) { set_attribute_value(0, (v1_Name));set_attribute_value(1, (v2_FontFamily)); if (v3_FontStyle) {set_attribute_value(2, (*v3_FontStyle)); } if (v4_FontVariant) {set_attribute_value(3, (*v4_FontVariant)); } if (v5_FontWeight) {set_attribute_value(4, (*v5_FontWeight)); }set_attribute_value(5, (v6_FontSize));; return *this; } // Function implementations for IfcTextStyleForDefinedFont -::Ifc4x3_add1::IfcColour Ifc4x3_add1::IfcTextStyleForDefinedFont::Colour() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcColour>(); } +::Ifc4x3_add1::IfcColour Ifc4x3_add1::IfcTextStyleForDefinedFont::Colour() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcColour>(); } void Ifc4x3_add1::IfcTextStyleForDefinedFont::setColour(const ::Ifc4x3_add1::IfcColour& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } -::Ifc4x3_add1::IfcColour Ifc4x3_add1::IfcTextStyleForDefinedFont::BackgroundColour() const { if(get_attribute_value(1).isNull()) { return ::Ifc4x3_add1::IfcColour{}; } return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3_add1::IfcColour>(); } +::Ifc4x3_add1::IfcColour Ifc4x3_add1::IfcTextStyleForDefinedFont::BackgroundColour() const { if(get_attribute_value(1).isNull()) { return ::Ifc4x3_add1::IfcColour{}; } return ((express::base)(get_attribute_value(1))).as<::Ifc4x3_add1::IfcColour>(); } void Ifc4x3_add1::IfcTextStyleForDefinedFont::setBackgroundColour(const ::Ifc4x3_add1::IfcColour& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } @@ -15852,19 +15852,19 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcTextStyleForDefinedFont::Class() { r Ifc4x3_add1::IfcTextStyleForDefinedFont Ifc4x3_add1::IfcTextStyleForDefinedFont::initialize(::Ifc4x3_add1::IfcColour v1_Colour, ::Ifc4x3_add1::IfcColour v2_BackgroundColour) { set_attribute_value(0, (v1_Colour));set_attribute_value(1, (v2_BackgroundColour));; return *this; } // Function implementations for IfcTextStyleTextModel -::Ifc4x3_add1::IfcSizeSelect Ifc4x3_add1::IfcTextStyleTextModel::TextIndent() const { if(get_attribute_value(0).isNull()) { return ::Ifc4x3_add1::IfcSizeSelect{}; } return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcSizeSelect>(); } +::Ifc4x3_add1::IfcSizeSelect Ifc4x3_add1::IfcTextStyleTextModel::TextIndent() const { if(get_attribute_value(0).isNull()) { return ::Ifc4x3_add1::IfcSizeSelect{}; } return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcSizeSelect>(); } void Ifc4x3_add1::IfcTextStyleTextModel::setTextIndent(const ::Ifc4x3_add1::IfcSizeSelect& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } std::optional< std::string > Ifc4x3_add1::IfcTextStyleTextModel::TextAlign() const { if(get_attribute_value(1).isNull()) { return std::nullopt; } std::string v = get_attribute_value(1); return v; } void Ifc4x3_add1::IfcTextStyleTextModel::setTextAlign(const std::optional< std::string >& v) { if (v) {set_attribute_value(1, *v);} else {unset_attribute_value(1);} } std::optional< std::string > Ifc4x3_add1::IfcTextStyleTextModel::TextDecoration() const { if(get_attribute_value(2).isNull()) { return std::nullopt; } std::string v = get_attribute_value(2); return v; } void Ifc4x3_add1::IfcTextStyleTextModel::setTextDecoration(const std::optional< std::string >& v) { if (v) {set_attribute_value(2, *v);} else {unset_attribute_value(2);} } -::Ifc4x3_add1::IfcSizeSelect Ifc4x3_add1::IfcTextStyleTextModel::LetterSpacing() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3_add1::IfcSizeSelect{}; } return ((express::Base)(get_attribute_value(3))).as<::Ifc4x3_add1::IfcSizeSelect>(); } +::Ifc4x3_add1::IfcSizeSelect Ifc4x3_add1::IfcTextStyleTextModel::LetterSpacing() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3_add1::IfcSizeSelect{}; } return ((express::base)(get_attribute_value(3))).as<::Ifc4x3_add1::IfcSizeSelect>(); } void Ifc4x3_add1::IfcTextStyleTextModel::setLetterSpacing(const ::Ifc4x3_add1::IfcSizeSelect& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } -::Ifc4x3_add1::IfcSizeSelect Ifc4x3_add1::IfcTextStyleTextModel::WordSpacing() const { if(get_attribute_value(4).isNull()) { return ::Ifc4x3_add1::IfcSizeSelect{}; } return ((express::Base)(get_attribute_value(4))).as<::Ifc4x3_add1::IfcSizeSelect>(); } +::Ifc4x3_add1::IfcSizeSelect Ifc4x3_add1::IfcTextStyleTextModel::WordSpacing() const { if(get_attribute_value(4).isNull()) { return ::Ifc4x3_add1::IfcSizeSelect{}; } return ((express::base)(get_attribute_value(4))).as<::Ifc4x3_add1::IfcSizeSelect>(); } void Ifc4x3_add1::IfcTextStyleTextModel::setWordSpacing(const ::Ifc4x3_add1::IfcSizeSelect& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } std::optional< std::string > Ifc4x3_add1::IfcTextStyleTextModel::TextTransform() const { if(get_attribute_value(5).isNull()) { return std::nullopt; } std::string v = get_attribute_value(5); return v; } void Ifc4x3_add1::IfcTextStyleTextModel::setTextTransform(const std::optional< std::string >& v) { if (v) {set_attribute_value(5, *v);} else {unset_attribute_value(5);} } -::Ifc4x3_add1::IfcSizeSelect Ifc4x3_add1::IfcTextStyleTextModel::LineHeight() const { if(get_attribute_value(6).isNull()) { return ::Ifc4x3_add1::IfcSizeSelect{}; } return ((express::Base)(get_attribute_value(6))).as<::Ifc4x3_add1::IfcSizeSelect>(); } +::Ifc4x3_add1::IfcSizeSelect Ifc4x3_add1::IfcTextStyleTextModel::LineHeight() const { if(get_attribute_value(6).isNull()) { return ::Ifc4x3_add1::IfcSizeSelect{}; } return ((express::base)(get_attribute_value(6))).as<::Ifc4x3_add1::IfcSizeSelect>(); } void Ifc4x3_add1::IfcTextStyleTextModel::setLineHeight(const ::Ifc4x3_add1::IfcSizeSelect& v) { set_attribute_value(6, v);if constexpr (false)unset_attribute_value(6); } @@ -15872,12 +15872,12 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcTextStyleTextModel::Class() { return Ifc4x3_add1::IfcTextStyleTextModel Ifc4x3_add1::IfcTextStyleTextModel::initialize(::Ifc4x3_add1::IfcSizeSelect v1_TextIndent, std::optional< std::string > v2_TextAlign, std::optional< std::string > v3_TextDecoration, ::Ifc4x3_add1::IfcSizeSelect v4_LetterSpacing, ::Ifc4x3_add1::IfcSizeSelect v5_WordSpacing, std::optional< std::string > v6_TextTransform, ::Ifc4x3_add1::IfcSizeSelect v7_LineHeight) { set_attribute_value(0, (v1_TextIndent)); if (v2_TextAlign) {set_attribute_value(1, (*v2_TextAlign)); } if (v3_TextDecoration) {set_attribute_value(2, (*v3_TextDecoration)); }set_attribute_value(3, (v4_LetterSpacing));set_attribute_value(4, (v5_WordSpacing)); if (v6_TextTransform) {set_attribute_value(5, (*v6_TextTransform)); }set_attribute_value(6, (v7_LineHeight));; return *this; } // Function implementations for IfcTextureCoordinate -std::vector< ::Ifc4x3_add1::IfcSurfaceTexture > Ifc4x3_add1::IfcTextureCoordinate::Maps() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3_add1::IfcSurfaceTexture>(es); } -void Ifc4x3_add1::IfcTextureCoordinate::setMaps(const std::vector< ::Ifc4x3_add1::IfcSurfaceTexture >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } +std::vector< ::Ifc4x3_add1::IfcSurfaceTexture > Ifc4x3_add1::IfcTextureCoordinate::Maps() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3_add1::IfcSurfaceTexture>(es); } +void Ifc4x3_add1::IfcTextureCoordinate::setMaps(const std::vector< ::Ifc4x3_add1::IfcSurfaceTexture >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } const ifcopenshell::entity& Ifc4x3_add1::IfcTextureCoordinate::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[1192]); } -Ifc4x3_add1::IfcTextureCoordinate Ifc4x3_add1::IfcTextureCoordinate::initialize(std::vector< ::Ifc4x3_add1::IfcSurfaceTexture > v1_Maps) { set_attribute_value(0, cast_vector(v1_Maps));; return *this; } +Ifc4x3_add1::IfcTextureCoordinate Ifc4x3_add1::IfcTextureCoordinate::initialize(std::vector< ::Ifc4x3_add1::IfcSurfaceTexture > v1_Maps) { set_attribute_value(0, cast_vector(v1_Maps));; return *this; } // Function implementations for IfcTextureCoordinateGenerator std::string Ifc4x3_add1::IfcTextureCoordinateGenerator::Mode() const { std::string v = get_attribute_value(1); return v; } @@ -15887,12 +15887,12 @@ void Ifc4x3_add1::IfcTextureCoordinateGenerator::setParameter(const std::optiona const ifcopenshell::entity& Ifc4x3_add1::IfcTextureCoordinateGenerator::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[1193]); } -Ifc4x3_add1::IfcTextureCoordinateGenerator Ifc4x3_add1::IfcTextureCoordinateGenerator::initialize(std::vector< ::Ifc4x3_add1::IfcSurfaceTexture > v1_Maps, std::string v2_Mode, std::optional< std::vector< double > /*[1:?]*/ > v3_Parameter) { set_attribute_value(0, cast_vector(v1_Maps));set_attribute_value(1, (v2_Mode)); if (v3_Parameter) {set_attribute_value(2, (*v3_Parameter)); }; return *this; } +Ifc4x3_add1::IfcTextureCoordinateGenerator Ifc4x3_add1::IfcTextureCoordinateGenerator::initialize(std::vector< ::Ifc4x3_add1::IfcSurfaceTexture > v1_Maps, std::string v2_Mode, std::optional< std::vector< double > /*[1:?]*/ > v3_Parameter) { set_attribute_value(0, cast_vector(v1_Maps));set_attribute_value(1, (v2_Mode)); if (v3_Parameter) {set_attribute_value(2, (*v3_Parameter)); }; return *this; } // Function implementations for IfcTextureCoordinateIndices std::vector< int64_t > /*[3:?]*/ Ifc4x3_add1::IfcTextureCoordinateIndices::TexCoordIndex() const { std::vector< int64_t > /*[3:?]*/ v = get_attribute_value(0); return v; } void Ifc4x3_add1::IfcTextureCoordinateIndices::setTexCoordIndex(const std::vector< int64_t > /*[3:?]*/& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } -::Ifc4x3_add1::IfcIndexedPolygonalFace Ifc4x3_add1::IfcTextureCoordinateIndices::TexCoordsOf() const { return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3_add1::IfcIndexedPolygonalFace>(); } +::Ifc4x3_add1::IfcIndexedPolygonalFace Ifc4x3_add1::IfcTextureCoordinateIndices::TexCoordsOf() const { return ((express::base)(get_attribute_value(1))).as<::Ifc4x3_add1::IfcIndexedPolygonalFace>(); } void Ifc4x3_add1::IfcTextureCoordinateIndices::setTexCoordsOf(const ::Ifc4x3_add1::IfcIndexedPolygonalFace& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } std::vector<::Ifc4x3_add1::IfcIndexedPolygonalTextureMap> Ifc4x3_add1::IfcTextureCoordinateIndices::ToTexMap() const { return cast_vector(file()->get_inverse(data()->id(), IFC4X3_ADD1_types[546], 3)); } @@ -15909,14 +15909,14 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcTextureCoordinateIndicesWithVoids::C Ifc4x3_add1::IfcTextureCoordinateIndicesWithVoids Ifc4x3_add1::IfcTextureCoordinateIndicesWithVoids::initialize(std::vector< int64_t > /*[3:?]*/ v1_TexCoordIndex, ::Ifc4x3_add1::IfcIndexedPolygonalFace v2_TexCoordsOf, std::vector< std::vector< int64_t > > v3_InnerTexCoordIndices) { set_attribute_value(0, (v1_TexCoordIndex));set_attribute_value(1, (v2_TexCoordsOf));set_attribute_value(2, (v3_InnerTexCoordIndices));; return *this; } // Function implementations for IfcTextureMap -std::vector< ::Ifc4x3_add1::IfcTextureVertex > Ifc4x3_add1::IfcTextureMap::Vertices() const { std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3_add1::IfcTextureVertex>(es); } -void Ifc4x3_add1::IfcTextureMap::setVertices(const std::vector< ::Ifc4x3_add1::IfcTextureVertex >& v) { set_attribute_value(1, cast_vector(v));if constexpr (false)unset_attribute_value(1); } -::Ifc4x3_add1::IfcFace Ifc4x3_add1::IfcTextureMap::MappedTo() const { return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3_add1::IfcFace>(); } +std::vector< ::Ifc4x3_add1::IfcTextureVertex > Ifc4x3_add1::IfcTextureMap::Vertices() const { std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3_add1::IfcTextureVertex>(es); } +void Ifc4x3_add1::IfcTextureMap::setVertices(const std::vector< ::Ifc4x3_add1::IfcTextureVertex >& v) { set_attribute_value(1, cast_vector(v));if constexpr (false)unset_attribute_value(1); } +::Ifc4x3_add1::IfcFace Ifc4x3_add1::IfcTextureMap::MappedTo() const { return ((express::base)(get_attribute_value(2))).as<::Ifc4x3_add1::IfcFace>(); } void Ifc4x3_add1::IfcTextureMap::setMappedTo(const ::Ifc4x3_add1::IfcFace& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } const ifcopenshell::entity& Ifc4x3_add1::IfcTextureMap::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[1196]); } -Ifc4x3_add1::IfcTextureMap Ifc4x3_add1::IfcTextureMap::initialize(std::vector< ::Ifc4x3_add1::IfcSurfaceTexture > v1_Maps, std::vector< ::Ifc4x3_add1::IfcTextureVertex > v2_Vertices, ::Ifc4x3_add1::IfcFace v3_MappedTo) { set_attribute_value(0, cast_vector(v1_Maps));set_attribute_value(1, cast_vector(v2_Vertices));set_attribute_value(2, (v3_MappedTo));; return *this; } +Ifc4x3_add1::IfcTextureMap Ifc4x3_add1::IfcTextureMap::initialize(std::vector< ::Ifc4x3_add1::IfcSurfaceTexture > v1_Maps, std::vector< ::Ifc4x3_add1::IfcTextureVertex > v2_Vertices, ::Ifc4x3_add1::IfcFace v3_MappedTo) { set_attribute_value(0, cast_vector(v1_Maps));set_attribute_value(1, cast_vector(v2_Vertices));set_attribute_value(2, (v3_MappedTo));; return *this; } // Function implementations for IfcTextureVertex std::vector< double > /*[2:2]*/ Ifc4x3_add1::IfcTextureVertex::Coordinates() const { std::vector< double > /*[2:2]*/ v = get_attribute_value(0); return v; } @@ -15973,7 +15973,7 @@ void Ifc4x3_add1::IfcTimeSeries::setTimeSeriesDataType(const ::Ifc4x3_add1::IfcT void Ifc4x3_add1::IfcTimeSeries::setDataOrigin(const ::Ifc4x3_add1::IfcDataOriginEnum::Value& v) { set_attribute_value(5, enumeration_reference(&::Ifc4x3_add1::IfcDataOriginEnum::Class(), (size_t) v));if constexpr (false)unset_attribute_value(5); } std::optional< std::string > Ifc4x3_add1::IfcTimeSeries::UserDefinedDataOrigin() const { if(get_attribute_value(6).isNull()) { return std::nullopt; } std::string v = get_attribute_value(6); return v; } void Ifc4x3_add1::IfcTimeSeries::setUserDefinedDataOrigin(const std::optional< std::string >& v) { if (v) {set_attribute_value(6, *v);} else {unset_attribute_value(6);} } -::Ifc4x3_add1::IfcUnit Ifc4x3_add1::IfcTimeSeries::Unit() const { if(get_attribute_value(7).isNull()) { return ::Ifc4x3_add1::IfcUnit{}; } return ((express::Base)(get_attribute_value(7))).as<::Ifc4x3_add1::IfcUnit>(); } +::Ifc4x3_add1::IfcUnit Ifc4x3_add1::IfcTimeSeries::Unit() const { if(get_attribute_value(7).isNull()) { return ::Ifc4x3_add1::IfcUnit{}; } return ((express::base)(get_attribute_value(7))).as<::Ifc4x3_add1::IfcUnit>(); } void Ifc4x3_add1::IfcTimeSeries::setUnit(const ::Ifc4x3_add1::IfcUnit& v) { set_attribute_value(7, v);if constexpr (false)unset_attribute_value(7); } std::vector<::Ifc4x3_add1::IfcExternalReferenceRelationship> Ifc4x3_add1::IfcTimeSeries::HasExternalReference() const { return cast_vector(file()->get_inverse(data()->id(), IFC4X3_ADD1_types[427], 3)); } @@ -15982,12 +15982,12 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcTimeSeries::Class() { return *((ifco Ifc4x3_add1::IfcTimeSeries Ifc4x3_add1::IfcTimeSeries::initialize(std::string v1_Name, std::optional< std::string > v2_Description, std::string v3_StartTime, std::string v4_EndTime, ::Ifc4x3_add1::IfcTimeSeriesDataTypeEnum::Value v5_TimeSeriesDataType, ::Ifc4x3_add1::IfcDataOriginEnum::Value v6_DataOrigin, std::optional< std::string > v7_UserDefinedDataOrigin, ::Ifc4x3_add1::IfcUnit v8_Unit) { set_attribute_value(0, (v1_Name)); if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, (v3_StartTime));set_attribute_value(3, (v4_EndTime));set_attribute_value(4, (enumeration_reference(&::Ifc4x3_add1::IfcTimeSeriesDataTypeEnum::Class(),(size_t)v5_TimeSeriesDataType)));set_attribute_value(5, (enumeration_reference(&::Ifc4x3_add1::IfcDataOriginEnum::Class(),(size_t)v6_DataOrigin))); if (v7_UserDefinedDataOrigin) {set_attribute_value(6, (*v7_UserDefinedDataOrigin)); }set_attribute_value(7, (v8_Unit));; return *this; } // Function implementations for IfcTimeSeriesValue -std::vector< ::Ifc4x3_add1::IfcValue > Ifc4x3_add1::IfcTimeSeriesValue::ListValues() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3_add1::IfcValue>(es); } -void Ifc4x3_add1::IfcTimeSeriesValue::setListValues(const std::vector< ::Ifc4x3_add1::IfcValue >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } +std::vector< ::Ifc4x3_add1::IfcValue > Ifc4x3_add1::IfcTimeSeriesValue::ListValues() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3_add1::IfcValue>(es); } +void Ifc4x3_add1::IfcTimeSeriesValue::setListValues(const std::vector< ::Ifc4x3_add1::IfcValue >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } const ifcopenshell::entity& Ifc4x3_add1::IfcTimeSeriesValue::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[1212]); } -Ifc4x3_add1::IfcTimeSeriesValue Ifc4x3_add1::IfcTimeSeriesValue::initialize(std::vector< ::Ifc4x3_add1::IfcValue > v1_ListValues) { set_attribute_value(0, cast_vector(v1_ListValues));; return *this; } +Ifc4x3_add1::IfcTimeSeriesValue Ifc4x3_add1::IfcTimeSeriesValue::initialize(std::vector< ::Ifc4x3_add1::IfcValue > v1_ListValues) { set_attribute_value(0, cast_vector(v1_ListValues));; return *this; } // Function implementations for IfcTopologicalRepresentationItem @@ -15999,7 +15999,7 @@ Ifc4x3_add1::IfcTopologicalRepresentationItem Ifc4x3_add1::IfcTopologicalReprese const ifcopenshell::entity& Ifc4x3_add1::IfcTopologyRepresentation::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[1215]); } -Ifc4x3_add1::IfcTopologyRepresentation Ifc4x3_add1::IfcTopologyRepresentation::initialize(::Ifc4x3_add1::IfcRepresentationContext v1_ContextOfItems, std::optional< std::string > v2_RepresentationIdentifier, std::optional< std::string > v3_RepresentationType, std::vector< ::Ifc4x3_add1::IfcRepresentationItem > v4_Items) { set_attribute_value(0, (v1_ContextOfItems)); if (v2_RepresentationIdentifier) {set_attribute_value(1, (*v2_RepresentationIdentifier)); } if (v3_RepresentationType) {set_attribute_value(2, (*v3_RepresentationType)); }set_attribute_value(3, cast_vector(v4_Items));; return *this; } +Ifc4x3_add1::IfcTopologyRepresentation Ifc4x3_add1::IfcTopologyRepresentation::initialize(::Ifc4x3_add1::IfcRepresentationContext v1_ContextOfItems, std::optional< std::string > v2_RepresentationIdentifier, std::optional< std::string > v3_RepresentationType, std::vector< ::Ifc4x3_add1::IfcRepresentationItem > v4_Items) { set_attribute_value(0, (v1_ContextOfItems)); if (v2_RepresentationIdentifier) {set_attribute_value(1, (*v2_RepresentationIdentifier)); } if (v3_RepresentationType) {set_attribute_value(2, (*v3_RepresentationType)); }set_attribute_value(3, cast_vector(v4_Items));; return *this; } // Function implementations for IfcToroidalSurface double Ifc4x3_add1::IfcToroidalSurface::MajorRadius() const { double v = get_attribute_value(1); return v; } @@ -16025,7 +16025,7 @@ void Ifc4x3_add1::IfcTrackElementType::setPredefinedType(const ::Ifc4x3_add1::If const ifcopenshell::entity& Ifc4x3_add1::IfcTrackElementType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[1219]); } -Ifc4x3_add1::IfcTrackElementType Ifc4x3_add1::IfcTrackElementType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcTrackElementTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcTrackElementTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_add1::IfcTrackElementType Ifc4x3_add1::IfcTrackElementType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcTrackElementTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcTrackElementTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcTransformer std::optional< ::Ifc4x3_add1::IfcTransformerTypeEnum::Value > Ifc4x3_add1::IfcTransformer::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_add1::IfcTransformerTypeEnum::FromString(get_attribute_value(8)); } @@ -16041,7 +16041,7 @@ void Ifc4x3_add1::IfcTransformerType::setPredefinedType(const ::Ifc4x3_add1::Ifc const ifcopenshell::entity& Ifc4x3_add1::IfcTransformerType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[1222]); } -Ifc4x3_add1::IfcTransformerType Ifc4x3_add1::IfcTransformerType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcTransformerTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcTransformerTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_add1::IfcTransformerType Ifc4x3_add1::IfcTransformerType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcTransformerTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcTransformerTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcTransportElement std::optional< ::Ifc4x3_add1::IfcTransportElementTypeEnum::Value > Ifc4x3_add1::IfcTransportElement::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_add1::IfcTransportElementTypeEnum::FromString(get_attribute_value(8)); } @@ -16057,7 +16057,7 @@ void Ifc4x3_add1::IfcTransportElementType::setPredefinedType(const ::Ifc4x3_add1 const ifcopenshell::entity& Ifc4x3_add1::IfcTransportElementType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[1229]); } -Ifc4x3_add1::IfcTransportElementType Ifc4x3_add1::IfcTransportElementType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcTransportElementTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcTransportElementTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_add1::IfcTransportElementType Ifc4x3_add1::IfcTransportElementType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcTransportElementTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcTransportElementTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcTransportationDevice @@ -16069,7 +16069,7 @@ Ifc4x3_add1::IfcTransportationDevice Ifc4x3_add1::IfcTransportationDevice::initi const ifcopenshell::entity& Ifc4x3_add1::IfcTransportationDeviceType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[1227]); } -Ifc4x3_add1::IfcTransportationDeviceType Ifc4x3_add1::IfcTransportationDeviceType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } +Ifc4x3_add1::IfcTransportationDeviceType Ifc4x3_add1::IfcTransportationDeviceType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } // Function implementations for IfcTrapeziumProfileDef double Ifc4x3_add1::IfcTrapeziumProfileDef::BottomXDim() const { double v = get_attribute_value(3); return v; } @@ -16108,12 +16108,12 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcTriangulatedIrregularNetwork::Class( Ifc4x3_add1::IfcTriangulatedIrregularNetwork Ifc4x3_add1::IfcTriangulatedIrregularNetwork::initialize(::Ifc4x3_add1::IfcCartesianPointList3D v1_Coordinates, std::optional< std::vector< std::vector< double > > > v2_Normals, std::optional< bool > v3_Closed, std::vector< std::vector< int64_t > > v4_CoordIndex, std::optional< std::vector< int64_t > /*[1:?]*/ > v5_PnIndex, std::vector< int64_t > /*[1:?]*/ v6_Flags) { set_attribute_value(0, (v1_Coordinates)); if (v2_Normals) {set_attribute_value(1, (*v2_Normals)); } if (v3_Closed) {set_attribute_value(2, (*v3_Closed)); }set_attribute_value(3, (v4_CoordIndex)); if (v5_PnIndex) {set_attribute_value(4, (*v5_PnIndex)); }set_attribute_value(5, (v6_Flags));; return *this; } // Function implementations for IfcTrimmedCurve -::Ifc4x3_add1::IfcCurve Ifc4x3_add1::IfcTrimmedCurve::BasisCurve() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcCurve>(); } +::Ifc4x3_add1::IfcCurve Ifc4x3_add1::IfcTrimmedCurve::BasisCurve() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcCurve>(); } void Ifc4x3_add1::IfcTrimmedCurve::setBasisCurve(const ::Ifc4x3_add1::IfcCurve& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } -std::vector< ::Ifc4x3_add1::IfcTrimmingSelect > Ifc4x3_add1::IfcTrimmedCurve::Trim1() const { std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3_add1::IfcTrimmingSelect>(es); } -void Ifc4x3_add1::IfcTrimmedCurve::setTrim1(const std::vector< ::Ifc4x3_add1::IfcTrimmingSelect >& v) { set_attribute_value(1, cast_vector(v));if constexpr (false)unset_attribute_value(1); } -std::vector< ::Ifc4x3_add1::IfcTrimmingSelect > Ifc4x3_add1::IfcTrimmedCurve::Trim2() const { std::vector es = get_attribute_value(2); return cast_vector<::Ifc4x3_add1::IfcTrimmingSelect>(es); } -void Ifc4x3_add1::IfcTrimmedCurve::setTrim2(const std::vector< ::Ifc4x3_add1::IfcTrimmingSelect >& v) { set_attribute_value(2, cast_vector(v));if constexpr (false)unset_attribute_value(2); } +std::vector< ::Ifc4x3_add1::IfcTrimmingSelect > Ifc4x3_add1::IfcTrimmedCurve::Trim1() const { std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3_add1::IfcTrimmingSelect>(es); } +void Ifc4x3_add1::IfcTrimmedCurve::setTrim1(const std::vector< ::Ifc4x3_add1::IfcTrimmingSelect >& v) { set_attribute_value(1, cast_vector(v));if constexpr (false)unset_attribute_value(1); } +std::vector< ::Ifc4x3_add1::IfcTrimmingSelect > Ifc4x3_add1::IfcTrimmedCurve::Trim2() const { std::vector es = get_attribute_value(2); return cast_vector<::Ifc4x3_add1::IfcTrimmingSelect>(es); } +void Ifc4x3_add1::IfcTrimmedCurve::setTrim2(const std::vector< ::Ifc4x3_add1::IfcTrimmingSelect >& v) { set_attribute_value(2, cast_vector(v));if constexpr (false)unset_attribute_value(2); } bool Ifc4x3_add1::IfcTrimmedCurve::SenseAgreement() const { bool v = get_attribute_value(3); return v; } void Ifc4x3_add1::IfcTrimmedCurve::setSenseAgreement(const bool& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } ::Ifc4x3_add1::IfcTrimmingPreference::Value Ifc4x3_add1::IfcTrimmedCurve::MasterRepresentation() const { return ::Ifc4x3_add1::IfcTrimmingPreference::FromString(get_attribute_value(4)); } @@ -16121,7 +16121,7 @@ void Ifc4x3_add1::IfcTrimmedCurve::setMasterRepresentation(const ::Ifc4x3_add1:: const ifcopenshell::entity& Ifc4x3_add1::IfcTrimmedCurve::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[1234]); } -Ifc4x3_add1::IfcTrimmedCurve Ifc4x3_add1::IfcTrimmedCurve::initialize(::Ifc4x3_add1::IfcCurve v1_BasisCurve, std::vector< ::Ifc4x3_add1::IfcTrimmingSelect > v2_Trim1, std::vector< ::Ifc4x3_add1::IfcTrimmingSelect > v3_Trim2, bool v4_SenseAgreement, ::Ifc4x3_add1::IfcTrimmingPreference::Value v5_MasterRepresentation) { set_attribute_value(0, (v1_BasisCurve));set_attribute_value(1, cast_vector(v2_Trim1));set_attribute_value(2, cast_vector(v3_Trim2));set_attribute_value(3, (v4_SenseAgreement));set_attribute_value(4, (enumeration_reference(&::Ifc4x3_add1::IfcTrimmingPreference::Class(),(size_t)v5_MasterRepresentation)));; return *this; } +Ifc4x3_add1::IfcTrimmedCurve Ifc4x3_add1::IfcTrimmedCurve::initialize(::Ifc4x3_add1::IfcCurve v1_BasisCurve, std::vector< ::Ifc4x3_add1::IfcTrimmingSelect > v2_Trim1, std::vector< ::Ifc4x3_add1::IfcTrimmingSelect > v3_Trim2, bool v4_SenseAgreement, ::Ifc4x3_add1::IfcTrimmingPreference::Value v5_MasterRepresentation) { set_attribute_value(0, (v1_BasisCurve));set_attribute_value(1, cast_vector(v2_Trim1));set_attribute_value(2, cast_vector(v3_Trim2));set_attribute_value(3, (v4_SenseAgreement));set_attribute_value(4, (enumeration_reference(&::Ifc4x3_add1::IfcTrimmingPreference::Class(),(size_t)v5_MasterRepresentation)));; return *this; } // Function implementations for IfcTubeBundle std::optional< ::Ifc4x3_add1::IfcTubeBundleTypeEnum::Value > Ifc4x3_add1::IfcTubeBundle::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_add1::IfcTubeBundleTypeEnum::FromString(get_attribute_value(8)); } @@ -16137,18 +16137,18 @@ void Ifc4x3_add1::IfcTubeBundleType::setPredefinedType(const ::Ifc4x3_add1::IfcT const ifcopenshell::entity& Ifc4x3_add1::IfcTubeBundleType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[1239]); } -Ifc4x3_add1::IfcTubeBundleType Ifc4x3_add1::IfcTubeBundleType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcTubeBundleTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcTubeBundleTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_add1::IfcTubeBundleType Ifc4x3_add1::IfcTubeBundleType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcTubeBundleTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcTubeBundleTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcTypeObject std::optional< std::string > Ifc4x3_add1::IfcTypeObject::ApplicableOccurrence() const { if(get_attribute_value(4).isNull()) { return std::nullopt; } std::string v = get_attribute_value(4); return v; } void Ifc4x3_add1::IfcTypeObject::setApplicableOccurrence(const std::optional< std::string >& v) { if (v) {set_attribute_value(4, *v);} else {unset_attribute_value(4);} } -std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > Ifc4x3_add1::IfcTypeObject::HasPropertySets() const { if(get_attribute_value(5).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(5); return cast_vector<::Ifc4x3_add1::IfcPropertySetDefinition>(es); } -void Ifc4x3_add1::IfcTypeObject::setHasPropertySets(const std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > >& v) { if (v) {set_attribute_value(5, cast_vector(*v));} else {unset_attribute_value(5);} } +std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > Ifc4x3_add1::IfcTypeObject::HasPropertySets() const { if(get_attribute_value(5).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(5); return cast_vector<::Ifc4x3_add1::IfcPropertySetDefinition>(es); } +void Ifc4x3_add1::IfcTypeObject::setHasPropertySets(const std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > >& v) { if (v) {set_attribute_value(5, cast_vector(*v));} else {unset_attribute_value(5);} } std::vector<::Ifc4x3_add1::IfcRelDefinesByType> Ifc4x3_add1::IfcTypeObject::Types() const { return cast_vector(file()->get_inverse(data()->id(), IFC4X3_ADD1_types[935], 5)); } const ifcopenshell::entity& Ifc4x3_add1::IfcTypeObject::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[1241]); } -Ifc4x3_add1::IfcTypeObject Ifc4x3_add1::IfcTypeObject::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); }; return *this; } +Ifc4x3_add1::IfcTypeObject Ifc4x3_add1::IfcTypeObject::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); }; return *this; } // Function implementations for IfcTypeProcess std::optional< std::string > Ifc4x3_add1::IfcTypeProcess::Identification() const { if(get_attribute_value(6).isNull()) { return std::nullopt; } std::string v = get_attribute_value(6); return v; } @@ -16161,18 +16161,18 @@ void Ifc4x3_add1::IfcTypeProcess::setProcessType(const std::optional< std::strin std::vector<::Ifc4x3_add1::IfcRelAssignsToProcess> Ifc4x3_add1::IfcTypeProcess::OperatesOn() const { return cast_vector(file()->get_inverse(data()->id(), IFC4X3_ADD1_types[905], 6)); } const ifcopenshell::entity& Ifc4x3_add1::IfcTypeProcess::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[1242]); } -Ifc4x3_add1::IfcTypeProcess Ifc4x3_add1::IfcTypeProcess::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::string > v7_Identification, std::optional< std::string > v8_LongDescription, std::optional< std::string > v9_ProcessType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_Identification) {set_attribute_value(6, (*v7_Identification)); } if (v8_LongDescription) {set_attribute_value(7, (*v8_LongDescription)); } if (v9_ProcessType) {set_attribute_value(8, (*v9_ProcessType)); }; return *this; } +Ifc4x3_add1::IfcTypeProcess Ifc4x3_add1::IfcTypeProcess::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::string > v7_Identification, std::optional< std::string > v8_LongDescription, std::optional< std::string > v9_ProcessType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_Identification) {set_attribute_value(6, (*v7_Identification)); } if (v8_LongDescription) {set_attribute_value(7, (*v8_LongDescription)); } if (v9_ProcessType) {set_attribute_value(8, (*v9_ProcessType)); }; return *this; } // Function implementations for IfcTypeProduct -std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > Ifc4x3_add1::IfcTypeProduct::RepresentationMaps() const { if(get_attribute_value(6).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(6); return cast_vector<::Ifc4x3_add1::IfcRepresentationMap>(es); } -void Ifc4x3_add1::IfcTypeProduct::setRepresentationMaps(const std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > >& v) { if (v) {set_attribute_value(6, cast_vector(*v));} else {unset_attribute_value(6);} } +std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > Ifc4x3_add1::IfcTypeProduct::RepresentationMaps() const { if(get_attribute_value(6).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(6); return cast_vector<::Ifc4x3_add1::IfcRepresentationMap>(es); } +void Ifc4x3_add1::IfcTypeProduct::setRepresentationMaps(const std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > >& v) { if (v) {set_attribute_value(6, cast_vector(*v));} else {unset_attribute_value(6);} } std::optional< std::string > Ifc4x3_add1::IfcTypeProduct::Tag() const { if(get_attribute_value(7).isNull()) { return std::nullopt; } std::string v = get_attribute_value(7); return v; } void Ifc4x3_add1::IfcTypeProduct::setTag(const std::optional< std::string >& v) { if (v) {set_attribute_value(7, *v);} else {unset_attribute_value(7);} } std::vector<::Ifc4x3_add1::IfcRelAssignsToProduct> Ifc4x3_add1::IfcTypeProduct::ReferencedBy() const { return cast_vector(file()->get_inverse(data()->id(), IFC4X3_ADD1_types[906], 6)); } const ifcopenshell::entity& Ifc4x3_add1::IfcTypeProduct::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[1243]); } -Ifc4x3_add1::IfcTypeProduct Ifc4x3_add1::IfcTypeProduct::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); }; return *this; } +Ifc4x3_add1::IfcTypeProduct Ifc4x3_add1::IfcTypeProduct::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); }; return *this; } // Function implementations for IfcTypeResource std::optional< std::string > Ifc4x3_add1::IfcTypeResource::Identification() const { if(get_attribute_value(6).isNull()) { return std::nullopt; } std::string v = get_attribute_value(6); return v; } @@ -16185,7 +16185,7 @@ void Ifc4x3_add1::IfcTypeResource::setResourceType(const std::optional< std::str std::vector<::Ifc4x3_add1::IfcRelAssignsToResource> Ifc4x3_add1::IfcTypeResource::ResourceOf() const { return cast_vector(file()->get_inverse(data()->id(), IFC4X3_ADD1_types[907], 6)); } const ifcopenshell::entity& Ifc4x3_add1::IfcTypeResource::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[1244]); } -Ifc4x3_add1::IfcTypeResource Ifc4x3_add1::IfcTypeResource::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::string > v7_Identification, std::optional< std::string > v8_LongDescription, std::optional< std::string > v9_ResourceType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_Identification) {set_attribute_value(6, (*v7_Identification)); } if (v8_LongDescription) {set_attribute_value(7, (*v8_LongDescription)); } if (v9_ResourceType) {set_attribute_value(8, (*v9_ResourceType)); }; return *this; } +Ifc4x3_add1::IfcTypeResource Ifc4x3_add1::IfcTypeResource::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::string > v7_Identification, std::optional< std::string > v8_LongDescription, std::optional< std::string > v9_ResourceType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_Identification) {set_attribute_value(6, (*v7_Identification)); } if (v8_LongDescription) {set_attribute_value(7, (*v8_LongDescription)); } if (v9_ResourceType) {set_attribute_value(8, (*v9_ResourceType)); }; return *this; } // Function implementations for IfcUShapeProfileDef double Ifc4x3_add1::IfcUShapeProfileDef::Depth() const { double v = get_attribute_value(3); return v; } @@ -16208,12 +16208,12 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcUShapeProfileDef::Class() { return * Ifc4x3_add1::IfcUShapeProfileDef Ifc4x3_add1::IfcUShapeProfileDef::initialize(::Ifc4x3_add1::IfcProfileTypeEnum::Value v1_ProfileType, std::optional< std::string > v2_ProfileName, ::Ifc4x3_add1::IfcAxis2Placement2D v3_Position, double v4_Depth, double v5_FlangeWidth, double v6_WebThickness, double v7_FlangeThickness, std::optional< double > v8_FilletRadius, std::optional< double > v9_EdgeRadius, std::optional< double > v10_FlangeSlope) { set_attribute_value(0, (enumeration_reference(&::Ifc4x3_add1::IfcProfileTypeEnum::Class(),(size_t)v1_ProfileType))); if (v2_ProfileName) {set_attribute_value(1, (*v2_ProfileName)); }set_attribute_value(2, (v3_Position));set_attribute_value(3, (v4_Depth));set_attribute_value(4, (v5_FlangeWidth));set_attribute_value(5, (v6_WebThickness));set_attribute_value(6, (v7_FlangeThickness)); if (v8_FilletRadius) {set_attribute_value(7, (*v8_FilletRadius)); } if (v9_EdgeRadius) {set_attribute_value(8, (*v9_EdgeRadius)); } if (v10_FlangeSlope) {set_attribute_value(9, (*v10_FlangeSlope)); }; return *this; } // Function implementations for IfcUnitAssignment -std::vector< ::Ifc4x3_add1::IfcUnit > Ifc4x3_add1::IfcUnitAssignment::Units() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3_add1::IfcUnit>(es); } -void Ifc4x3_add1::IfcUnitAssignment::setUnits(const std::vector< ::Ifc4x3_add1::IfcUnit >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } +std::vector< ::Ifc4x3_add1::IfcUnit > Ifc4x3_add1::IfcUnitAssignment::Units() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3_add1::IfcUnit>(es); } +void Ifc4x3_add1::IfcUnitAssignment::setUnits(const std::vector< ::Ifc4x3_add1::IfcUnit >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } const ifcopenshell::entity& Ifc4x3_add1::IfcUnitAssignment::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[1252]); } -Ifc4x3_add1::IfcUnitAssignment Ifc4x3_add1::IfcUnitAssignment::initialize(std::vector< ::Ifc4x3_add1::IfcUnit > v1_Units) { set_attribute_value(0, cast_vector(v1_Units));; return *this; } +Ifc4x3_add1::IfcUnitAssignment Ifc4x3_add1::IfcUnitAssignment::initialize(std::vector< ::Ifc4x3_add1::IfcUnit > v1_Units) { set_attribute_value(0, cast_vector(v1_Units));; return *this; } // Function implementations for IfcUnitaryControlElement std::optional< ::Ifc4x3_add1::IfcUnitaryControlElementTypeEnum::Value > Ifc4x3_add1::IfcUnitaryControlElement::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_add1::IfcUnitaryControlElementTypeEnum::FromString(get_attribute_value(8)); } @@ -16229,7 +16229,7 @@ void Ifc4x3_add1::IfcUnitaryControlElementType::setPredefinedType(const ::Ifc4x3 const ifcopenshell::entity& Ifc4x3_add1::IfcUnitaryControlElementType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[1247]); } -Ifc4x3_add1::IfcUnitaryControlElementType Ifc4x3_add1::IfcUnitaryControlElementType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcUnitaryControlElementTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcUnitaryControlElementTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_add1::IfcUnitaryControlElementType Ifc4x3_add1::IfcUnitaryControlElementType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcUnitaryControlElementTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcUnitaryControlElementTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcUnitaryEquipment std::optional< ::Ifc4x3_add1::IfcUnitaryEquipmentTypeEnum::Value > Ifc4x3_add1::IfcUnitaryEquipment::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_add1::IfcUnitaryEquipmentTypeEnum::FromString(get_attribute_value(8)); } @@ -16245,7 +16245,7 @@ void Ifc4x3_add1::IfcUnitaryEquipmentType::setPredefinedType(const ::Ifc4x3_add1 const ifcopenshell::entity& Ifc4x3_add1::IfcUnitaryEquipmentType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[1250]); } -Ifc4x3_add1::IfcUnitaryEquipmentType Ifc4x3_add1::IfcUnitaryEquipmentType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcUnitaryEquipmentTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcUnitaryEquipmentTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_add1::IfcUnitaryEquipmentType Ifc4x3_add1::IfcUnitaryEquipmentType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcUnitaryEquipmentTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcUnitaryEquipmentTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcValve std::optional< ::Ifc4x3_add1::IfcValveTypeEnum::Value > Ifc4x3_add1::IfcValve::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_add1::IfcValveTypeEnum::FromString(get_attribute_value(8)); } @@ -16261,10 +16261,10 @@ void Ifc4x3_add1::IfcValveType::setPredefinedType(const ::Ifc4x3_add1::IfcValveT const ifcopenshell::entity& Ifc4x3_add1::IfcValveType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[1258]); } -Ifc4x3_add1::IfcValveType Ifc4x3_add1::IfcValveType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcValveTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcValveTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_add1::IfcValveType Ifc4x3_add1::IfcValveType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcValveTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcValveTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcVector -::Ifc4x3_add1::IfcDirection Ifc4x3_add1::IfcVector::Orientation() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcDirection>(); } +::Ifc4x3_add1::IfcDirection Ifc4x3_add1::IfcVector::Orientation() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcDirection>(); } void Ifc4x3_add1::IfcVector::setOrientation(const ::Ifc4x3_add1::IfcDirection& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } double Ifc4x3_add1::IfcVector::Magnitude() const { double v = get_attribute_value(1); return v; } void Ifc4x3_add1::IfcVector::setMagnitude(const double& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } @@ -16287,7 +16287,7 @@ void Ifc4x3_add1::IfcVehicleType::setPredefinedType(const ::Ifc4x3_add1::IfcVehi const ifcopenshell::entity& Ifc4x3_add1::IfcVehicleType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[1264]); } -Ifc4x3_add1::IfcVehicleType Ifc4x3_add1::IfcVehicleType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcVehicleTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcVehicleTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_add1::IfcVehicleType Ifc4x3_add1::IfcVehicleType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcVehicleTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcVehicleTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcVertex @@ -16296,7 +16296,7 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcVertex::Class() { return *((ifcopens Ifc4x3_add1::IfcVertex Ifc4x3_add1::IfcVertex::initialize() { ; return *this; } // Function implementations for IfcVertexLoop -::Ifc4x3_add1::IfcVertex Ifc4x3_add1::IfcVertexLoop::LoopVertex() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcVertex>(); } +::Ifc4x3_add1::IfcVertex Ifc4x3_add1::IfcVertexLoop::LoopVertex() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcVertex>(); } void Ifc4x3_add1::IfcVertexLoop::setLoopVertex(const ::Ifc4x3_add1::IfcVertex& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } @@ -16304,7 +16304,7 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcVertexLoop::Class() { return *((ifco Ifc4x3_add1::IfcVertexLoop Ifc4x3_add1::IfcVertexLoop::initialize(::Ifc4x3_add1::IfcVertex v1_LoopVertex) { set_attribute_value(0, (v1_LoopVertex));; return *this; } // Function implementations for IfcVertexPoint -::Ifc4x3_add1::IfcPoint Ifc4x3_add1::IfcVertexPoint::VertexGeometry() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcPoint>(); } +::Ifc4x3_add1::IfcPoint Ifc4x3_add1::IfcVertexPoint::VertexGeometry() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_add1::IfcPoint>(); } void Ifc4x3_add1::IfcVertexPoint::setVertexGeometry(const ::Ifc4x3_add1::IfcPoint& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } @@ -16325,7 +16325,7 @@ void Ifc4x3_add1::IfcVibrationDamperType::setPredefinedType(const ::Ifc4x3_add1: const ifcopenshell::entity& Ifc4x3_add1::IfcVibrationDamperType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[1270]); } -Ifc4x3_add1::IfcVibrationDamperType Ifc4x3_add1::IfcVibrationDamperType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcVibrationDamperTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcVibrationDamperTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_add1::IfcVibrationDamperType Ifc4x3_add1::IfcVibrationDamperType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcVibrationDamperTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcVibrationDamperTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcVibrationIsolator std::optional< ::Ifc4x3_add1::IfcVibrationIsolatorTypeEnum::Value > Ifc4x3_add1::IfcVibrationIsolator::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_add1::IfcVibrationIsolatorTypeEnum::FromString(get_attribute_value(8)); } @@ -16341,7 +16341,7 @@ void Ifc4x3_add1::IfcVibrationIsolatorType::setPredefinedType(const ::Ifc4x3_add const ifcopenshell::entity& Ifc4x3_add1::IfcVibrationIsolatorType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[1273]); } -Ifc4x3_add1::IfcVibrationIsolatorType Ifc4x3_add1::IfcVibrationIsolatorType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcVibrationIsolatorTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcVibrationIsolatorTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_add1::IfcVibrationIsolatorType Ifc4x3_add1::IfcVibrationIsolatorType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcVibrationIsolatorTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcVibrationIsolatorTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcVirtualElement std::optional< ::Ifc4x3_add1::IfcVirtualElementTypeEnum::Value > Ifc4x3_add1::IfcVirtualElement::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_add1::IfcVirtualElementTypeEnum::FromString(get_attribute_value(8)); } @@ -16352,14 +16352,14 @@ const ifcopenshell::entity& Ifc4x3_add1::IfcVirtualElement::Class() { return *(( Ifc4x3_add1::IfcVirtualElement Ifc4x3_add1::IfcVirtualElement::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, ::Ifc4x3_add1::IfcObjectPlacement v6_ObjectPlacement, ::Ifc4x3_add1::IfcProductRepresentation v7_Representation, std::optional< std::string > v8_Tag, std::optional< ::Ifc4x3_add1::IfcVirtualElementTypeEnum::Value > v9_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); }set_attribute_value(5, (v6_ObjectPlacement));set_attribute_value(6, (v7_Representation)); if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_PredefinedType) {set_attribute_value(8, (enumeration_reference(&::Ifc4x3_add1::IfcVirtualElementTypeEnum::Class(),(size_t)*v9_PredefinedType))); }; return *this; } // Function implementations for IfcVirtualGridIntersection -std::vector< ::Ifc4x3_add1::IfcGridAxis > Ifc4x3_add1::IfcVirtualGridIntersection::IntersectingAxes() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3_add1::IfcGridAxis>(es); } -void Ifc4x3_add1::IfcVirtualGridIntersection::setIntersectingAxes(const std::vector< ::Ifc4x3_add1::IfcGridAxis >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } +std::vector< ::Ifc4x3_add1::IfcGridAxis > Ifc4x3_add1::IfcVirtualGridIntersection::IntersectingAxes() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3_add1::IfcGridAxis>(es); } +void Ifc4x3_add1::IfcVirtualGridIntersection::setIntersectingAxes(const std::vector< ::Ifc4x3_add1::IfcGridAxis >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } std::vector< double > /*[2:3]*/ Ifc4x3_add1::IfcVirtualGridIntersection::OffsetDistances() const { std::vector< double > /*[2:3]*/ v = get_attribute_value(1); return v; } void Ifc4x3_add1::IfcVirtualGridIntersection::setOffsetDistances(const std::vector< double > /*[2:3]*/& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } const ifcopenshell::entity& Ifc4x3_add1::IfcVirtualGridIntersection::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[1277]); } -Ifc4x3_add1::IfcVirtualGridIntersection Ifc4x3_add1::IfcVirtualGridIntersection::initialize(std::vector< ::Ifc4x3_add1::IfcGridAxis > v1_IntersectingAxes, std::vector< double > /*[2:3]*/ v2_OffsetDistances) { set_attribute_value(0, cast_vector(v1_IntersectingAxes));set_attribute_value(1, (v2_OffsetDistances));; return *this; } +Ifc4x3_add1::IfcVirtualGridIntersection Ifc4x3_add1::IfcVirtualGridIntersection::initialize(std::vector< ::Ifc4x3_add1::IfcGridAxis > v1_IntersectingAxes, std::vector< double > /*[2:3]*/ v2_OffsetDistances) { set_attribute_value(0, cast_vector(v1_IntersectingAxes));set_attribute_value(1, (v2_OffsetDistances));; return *this; } // Function implementations for IfcVoidingFeature std::optional< ::Ifc4x3_add1::IfcVoidingFeatureTypeEnum::Value > Ifc4x3_add1::IfcVoidingFeature::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_add1::IfcVoidingFeatureTypeEnum::FromString(get_attribute_value(8)); } @@ -16389,7 +16389,7 @@ void Ifc4x3_add1::IfcWallType::setPredefinedType(const ::Ifc4x3_add1::IfcWallTyp const ifcopenshell::entity& Ifc4x3_add1::IfcWallType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[1284]); } -Ifc4x3_add1::IfcWallType Ifc4x3_add1::IfcWallType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcWallTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcWallTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_add1::IfcWallType Ifc4x3_add1::IfcWallType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcWallTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcWallTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcWasteTerminal std::optional< ::Ifc4x3_add1::IfcWasteTerminalTypeEnum::Value > Ifc4x3_add1::IfcWasteTerminal::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_add1::IfcWasteTerminalTypeEnum::FromString(get_attribute_value(8)); } @@ -16405,12 +16405,12 @@ void Ifc4x3_add1::IfcWasteTerminalType::setPredefinedType(const ::Ifc4x3_add1::I const ifcopenshell::entity& Ifc4x3_add1::IfcWasteTerminalType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[1290]); } -Ifc4x3_add1::IfcWasteTerminalType Ifc4x3_add1::IfcWasteTerminalType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcWasteTerminalTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcWasteTerminalTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_add1::IfcWasteTerminalType Ifc4x3_add1::IfcWasteTerminalType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcWasteTerminalTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcWasteTerminalTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcWellKnownText std::string Ifc4x3_add1::IfcWellKnownText::WellKnownText() const { std::string v = get_attribute_value(0); return v; } void Ifc4x3_add1::IfcWellKnownText::setWellKnownText(const std::string& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } -::Ifc4x3_add1::IfcCoordinateReferenceSystem Ifc4x3_add1::IfcWellKnownText::CoordinateReferenceSystem() const { return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3_add1::IfcCoordinateReferenceSystem>(); } +::Ifc4x3_add1::IfcCoordinateReferenceSystem Ifc4x3_add1::IfcWellKnownText::CoordinateReferenceSystem() const { return ((express::base)(get_attribute_value(1))).as<::Ifc4x3_add1::IfcCoordinateReferenceSystem>(); } void Ifc4x3_add1::IfcWellKnownText::setCoordinateReferenceSystem(const ::Ifc4x3_add1::IfcCoordinateReferenceSystem& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } @@ -16450,7 +16450,7 @@ std::optional< double > Ifc4x3_add1::IfcWindowLiningProperties::FirstMullionOffs void Ifc4x3_add1::IfcWindowLiningProperties::setFirstMullionOffset(const std::optional< double >& v) { if (v) {set_attribute_value(10, *v);} else {unset_attribute_value(10);} } std::optional< double > Ifc4x3_add1::IfcWindowLiningProperties::SecondMullionOffset() const { if(get_attribute_value(11).isNull()) { return std::nullopt; } double v = get_attribute_value(11); return v; } void Ifc4x3_add1::IfcWindowLiningProperties::setSecondMullionOffset(const std::optional< double >& v) { if (v) {set_attribute_value(11, *v);} else {unset_attribute_value(11);} } -::Ifc4x3_add1::IfcShapeAspect Ifc4x3_add1::IfcWindowLiningProperties::ShapeAspectStyle() const { if(get_attribute_value(12).isNull()) { return ::Ifc4x3_add1::IfcShapeAspect{}; } return ((express::Base)(get_attribute_value(12))).as<::Ifc4x3_add1::IfcShapeAspect>(); } +::Ifc4x3_add1::IfcShapeAspect Ifc4x3_add1::IfcWindowLiningProperties::ShapeAspectStyle() const { if(get_attribute_value(12).isNull()) { return ::Ifc4x3_add1::IfcShapeAspect{}; } return ((express::base)(get_attribute_value(12))).as<::Ifc4x3_add1::IfcShapeAspect>(); } void Ifc4x3_add1::IfcWindowLiningProperties::setShapeAspectStyle(const ::Ifc4x3_add1::IfcShapeAspect& v) { set_attribute_value(12, v);if constexpr (false)unset_attribute_value(12); } std::optional< double > Ifc4x3_add1::IfcWindowLiningProperties::LiningOffset() const { if(get_attribute_value(13).isNull()) { return std::nullopt; } double v = get_attribute_value(13); return v; } void Ifc4x3_add1::IfcWindowLiningProperties::setLiningOffset(const std::optional< double >& v) { if (v) {set_attribute_value(13, *v);} else {unset_attribute_value(13);} } @@ -16472,7 +16472,7 @@ std::optional< double > Ifc4x3_add1::IfcWindowPanelProperties::FrameDepth() cons void Ifc4x3_add1::IfcWindowPanelProperties::setFrameDepth(const std::optional< double >& v) { if (v) {set_attribute_value(6, *v);} else {unset_attribute_value(6);} } std::optional< double > Ifc4x3_add1::IfcWindowPanelProperties::FrameThickness() const { if(get_attribute_value(7).isNull()) { return std::nullopt; } double v = get_attribute_value(7); return v; } void Ifc4x3_add1::IfcWindowPanelProperties::setFrameThickness(const std::optional< double >& v) { if (v) {set_attribute_value(7, *v);} else {unset_attribute_value(7);} } -::Ifc4x3_add1::IfcShapeAspect Ifc4x3_add1::IfcWindowPanelProperties::ShapeAspectStyle() const { if(get_attribute_value(8).isNull()) { return ::Ifc4x3_add1::IfcShapeAspect{}; } return ((express::Base)(get_attribute_value(8))).as<::Ifc4x3_add1::IfcShapeAspect>(); } +::Ifc4x3_add1::IfcShapeAspect Ifc4x3_add1::IfcWindowPanelProperties::ShapeAspectStyle() const { if(get_attribute_value(8).isNull()) { return ::Ifc4x3_add1::IfcShapeAspect{}; } return ((express::base)(get_attribute_value(8))).as<::Ifc4x3_add1::IfcShapeAspect>(); } void Ifc4x3_add1::IfcWindowPanelProperties::setShapeAspectStyle(const ::Ifc4x3_add1::IfcShapeAspect& v) { set_attribute_value(8, v);if constexpr (false)unset_attribute_value(8); } @@ -16491,25 +16491,25 @@ void Ifc4x3_add1::IfcWindowType::setUserDefinedPartitioningType(const std::optio const ifcopenshell::entity& Ifc4x3_add1::IfcWindowType::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[1299]); } -Ifc4x3_add1::IfcWindowType Ifc4x3_add1::IfcWindowType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcWindowTypeEnum::Value v10_PredefinedType, ::Ifc4x3_add1::IfcWindowTypePartitioningEnum::Value v11_PartitioningType, std::optional< bool > v12_ParameterTakesPrecedence, std::optional< std::string > v13_UserDefinedPartitioningType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcWindowTypeEnum::Class(),(size_t)v10_PredefinedType)));set_attribute_value(10, (enumeration_reference(&::Ifc4x3_add1::IfcWindowTypePartitioningEnum::Class(),(size_t)v11_PartitioningType))); if (v12_ParameterTakesPrecedence) {set_attribute_value(11, (*v12_ParameterTakesPrecedence)); } if (v13_UserDefinedPartitioningType) {set_attribute_value(12, (*v13_UserDefinedPartitioningType)); }; return *this; } +Ifc4x3_add1::IfcWindowType Ifc4x3_add1::IfcWindowType::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_add1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_add1::IfcWindowTypeEnum::Value v10_PredefinedType, ::Ifc4x3_add1::IfcWindowTypePartitioningEnum::Value v11_PartitioningType, std::optional< bool > v12_ParameterTakesPrecedence, std::optional< std::string > v13_UserDefinedPartitioningType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_add1::IfcWindowTypeEnum::Class(),(size_t)v10_PredefinedType)));set_attribute_value(10, (enumeration_reference(&::Ifc4x3_add1::IfcWindowTypePartitioningEnum::Class(),(size_t)v11_PartitioningType))); if (v12_ParameterTakesPrecedence) {set_attribute_value(11, (*v12_ParameterTakesPrecedence)); } if (v13_UserDefinedPartitioningType) {set_attribute_value(12, (*v13_UserDefinedPartitioningType)); }; return *this; } // Function implementations for IfcWorkCalendar -std::optional< std::vector< ::Ifc4x3_add1::IfcWorkTime > > Ifc4x3_add1::IfcWorkCalendar::WorkingTimes() const { if(get_attribute_value(6).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(6); return cast_vector<::Ifc4x3_add1::IfcWorkTime>(es); } -void Ifc4x3_add1::IfcWorkCalendar::setWorkingTimes(const std::optional< std::vector< ::Ifc4x3_add1::IfcWorkTime > >& v) { if (v) {set_attribute_value(6, cast_vector(*v));} else {unset_attribute_value(6);} } -std::optional< std::vector< ::Ifc4x3_add1::IfcWorkTime > > Ifc4x3_add1::IfcWorkCalendar::ExceptionTimes() const { if(get_attribute_value(7).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(7); return cast_vector<::Ifc4x3_add1::IfcWorkTime>(es); } -void Ifc4x3_add1::IfcWorkCalendar::setExceptionTimes(const std::optional< std::vector< ::Ifc4x3_add1::IfcWorkTime > >& v) { if (v) {set_attribute_value(7, cast_vector(*v));} else {unset_attribute_value(7);} } +std::optional< std::vector< ::Ifc4x3_add1::IfcWorkTime > > Ifc4x3_add1::IfcWorkCalendar::WorkingTimes() const { if(get_attribute_value(6).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(6); return cast_vector<::Ifc4x3_add1::IfcWorkTime>(es); } +void Ifc4x3_add1::IfcWorkCalendar::setWorkingTimes(const std::optional< std::vector< ::Ifc4x3_add1::IfcWorkTime > >& v) { if (v) {set_attribute_value(6, cast_vector(*v));} else {unset_attribute_value(6);} } +std::optional< std::vector< ::Ifc4x3_add1::IfcWorkTime > > Ifc4x3_add1::IfcWorkCalendar::ExceptionTimes() const { if(get_attribute_value(7).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(7); return cast_vector<::Ifc4x3_add1::IfcWorkTime>(es); } +void Ifc4x3_add1::IfcWorkCalendar::setExceptionTimes(const std::optional< std::vector< ::Ifc4x3_add1::IfcWorkTime > >& v) { if (v) {set_attribute_value(7, cast_vector(*v));} else {unset_attribute_value(7);} } std::optional< ::Ifc4x3_add1::IfcWorkCalendarTypeEnum::Value > Ifc4x3_add1::IfcWorkCalendar::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_add1::IfcWorkCalendarTypeEnum::FromString(get_attribute_value(8)); } void Ifc4x3_add1::IfcWorkCalendar::setPredefinedType(const std::optional< ::Ifc4x3_add1::IfcWorkCalendarTypeEnum::Value >& v) { if (v) {set_attribute_value(8, enumeration_reference(&::Ifc4x3_add1::IfcWorkCalendarTypeEnum::Class(), (size_t) *v));} else {unset_attribute_value(8);} } const ifcopenshell::entity& Ifc4x3_add1::IfcWorkCalendar::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[1302]); } -Ifc4x3_add1::IfcWorkCalendar Ifc4x3_add1::IfcWorkCalendar::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, std::optional< std::string > v6_Identification, std::optional< std::vector< ::Ifc4x3_add1::IfcWorkTime > > v7_WorkingTimes, std::optional< std::vector< ::Ifc4x3_add1::IfcWorkTime > > v8_ExceptionTimes, std::optional< ::Ifc4x3_add1::IfcWorkCalendarTypeEnum::Value > v9_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); } if (v6_Identification) {set_attribute_value(5, (*v6_Identification)); } if (v7_WorkingTimes) {set_attribute_value(6, cast_vector(*v7_WorkingTimes)); } if (v8_ExceptionTimes) {set_attribute_value(7, cast_vector(*v8_ExceptionTimes)); } if (v9_PredefinedType) {set_attribute_value(8, (enumeration_reference(&::Ifc4x3_add1::IfcWorkCalendarTypeEnum::Class(),(size_t)*v9_PredefinedType))); }; return *this; } +Ifc4x3_add1::IfcWorkCalendar Ifc4x3_add1::IfcWorkCalendar::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, std::optional< std::string > v6_Identification, std::optional< std::vector< ::Ifc4x3_add1::IfcWorkTime > > v7_WorkingTimes, std::optional< std::vector< ::Ifc4x3_add1::IfcWorkTime > > v8_ExceptionTimes, std::optional< ::Ifc4x3_add1::IfcWorkCalendarTypeEnum::Value > v9_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); } if (v6_Identification) {set_attribute_value(5, (*v6_Identification)); } if (v7_WorkingTimes) {set_attribute_value(6, cast_vector(*v7_WorkingTimes)); } if (v8_ExceptionTimes) {set_attribute_value(7, cast_vector(*v8_ExceptionTimes)); } if (v9_PredefinedType) {set_attribute_value(8, (enumeration_reference(&::Ifc4x3_add1::IfcWorkCalendarTypeEnum::Class(),(size_t)*v9_PredefinedType))); }; return *this; } // Function implementations for IfcWorkControl std::string Ifc4x3_add1::IfcWorkControl::CreationDate() const { std::string v = get_attribute_value(6); return v; } void Ifc4x3_add1::IfcWorkControl::setCreationDate(const std::string& v) { set_attribute_value(6, v);if constexpr (false)unset_attribute_value(6); } -std::optional< std::vector< ::Ifc4x3_add1::IfcPerson > > Ifc4x3_add1::IfcWorkControl::Creators() const { if(get_attribute_value(7).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(7); return cast_vector<::Ifc4x3_add1::IfcPerson>(es); } -void Ifc4x3_add1::IfcWorkControl::setCreators(const std::optional< std::vector< ::Ifc4x3_add1::IfcPerson > >& v) { if (v) {set_attribute_value(7, cast_vector(*v));} else {unset_attribute_value(7);} } +std::optional< std::vector< ::Ifc4x3_add1::IfcPerson > > Ifc4x3_add1::IfcWorkControl::Creators() const { if(get_attribute_value(7).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(7); return cast_vector<::Ifc4x3_add1::IfcPerson>(es); } +void Ifc4x3_add1::IfcWorkControl::setCreators(const std::optional< std::vector< ::Ifc4x3_add1::IfcPerson > >& v) { if (v) {set_attribute_value(7, cast_vector(*v));} else {unset_attribute_value(7);} } std::optional< std::string > Ifc4x3_add1::IfcWorkControl::Purpose() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } std::string v = get_attribute_value(8); return v; } void Ifc4x3_add1::IfcWorkControl::setPurpose(const std::optional< std::string >& v) { if (v) {set_attribute_value(8, *v);} else {unset_attribute_value(8);} } std::optional< std::string > Ifc4x3_add1::IfcWorkControl::Duration() const { if(get_attribute_value(9).isNull()) { return std::nullopt; } std::string v = get_attribute_value(9); return v; } @@ -16523,7 +16523,7 @@ void Ifc4x3_add1::IfcWorkControl::setFinishTime(const std::optional< std::string const ifcopenshell::entity& Ifc4x3_add1::IfcWorkControl::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[1304]); } -Ifc4x3_add1::IfcWorkControl Ifc4x3_add1::IfcWorkControl::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, std::optional< std::string > v6_Identification, std::string v7_CreationDate, std::optional< std::vector< ::Ifc4x3_add1::IfcPerson > > v8_Creators, std::optional< std::string > v9_Purpose, std::optional< std::string > v10_Duration, std::optional< std::string > v11_TotalFloat, std::string v12_StartTime, std::optional< std::string > v13_FinishTime) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); } if (v6_Identification) {set_attribute_value(5, (*v6_Identification)); }set_attribute_value(6, (v7_CreationDate)); if (v8_Creators) {set_attribute_value(7, cast_vector(*v8_Creators)); } if (v9_Purpose) {set_attribute_value(8, (*v9_Purpose)); } if (v10_Duration) {set_attribute_value(9, (*v10_Duration)); } if (v11_TotalFloat) {set_attribute_value(10, (*v11_TotalFloat)); }set_attribute_value(11, (v12_StartTime)); if (v13_FinishTime) {set_attribute_value(12, (*v13_FinishTime)); }; return *this; } +Ifc4x3_add1::IfcWorkControl Ifc4x3_add1::IfcWorkControl::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, std::optional< std::string > v6_Identification, std::string v7_CreationDate, std::optional< std::vector< ::Ifc4x3_add1::IfcPerson > > v8_Creators, std::optional< std::string > v9_Purpose, std::optional< std::string > v10_Duration, std::optional< std::string > v11_TotalFloat, std::string v12_StartTime, std::optional< std::string > v13_FinishTime) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); } if (v6_Identification) {set_attribute_value(5, (*v6_Identification)); }set_attribute_value(6, (v7_CreationDate)); if (v8_Creators) {set_attribute_value(7, cast_vector(*v8_Creators)); } if (v9_Purpose) {set_attribute_value(8, (*v9_Purpose)); } if (v10_Duration) {set_attribute_value(9, (*v10_Duration)); } if (v11_TotalFloat) {set_attribute_value(10, (*v11_TotalFloat)); }set_attribute_value(11, (v12_StartTime)); if (v13_FinishTime) {set_attribute_value(12, (*v13_FinishTime)); }; return *this; } // Function implementations for IfcWorkPlan std::optional< ::Ifc4x3_add1::IfcWorkPlanTypeEnum::Value > Ifc4x3_add1::IfcWorkPlan::PredefinedType() const { if(get_attribute_value(13).isNull()) { return std::nullopt; } return ::Ifc4x3_add1::IfcWorkPlanTypeEnum::FromString(get_attribute_value(13)); } @@ -16531,7 +16531,7 @@ void Ifc4x3_add1::IfcWorkPlan::setPredefinedType(const std::optional< ::Ifc4x3_a const ifcopenshell::entity& Ifc4x3_add1::IfcWorkPlan::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[1305]); } -Ifc4x3_add1::IfcWorkPlan Ifc4x3_add1::IfcWorkPlan::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, std::optional< std::string > v6_Identification, std::string v7_CreationDate, std::optional< std::vector< ::Ifc4x3_add1::IfcPerson > > v8_Creators, std::optional< std::string > v9_Purpose, std::optional< std::string > v10_Duration, std::optional< std::string > v11_TotalFloat, std::string v12_StartTime, std::optional< std::string > v13_FinishTime, std::optional< ::Ifc4x3_add1::IfcWorkPlanTypeEnum::Value > v14_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); } if (v6_Identification) {set_attribute_value(5, (*v6_Identification)); }set_attribute_value(6, (v7_CreationDate)); if (v8_Creators) {set_attribute_value(7, cast_vector(*v8_Creators)); } if (v9_Purpose) {set_attribute_value(8, (*v9_Purpose)); } if (v10_Duration) {set_attribute_value(9, (*v10_Duration)); } if (v11_TotalFloat) {set_attribute_value(10, (*v11_TotalFloat)); }set_attribute_value(11, (v12_StartTime)); if (v13_FinishTime) {set_attribute_value(12, (*v13_FinishTime)); } if (v14_PredefinedType) {set_attribute_value(13, (enumeration_reference(&::Ifc4x3_add1::IfcWorkPlanTypeEnum::Class(),(size_t)*v14_PredefinedType))); }; return *this; } +Ifc4x3_add1::IfcWorkPlan Ifc4x3_add1::IfcWorkPlan::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, std::optional< std::string > v6_Identification, std::string v7_CreationDate, std::optional< std::vector< ::Ifc4x3_add1::IfcPerson > > v8_Creators, std::optional< std::string > v9_Purpose, std::optional< std::string > v10_Duration, std::optional< std::string > v11_TotalFloat, std::string v12_StartTime, std::optional< std::string > v13_FinishTime, std::optional< ::Ifc4x3_add1::IfcWorkPlanTypeEnum::Value > v14_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); } if (v6_Identification) {set_attribute_value(5, (*v6_Identification)); }set_attribute_value(6, (v7_CreationDate)); if (v8_Creators) {set_attribute_value(7, cast_vector(*v8_Creators)); } if (v9_Purpose) {set_attribute_value(8, (*v9_Purpose)); } if (v10_Duration) {set_attribute_value(9, (*v10_Duration)); } if (v11_TotalFloat) {set_attribute_value(10, (*v11_TotalFloat)); }set_attribute_value(11, (v12_StartTime)); if (v13_FinishTime) {set_attribute_value(12, (*v13_FinishTime)); } if (v14_PredefinedType) {set_attribute_value(13, (enumeration_reference(&::Ifc4x3_add1::IfcWorkPlanTypeEnum::Class(),(size_t)*v14_PredefinedType))); }; return *this; } // Function implementations for IfcWorkSchedule std::optional< ::Ifc4x3_add1::IfcWorkScheduleTypeEnum::Value > Ifc4x3_add1::IfcWorkSchedule::PredefinedType() const { if(get_attribute_value(13).isNull()) { return std::nullopt; } return ::Ifc4x3_add1::IfcWorkScheduleTypeEnum::FromString(get_attribute_value(13)); } @@ -16539,10 +16539,10 @@ void Ifc4x3_add1::IfcWorkSchedule::setPredefinedType(const std::optional< ::Ifc4 const ifcopenshell::entity& Ifc4x3_add1::IfcWorkSchedule::Class() { return *((ifcopenshell::entity*)IFC4X3_ADD1_types[1307]); } -Ifc4x3_add1::IfcWorkSchedule Ifc4x3_add1::IfcWorkSchedule::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, std::optional< std::string > v6_Identification, std::string v7_CreationDate, std::optional< std::vector< ::Ifc4x3_add1::IfcPerson > > v8_Creators, std::optional< std::string > v9_Purpose, std::optional< std::string > v10_Duration, std::optional< std::string > v11_TotalFloat, std::string v12_StartTime, std::optional< std::string > v13_FinishTime, std::optional< ::Ifc4x3_add1::IfcWorkScheduleTypeEnum::Value > v14_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); } if (v6_Identification) {set_attribute_value(5, (*v6_Identification)); }set_attribute_value(6, (v7_CreationDate)); if (v8_Creators) {set_attribute_value(7, cast_vector(*v8_Creators)); } if (v9_Purpose) {set_attribute_value(8, (*v9_Purpose)); } if (v10_Duration) {set_attribute_value(9, (*v10_Duration)); } if (v11_TotalFloat) {set_attribute_value(10, (*v11_TotalFloat)); }set_attribute_value(11, (v12_StartTime)); if (v13_FinishTime) {set_attribute_value(12, (*v13_FinishTime)); } if (v14_PredefinedType) {set_attribute_value(13, (enumeration_reference(&::Ifc4x3_add1::IfcWorkScheduleTypeEnum::Class(),(size_t)*v14_PredefinedType))); }; return *this; } +Ifc4x3_add1::IfcWorkSchedule Ifc4x3_add1::IfcWorkSchedule::initialize(std::string v1_GlobalId, ::Ifc4x3_add1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, std::optional< std::string > v6_Identification, std::string v7_CreationDate, std::optional< std::vector< ::Ifc4x3_add1::IfcPerson > > v8_Creators, std::optional< std::string > v9_Purpose, std::optional< std::string > v10_Duration, std::optional< std::string > v11_TotalFloat, std::string v12_StartTime, std::optional< std::string > v13_FinishTime, std::optional< ::Ifc4x3_add1::IfcWorkScheduleTypeEnum::Value > v14_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); } if (v6_Identification) {set_attribute_value(5, (*v6_Identification)); }set_attribute_value(6, (v7_CreationDate)); if (v8_Creators) {set_attribute_value(7, cast_vector(*v8_Creators)); } if (v9_Purpose) {set_attribute_value(8, (*v9_Purpose)); } if (v10_Duration) {set_attribute_value(9, (*v10_Duration)); } if (v11_TotalFloat) {set_attribute_value(10, (*v11_TotalFloat)); }set_attribute_value(11, (v12_StartTime)); if (v13_FinishTime) {set_attribute_value(12, (*v13_FinishTime)); } if (v14_PredefinedType) {set_attribute_value(13, (enumeration_reference(&::Ifc4x3_add1::IfcWorkScheduleTypeEnum::Class(),(size_t)*v14_PredefinedType))); }; return *this; } // Function implementations for IfcWorkTime -::Ifc4x3_add1::IfcRecurrencePattern Ifc4x3_add1::IfcWorkTime::RecurrencePattern() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3_add1::IfcRecurrencePattern{}; } return ((express::Base)(get_attribute_value(3))).as<::Ifc4x3_add1::IfcRecurrencePattern>(); } +::Ifc4x3_add1::IfcRecurrencePattern Ifc4x3_add1::IfcWorkTime::RecurrencePattern() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3_add1::IfcRecurrencePattern{}; } return ((express::base)(get_attribute_value(3))).as<::Ifc4x3_add1::IfcRecurrencePattern>(); } void Ifc4x3_add1::IfcWorkTime::setRecurrencePattern(const ::Ifc4x3_add1::IfcRecurrencePattern& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } std::optional< std::string > Ifc4x3_add1::IfcWorkTime::StartDate() const { if(get_attribute_value(4).isNull()) { return std::nullopt; } std::string v = get_attribute_value(4); return v; } void Ifc4x3_add1::IfcWorkTime::setStartDate(const std::optional< std::string >& v) { if (v) {set_attribute_value(4, *v);} else {unset_attribute_value(4);} } diff --git a/src/ifcparse/schemas/Ifc4x3_add1.h b/src/ifcparse/schemas/Ifc4x3_add1.h index 3600ef177c..be00d70ab6 100644 --- a/src/ifcparse/schemas/Ifc4x3_add1.h +++ b/src/ifcparse/schemas/Ifc4x3_add1.h @@ -65,28 +65,28 @@ class IfcActionRequest; class IfcActor; class IfcActorRole; class IfcActuator; c /// IfcOrganization An organization. /// IfcPerson A person. /// IfcPersonAndOrganization A person related to an organization. -class IFC_SCHEMA_API IfcActorSelect : public express::Select { +class IFC_SCHEMA_API IfcActorSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcOrganization as() const { return express::Base::as(); } + // IfcOrganization as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPerson as() const { return express::Base::as(); } + // IfcPerson as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPersonAndOrganization as() const { return express::Base::as(); } + // IfcPersonAndOrganization as() const { return express::base::as(); } - IfcActorSelect(const IfcOrganization& c) : express::Select(c) {}; + IfcActorSelect(const IfcOrganization& c) : express::select(c) {}; - IfcActorSelect(const IfcPerson& c) : express::Select(c) {}; + IfcActorSelect(const IfcPerson& c) : express::select(c) {}; - IfcActorSelect(const IfcPersonAndOrganization& c) : express::Select(c) {}; + IfcActorSelect(const IfcPersonAndOrganization& c) : express::select(c) {}; }; /// IfcAppliedValueSelect defines the selection of whether a value (expressed as a ratio) or an amount should be used as the value for an IfcAppliedValue. @@ -103,694 +103,694 @@ public: /// Selecting IfcMeasureWithUnit allows the specification of both the actual figure for the value together with the currency in which the value is represented. /// Selecting IfcMonetaryMeasure allows the specification only of the value, the currency being as set by the global context /// Selecting IfcRatioMeasure assumes that the amount is a percentage or other REAL number. Note that if the amount is normally specified as -20%, then this figure will need to be converted to a multiplier of 0.8 -class IFC_SCHEMA_API IfcAppliedValueSelect : public express::Select { +class IFC_SCHEMA_API IfcAppliedValueSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMeasureWithUnit as() const { return express::Base::as(); } + // IfcMeasureWithUnit as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcReference as() const { return express::Base::as(); } + // IfcReference as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcValue as() const { return express::Base::as(); } + // IfcValue as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcDerivedMeasureValue as() const { return express::Base::as(); } + // IfcDerivedMeasureValue as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcAbsorbedDoseMeasure as() const { return express::Base::as(); } + // IfcAbsorbedDoseMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcAccelerationMeasure as() const { return express::Base::as(); } + // IfcAccelerationMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcAngularVelocityMeasure as() const { return express::Base::as(); } + // IfcAngularVelocityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcAreaDensityMeasure as() const { return express::Base::as(); } + // IfcAreaDensityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcCompoundPlaneAngleMeasure as() const { return express::Base::as(); } + // IfcCompoundPlaneAngleMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcCurvatureMeasure as() const { return express::Base::as(); } + // IfcCurvatureMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcDoseEquivalentMeasure as() const { return express::Base::as(); } + // IfcDoseEquivalentMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcDynamicViscosityMeasure as() const { return express::Base::as(); } + // IfcDynamicViscosityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcElectricCapacitanceMeasure as() const { return express::Base::as(); } + // IfcElectricCapacitanceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcElectricChargeMeasure as() const { return express::Base::as(); } + // IfcElectricChargeMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcElectricConductanceMeasure as() const { return express::Base::as(); } + // IfcElectricConductanceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcElectricResistanceMeasure as() const { return express::Base::as(); } + // IfcElectricResistanceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcElectricVoltageMeasure as() const { return express::Base::as(); } + // IfcElectricVoltageMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcEnergyMeasure as() const { return express::Base::as(); } + // IfcEnergyMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcForceMeasure as() const { return express::Base::as(); } + // IfcForceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcFrequencyMeasure as() const { return express::Base::as(); } + // IfcFrequencyMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcHeatFluxDensityMeasure as() const { return express::Base::as(); } + // IfcHeatFluxDensityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcHeatingValueMeasure as() const { return express::Base::as(); } + // IfcHeatingValueMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcIlluminanceMeasure as() const { return express::Base::as(); } + // IfcIlluminanceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcInductanceMeasure as() const { return express::Base::as(); } + // IfcInductanceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcIntegerCountRateMeasure as() const { return express::Base::as(); } + // IfcIntegerCountRateMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcIonConcentrationMeasure as() const { return express::Base::as(); } + // IfcIonConcentrationMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcIsothermalMoistureCapacityMeasure as() const { return express::Base::as(); } + // IfcIsothermalMoistureCapacityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcKinematicViscosityMeasure as() const { return express::Base::as(); } + // IfcKinematicViscosityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLinearForceMeasure as() const { return express::Base::as(); } + // IfcLinearForceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLinearMomentMeasure as() const { return express::Base::as(); } + // IfcLinearMomentMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLinearStiffnessMeasure as() const { return express::Base::as(); } + // IfcLinearStiffnessMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLinearVelocityMeasure as() const { return express::Base::as(); } + // IfcLinearVelocityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLuminousFluxMeasure as() const { return express::Base::as(); } + // IfcLuminousFluxMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLuminousIntensityDistributionMeasure as() const { return express::Base::as(); } + // IfcLuminousIntensityDistributionMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMagneticFluxDensityMeasure as() const { return express::Base::as(); } + // IfcMagneticFluxDensityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMagneticFluxMeasure as() const { return express::Base::as(); } + // IfcMagneticFluxMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMassDensityMeasure as() const { return express::Base::as(); } + // IfcMassDensityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMassFlowRateMeasure as() const { return express::Base::as(); } + // IfcMassFlowRateMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMassPerLengthMeasure as() const { return express::Base::as(); } + // IfcMassPerLengthMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcModulusOfElasticityMeasure as() const { return express::Base::as(); } + // IfcModulusOfElasticityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcModulusOfLinearSubgradeReactionMeasure as() const { return express::Base::as(); } + // IfcModulusOfLinearSubgradeReactionMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcModulusOfRotationalSubgradeReactionMeasure as() const { return express::Base::as(); } + // IfcModulusOfRotationalSubgradeReactionMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcModulusOfSubgradeReactionMeasure as() const { return express::Base::as(); } + // IfcModulusOfSubgradeReactionMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMoistureDiffusivityMeasure as() const { return express::Base::as(); } + // IfcMoistureDiffusivityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMolecularWeightMeasure as() const { return express::Base::as(); } + // IfcMolecularWeightMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMomentOfInertiaMeasure as() const { return express::Base::as(); } + // IfcMomentOfInertiaMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMonetaryMeasure as() const { return express::Base::as(); } + // IfcMonetaryMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPHMeasure as() const { return express::Base::as(); } + // IfcPHMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPlanarForceMeasure as() const { return express::Base::as(); } + // IfcPlanarForceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPowerMeasure as() const { return express::Base::as(); } + // IfcPowerMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPressureMeasure as() const { return express::Base::as(); } + // IfcPressureMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcRadioActivityMeasure as() const { return express::Base::as(); } + // IfcRadioActivityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcRotationalFrequencyMeasure as() const { return express::Base::as(); } + // IfcRotationalFrequencyMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcRotationalMassMeasure as() const { return express::Base::as(); } + // IfcRotationalMassMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcRotationalStiffnessMeasure as() const { return express::Base::as(); } + // IfcRotationalStiffnessMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSectionModulusMeasure as() const { return express::Base::as(); } + // IfcSectionModulusMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSectionalAreaIntegralMeasure as() const { return express::Base::as(); } + // IfcSectionalAreaIntegralMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcShearModulusMeasure as() const { return express::Base::as(); } + // IfcShearModulusMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSoundPowerLevelMeasure as() const { return express::Base::as(); } + // IfcSoundPowerLevelMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSoundPowerMeasure as() const { return express::Base::as(); } + // IfcSoundPowerMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSoundPressureLevelMeasure as() const { return express::Base::as(); } + // IfcSoundPressureLevelMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSoundPressureMeasure as() const { return express::Base::as(); } + // IfcSoundPressureMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSpecificHeatCapacityMeasure as() const { return express::Base::as(); } + // IfcSpecificHeatCapacityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcTemperatureGradientMeasure as() const { return express::Base::as(); } + // IfcTemperatureGradientMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcTemperatureRateOfChangeMeasure as() const { return express::Base::as(); } + // IfcTemperatureRateOfChangeMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcThermalAdmittanceMeasure as() const { return express::Base::as(); } + // IfcThermalAdmittanceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcThermalConductivityMeasure as() const { return express::Base::as(); } + // IfcThermalConductivityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcThermalExpansionCoefficientMeasure as() const { return express::Base::as(); } + // IfcThermalExpansionCoefficientMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcThermalResistanceMeasure as() const { return express::Base::as(); } + // IfcThermalResistanceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcThermalTransmittanceMeasure as() const { return express::Base::as(); } + // IfcThermalTransmittanceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcTorqueMeasure as() const { return express::Base::as(); } + // IfcTorqueMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcVaporPermeabilityMeasure as() const { return express::Base::as(); } + // IfcVaporPermeabilityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcVolumetricFlowRateMeasure as() const { return express::Base::as(); } + // IfcVolumetricFlowRateMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcWarpingConstantMeasure as() const { return express::Base::as(); } + // IfcWarpingConstantMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcWarpingMomentMeasure as() const { return express::Base::as(); } + // IfcWarpingMomentMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMeasureValue as() const { return express::Base::as(); } + // IfcMeasureValue as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcAmountOfSubstanceMeasure as() const { return express::Base::as(); } + // IfcAmountOfSubstanceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcAreaMeasure as() const { return express::Base::as(); } + // IfcAreaMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcComplexNumber as() const { return express::Base::as(); } + // IfcComplexNumber as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcContextDependentMeasure as() const { return express::Base::as(); } + // IfcContextDependentMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcCountMeasure as() const { return express::Base::as(); } + // IfcCountMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcDescriptiveMeasure as() const { return express::Base::as(); } + // IfcDescriptiveMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcElectricCurrentMeasure as() const { return express::Base::as(); } + // IfcElectricCurrentMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLengthMeasure as() const { return express::Base::as(); } + // IfcLengthMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLuminousIntensityMeasure as() const { return express::Base::as(); } + // IfcLuminousIntensityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMassMeasure as() const { return express::Base::as(); } + // IfcMassMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcNonNegativeLengthMeasure as() const { return express::Base::as(); } + // IfcNonNegativeLengthMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcNormalisedRatioMeasure as() const { return express::Base::as(); } + // IfcNormalisedRatioMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcNumericMeasure as() const { return express::Base::as(); } + // IfcNumericMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcParameterValue as() const { return express::Base::as(); } + // IfcParameterValue as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPlaneAngleMeasure as() const { return express::Base::as(); } + // IfcPlaneAngleMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPositiveLengthMeasure as() const { return express::Base::as(); } + // IfcPositiveLengthMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPositivePlaneAngleMeasure as() const { return express::Base::as(); } + // IfcPositivePlaneAngleMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPositiveRatioMeasure as() const { return express::Base::as(); } + // IfcPositiveRatioMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcRatioMeasure as() const { return express::Base::as(); } + // IfcRatioMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSolidAngleMeasure as() const { return express::Base::as(); } + // IfcSolidAngleMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcThermodynamicTemperatureMeasure as() const { return express::Base::as(); } + // IfcThermodynamicTemperatureMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcTimeMeasure as() const { return express::Base::as(); } + // IfcTimeMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcVolumeMeasure as() const { return express::Base::as(); } + // IfcVolumeMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSimpleValue as() const { return express::Base::as(); } + // IfcSimpleValue as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcBinary as() const { return express::Base::as(); } + // IfcBinary as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcBoolean as() const { return express::Base::as(); } + // IfcBoolean as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcDate as() const { return express::Base::as(); } + // IfcDate as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcDateTime as() const { return express::Base::as(); } + // IfcDateTime as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcDuration as() const { return express::Base::as(); } + // IfcDuration as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcIdentifier as() const { return express::Base::as(); } + // IfcIdentifier as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcInteger as() const { return express::Base::as(); } + // IfcInteger as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLabel as() const { return express::Base::as(); } + // IfcLabel as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLogical as() const { return express::Base::as(); } + // IfcLogical as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPositiveInteger as() const { return express::Base::as(); } + // IfcPositiveInteger as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcReal as() const { return express::Base::as(); } + // IfcReal as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcText as() const { return express::Base::as(); } + // IfcText as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcTime as() const { return express::Base::as(); } + // IfcTime as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcTimeStamp as() const { return express::Base::as(); } + // IfcTimeStamp as() const { return express::base::as(); } - IfcAppliedValueSelect(const IfcMeasureWithUnit& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcMeasureWithUnit& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcReference& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcReference& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcValue& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcValue& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcDerivedMeasureValue& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcDerivedMeasureValue& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcAbsorbedDoseMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcAbsorbedDoseMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcAccelerationMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcAccelerationMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcAngularVelocityMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcAngularVelocityMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcAreaDensityMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcAreaDensityMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcCompoundPlaneAngleMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcCompoundPlaneAngleMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcCurvatureMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcCurvatureMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcDoseEquivalentMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcDoseEquivalentMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcDynamicViscosityMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcDynamicViscosityMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcElectricCapacitanceMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcElectricCapacitanceMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcElectricChargeMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcElectricChargeMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcElectricConductanceMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcElectricConductanceMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcElectricResistanceMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcElectricResistanceMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcElectricVoltageMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcElectricVoltageMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcEnergyMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcEnergyMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcForceMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcForceMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcFrequencyMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcFrequencyMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcHeatFluxDensityMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcHeatFluxDensityMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcHeatingValueMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcHeatingValueMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcIlluminanceMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcIlluminanceMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcInductanceMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcInductanceMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcIntegerCountRateMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcIntegerCountRateMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcIonConcentrationMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcIonConcentrationMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcIsothermalMoistureCapacityMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcIsothermalMoistureCapacityMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcKinematicViscosityMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcKinematicViscosityMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcLinearForceMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcLinearForceMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcLinearMomentMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcLinearMomentMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcLinearStiffnessMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcLinearStiffnessMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcLinearVelocityMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcLinearVelocityMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcLuminousFluxMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcLuminousFluxMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcLuminousIntensityDistributionMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcLuminousIntensityDistributionMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcMagneticFluxDensityMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcMagneticFluxDensityMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcMagneticFluxMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcMagneticFluxMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcMassDensityMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcMassDensityMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcMassFlowRateMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcMassFlowRateMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcMassPerLengthMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcMassPerLengthMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcModulusOfElasticityMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcModulusOfElasticityMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcModulusOfLinearSubgradeReactionMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcModulusOfLinearSubgradeReactionMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcModulusOfRotationalSubgradeReactionMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcModulusOfRotationalSubgradeReactionMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcModulusOfSubgradeReactionMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcModulusOfSubgradeReactionMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcMoistureDiffusivityMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcMoistureDiffusivityMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcMolecularWeightMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcMolecularWeightMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcMomentOfInertiaMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcMomentOfInertiaMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcMonetaryMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcMonetaryMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcPHMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcPHMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcPlanarForceMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcPlanarForceMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcPowerMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcPowerMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcPressureMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcPressureMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcRadioActivityMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcRadioActivityMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcRotationalFrequencyMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcRotationalFrequencyMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcRotationalMassMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcRotationalMassMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcRotationalStiffnessMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcRotationalStiffnessMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcSectionModulusMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcSectionModulusMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcSectionalAreaIntegralMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcSectionalAreaIntegralMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcShearModulusMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcShearModulusMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcSoundPowerLevelMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcSoundPowerLevelMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcSoundPowerMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcSoundPowerMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcSoundPressureLevelMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcSoundPressureLevelMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcSoundPressureMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcSoundPressureMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcSpecificHeatCapacityMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcSpecificHeatCapacityMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcTemperatureGradientMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcTemperatureGradientMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcTemperatureRateOfChangeMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcTemperatureRateOfChangeMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcThermalAdmittanceMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcThermalAdmittanceMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcThermalConductivityMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcThermalConductivityMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcThermalExpansionCoefficientMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcThermalExpansionCoefficientMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcThermalResistanceMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcThermalResistanceMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcThermalTransmittanceMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcThermalTransmittanceMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcTorqueMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcTorqueMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcVaporPermeabilityMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcVaporPermeabilityMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcVolumetricFlowRateMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcVolumetricFlowRateMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcWarpingConstantMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcWarpingConstantMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcWarpingMomentMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcWarpingMomentMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcMeasureValue& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcMeasureValue& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcAmountOfSubstanceMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcAmountOfSubstanceMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcAreaMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcAreaMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcComplexNumber& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcComplexNumber& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcContextDependentMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcContextDependentMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcCountMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcCountMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcDescriptiveMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcDescriptiveMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcElectricCurrentMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcElectricCurrentMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcLengthMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcLengthMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcLuminousIntensityMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcLuminousIntensityMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcMassMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcMassMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcNonNegativeLengthMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcNonNegativeLengthMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcNormalisedRatioMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcNormalisedRatioMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcNumericMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcNumericMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcParameterValue& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcParameterValue& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcPlaneAngleMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcPlaneAngleMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcPositiveLengthMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcPositiveLengthMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcPositivePlaneAngleMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcPositivePlaneAngleMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcPositiveRatioMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcPositiveRatioMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcRatioMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcRatioMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcSolidAngleMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcSolidAngleMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcThermodynamicTemperatureMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcThermodynamicTemperatureMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcTimeMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcTimeMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcVolumeMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcVolumeMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcSimpleValue& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcSimpleValue& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcBinary& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcBinary& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcBoolean& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcBoolean& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcDate& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcDate& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcDateTime& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcDateTime& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcDuration& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcDuration& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcIdentifier& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcIdentifier& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcInteger& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcInteger& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcLabel& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcLabel& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcLogical& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcLogical& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcPositiveInteger& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcPositiveInteger& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcReal& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcReal& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcText& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcText& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcTime& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcTime& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcTimeStamp& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcTimeStamp& c) : express::select(c) {}; }; /// Definition from ISO/CD 10303-42:1992: This select type collects together both versions of the placement as used in two dimensional or in three dimensional Cartesian space. This enables entities requiring this information to reference them without specifying the space dimensionality. @@ -798,43 +798,43 @@ public: /// NOTE: Corresponding STEP type: axis2_placement, please refer to ISO/IS 10303-42:1994, p. 19 for the final definition of the formal standard. /// /// HISTORY: New type in IFC Release 1.5 -class IFC_SCHEMA_API IfcAxis2Placement : public express::Select { +class IFC_SCHEMA_API IfcAxis2Placement : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcAxis2Placement2D as() const { return express::Base::as(); } + // IfcAxis2Placement2D as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcAxis2Placement3D as() const { return express::Base::as(); } + // IfcAxis2Placement3D as() const { return express::base::as(); } - IfcAxis2Placement(const IfcAxis2Placement2D& c) : express::Select(c) {}; + IfcAxis2Placement(const IfcAxis2Placement2D& c) : express::select(c) {}; - IfcAxis2Placement(const IfcAxis2Placement3D& c) : express::Select(c) {}; + IfcAxis2Placement(const IfcAxis2Placement3D& c) : express::select(c) {}; }; /// Definition from IAI: A select type for selecting between simple measure types for reinforcement bending parameters. /// /// HISTORY New type in IFC Release 2x4 -class IFC_SCHEMA_API IfcBendingParameterSelect : public express::Select { +class IFC_SCHEMA_API IfcBendingParameterSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLengthMeasure as() const { return express::Base::as(); } + // IfcLengthMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPlaneAngleMeasure as() const { return express::Base::as(); } + // IfcPlaneAngleMeasure as() const { return express::base::as(); } - IfcBendingParameterSelect(const IfcLengthMeasure& c) : express::Select(c) {}; + IfcBendingParameterSelect(const IfcLengthMeasure& c) : express::select(c) {}; - IfcBendingParameterSelect(const IfcPlaneAngleMeasure& c) : express::Select(c) {}; + IfcBendingParameterSelect(const IfcPlaneAngleMeasure& c) : express::select(c) {}; }; /// Definition from ISO/CD 10303-42:1992: This select type identifies @@ -853,40 +853,40 @@ public: /// (IfcSolidModel) are defined for being valid Boolean operands. /// /// HISTORY: New Type in IFC Release 1.5.1 -class IFC_SCHEMA_API IfcBooleanOperand : public express::Select { +class IFC_SCHEMA_API IfcBooleanOperand : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcBooleanResult as() const { return express::Base::as(); } + // IfcBooleanResult as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcCsgPrimitive3D as() const { return express::Base::as(); } + // IfcCsgPrimitive3D as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcHalfSpaceSolid as() const { return express::Base::as(); } + // IfcHalfSpaceSolid as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSolidModel as() const { return express::Base::as(); } + // IfcSolidModel as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcTessellatedFaceSet as() const { return express::Base::as(); } + // IfcTessellatedFaceSet as() const { return express::base::as(); } - IfcBooleanOperand(const IfcBooleanResult& c) : express::Select(c) {}; + IfcBooleanOperand(const IfcBooleanResult& c) : express::select(c) {}; - IfcBooleanOperand(const IfcCsgPrimitive3D& c) : express::Select(c) {}; + IfcBooleanOperand(const IfcCsgPrimitive3D& c) : express::select(c) {}; - IfcBooleanOperand(const IfcHalfSpaceSolid& c) : express::Select(c) {}; + IfcBooleanOperand(const IfcHalfSpaceSolid& c) : express::select(c) {}; - IfcBooleanOperand(const IfcSolidModel& c) : express::Select(c) {}; + IfcBooleanOperand(const IfcSolidModel& c) : express::select(c) {}; - IfcBooleanOperand(const IfcTessellatedFaceSet& c) : express::Select(c) {}; + IfcBooleanOperand(const IfcTessellatedFaceSet& c) : express::select(c) {}; }; /// IfcClassificationReferenceSelect enables selection of whether a classification reference is a subset of another classification reference or is a top level entry of a classification source. @@ -897,22 +897,22 @@ public: /// /// IfcClassification (for classification information) /// IfcClassificationReference (for reference into a classification source) -class IFC_SCHEMA_API IfcClassificationReferenceSelect : public express::Select { +class IFC_SCHEMA_API IfcClassificationReferenceSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcClassification as() const { return express::Base::as(); } + // IfcClassification as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcClassificationReference as() const { return express::Base::as(); } + // IfcClassificationReference as() const { return express::base::as(); } - IfcClassificationReferenceSelect(const IfcClassification& c) : express::Select(c) {}; + IfcClassificationReferenceSelect(const IfcClassification& c) : express::select(c) {}; - IfcClassificationReferenceSelect(const IfcClassificationReference& c) : express::Select(c) {}; + IfcClassificationReferenceSelect(const IfcClassificationReference& c) : express::select(c) {}; }; /// IfcClassificationSelect enables selection of whether a classification reference is to be referenced from an external source, or whether a classification is referenced as such. @@ -928,22 +928,22 @@ public: /// /// IfcClassification (for referencing a classification system) /// IfcClassificationReference (for referencing a classification item (or facet) inside a classification system) -class IFC_SCHEMA_API IfcClassificationSelect : public express::Select { +class IFC_SCHEMA_API IfcClassificationSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcClassification as() const { return express::Base::as(); } + // IfcClassification as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcClassificationReference as() const { return express::Base::as(); } + // IfcClassificationReference as() const { return express::base::as(); } - IfcClassificationSelect(const IfcClassification& c) : express::Select(c) {}; + IfcClassificationSelect(const IfcClassification& c) : express::select(c) {}; - IfcClassificationSelect(const IfcClassificationReference& c) : express::Select(c) {}; + IfcClassificationSelect(const IfcClassificationReference& c) : express::select(c) {}; }; /// Definition from ISO/CD 10303-46:1992: The colour entity defines a basic appearance of elements which shall be visualized in a picture. @@ -951,64 +951,64 @@ public: /// NOTE  Corresponding STEP name: colour. It has been made into a SELECT type in IFC to avoid multiple inheritance for pre defined colour. Please refer to ISO/IS 10303-46:1994, p. 138 for the final definition of the formal standard. /// /// HISTORY  New entity in IFC2x2. -class IFC_SCHEMA_API IfcColour : public express::Select { +class IFC_SCHEMA_API IfcColour : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcColourSpecification as() const { return express::Base::as(); } + // IfcColourSpecification as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPreDefinedColour as() const { return express::Base::as(); } + // IfcPreDefinedColour as() const { return express::base::as(); } - IfcColour(const IfcColourSpecification& c) : express::Select(c) {}; + IfcColour(const IfcColourSpecification& c) : express::select(c) {}; - IfcColour(const IfcPreDefinedColour& c) : express::Select(c) {}; + IfcColour(const IfcPreDefinedColour& c) : express::select(c) {}; }; /// The IfcColourOrFactor enables the selection of either a RGB colour value or a scalar factor value for the use as values of the reflectance components. /// /// HISTORY: New type in IFC2x2. -class IFC_SCHEMA_API IfcColourOrFactor : public express::Select { +class IFC_SCHEMA_API IfcColourOrFactor : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcColourRgb as() const { return express::Base::as(); } + // IfcColourRgb as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcNormalisedRatioMeasure as() const { return express::Base::as(); } + // IfcNormalisedRatioMeasure as() const { return express::base::as(); } - IfcColourOrFactor(const IfcColourRgb& c) : express::Select(c) {}; + IfcColourOrFactor(const IfcColourRgb& c) : express::select(c) {}; - IfcColourOrFactor(const IfcNormalisedRatioMeasure& c) : express::Select(c) {}; + IfcColourOrFactor(const IfcNormalisedRatioMeasure& c) : express::select(c) {}; }; /// IfcCoordinateReferenceSystemSelect is a select between either the local engineering coordinate system, represented by the IfcGeometricRepresentationContext, or another coordinate reference system, represented by IfcCoordinateReferenceSystem, to be the source of a coordinate operation. /// /// HISTORY  New select type in IFC2x4. -class IFC_SCHEMA_API IfcCoordinateReferenceSystemSelect : public express::Select { +class IFC_SCHEMA_API IfcCoordinateReferenceSystemSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcCoordinateReferenceSystem as() const { return express::Base::as(); } + // IfcCoordinateReferenceSystem as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcGeometricRepresentationContext as() const { return express::Base::as(); } + // IfcGeometricRepresentationContext as() const { return express::base::as(); } - IfcCoordinateReferenceSystemSelect(const IfcCoordinateReferenceSystem& c) : express::Select(c) {}; + IfcCoordinateReferenceSystemSelect(const IfcCoordinateReferenceSystem& c) : express::select(c) {}; - IfcCoordinateReferenceSystemSelect(const IfcGeometricRepresentationContext& c) : express::Select(c) {}; + IfcCoordinateReferenceSystemSelect(const IfcGeometricRepresentationContext& c) : express::select(c) {}; }; /// Definition from ISO/CD 10303-42:1992: This type identifies the types of entity which may be selected as the root of a CSG tree including a single CSG primitive as a special case. @@ -1017,22 +1017,22 @@ public: /// NOTE Corresponding ISO 10303-42 type: csg_select, please refer to ISO/IS 10303-42:1994, p.168 for the final definition of the formal standard. /// /// HISTORY New Type in IFC Release 1.5.1. -class IFC_SCHEMA_API IfcCsgSelect : public express::Select { +class IFC_SCHEMA_API IfcCsgSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcBooleanResult as() const { return express::Base::as(); } + // IfcBooleanResult as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcCsgPrimitive3D as() const { return express::Base::as(); } + // IfcCsgPrimitive3D as() const { return express::base::as(); } - IfcCsgSelect(const IfcBooleanResult& c) : express::Select(c) {}; + IfcCsgSelect(const IfcBooleanResult& c) : express::select(c) {}; - IfcCsgSelect(const IfcCsgPrimitive3D& c) : express::Select(c) {}; + IfcCsgSelect(const IfcCsgPrimitive3D& c) : express::select(c) {}; }; /// Definition from ISO/CD 10303-46:1992: The curve font or scaled curve font select is a selection of either a curve font style select (being either a predefined curve font or an explicitly defined curve font) or a curve style font and scaling. @@ -1040,78 +1040,78 @@ public: /// NOTE Corresponding ISO 10303 name: curve_font_or_scaled_curve_font_select. Please refer to ISO/IS 10303-46:1994 for the final definition of the formal standard. /// /// HISTORY New entity in IFC2x2. -class IFC_SCHEMA_API IfcCurveFontOrScaledCurveFontSelect : public express::Select { +class IFC_SCHEMA_API IfcCurveFontOrScaledCurveFontSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcCurveStyleFontAndScaling as() const { return express::Base::as(); } + // IfcCurveStyleFontAndScaling as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcCurveStyleFontSelect as() const { return express::Base::as(); } + // IfcCurveStyleFontSelect as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcCurveStyleFont as() const { return express::Base::as(); } + // IfcCurveStyleFont as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPreDefinedCurveFont as() const { return express::Base::as(); } + // IfcPreDefinedCurveFont as() const { return express::base::as(); } - IfcCurveFontOrScaledCurveFontSelect(const IfcCurveStyleFontAndScaling& c) : express::Select(c) {}; + IfcCurveFontOrScaledCurveFontSelect(const IfcCurveStyleFontAndScaling& c) : express::select(c) {}; - IfcCurveFontOrScaledCurveFontSelect(const IfcCurveStyleFontSelect& c) : express::Select(c) {}; + IfcCurveFontOrScaledCurveFontSelect(const IfcCurveStyleFontSelect& c) : express::select(c) {}; - IfcCurveFontOrScaledCurveFontSelect(const IfcCurveStyleFont& c) : express::Select(c) {}; + IfcCurveFontOrScaledCurveFontSelect(const IfcCurveStyleFont& c) : express::select(c) {}; - IfcCurveFontOrScaledCurveFontSelect(const IfcPreDefinedCurveFont& c) : express::Select(c) {}; + IfcCurveFontOrScaledCurveFontSelect(const IfcPreDefinedCurveFont& c) : express::select(c) {}; }; -class IFC_SCHEMA_API IfcCurveMeasureSelect : public express::Select { +class IFC_SCHEMA_API IfcCurveMeasureSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcNonNegativeLengthMeasure as() const { return express::Base::as(); } + // IfcNonNegativeLengthMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcParameterValue as() const { return express::Base::as(); } + // IfcParameterValue as() const { return express::base::as(); } - IfcCurveMeasureSelect(const IfcNonNegativeLengthMeasure& c) : express::Select(c) {}; + IfcCurveMeasureSelect(const IfcNonNegativeLengthMeasure& c) : express::select(c) {}; - IfcCurveMeasureSelect(const IfcParameterValue& c) : express::Select(c) {}; + IfcCurveMeasureSelect(const IfcParameterValue& c) : express::select(c) {}; }; -class IFC_SCHEMA_API IfcCurveOnSurface : public express::Select { +class IFC_SCHEMA_API IfcCurveOnSurface : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcCompositeCurveOnSurface as() const { return express::Base::as(); } + // IfcCompositeCurveOnSurface as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPcurve as() const { return express::Base::as(); } + // IfcPcurve as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSurfaceCurve as() const { return express::Base::as(); } + // IfcSurfaceCurve as() const { return express::base::as(); } - IfcCurveOnSurface(const IfcCompositeCurveOnSurface& c) : express::Select(c) {}; + IfcCurveOnSurface(const IfcCompositeCurveOnSurface& c) : express::select(c) {}; - IfcCurveOnSurface(const IfcPcurve& c) : express::Select(c) {}; + IfcCurveOnSurface(const IfcPcurve& c) : express::select(c) {}; - IfcCurveOnSurface(const IfcSurfaceCurve& c) : express::Select(c) {}; + IfcCurveOnSurface(const IfcSurfaceCurve& c) : express::select(c) {}; }; /// IfcCurveOrEdgeCurve provides the option to either select a geometric curve (IfcCurve @@ -1122,22 +1122,22 @@ public: /// IfcEdgeCurve /// /// HISTORY  New select type in IFC2x Edition 3. -class IFC_SCHEMA_API IfcCurveOrEdgeCurve : public express::Select { +class IFC_SCHEMA_API IfcCurveOrEdgeCurve : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcBoundedCurve as() const { return express::Base::as(); } + // IfcBoundedCurve as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcEdgeCurve as() const { return express::Base::as(); } + // IfcEdgeCurve as() const { return express::base::as(); } - IfcCurveOrEdgeCurve(const IfcBoundedCurve& c) : express::Select(c) {}; + IfcCurveOrEdgeCurve(const IfcBoundedCurve& c) : express::select(c) {}; - IfcCurveOrEdgeCurve(const IfcEdgeCurve& c) : express::Select(c) {}; + IfcCurveOrEdgeCurve(const IfcEdgeCurve& c) : express::select(c) {}; }; /// Definition from ISO/CD 10303-46:1992: The curve style font select is a selection of a curve style font or a predefined curve style font. @@ -1145,22 +1145,22 @@ public: /// NOTE Corresponding ISO 10303 name: curve_style_font_select. Please refer to ISO/IS 10303-46:1994 for the final definition of the formal standard. /// /// HISTORY New entity in IFC2x2. -class IFC_SCHEMA_API IfcCurveStyleFontSelect : public express::Select { +class IFC_SCHEMA_API IfcCurveStyleFontSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcCurveStyleFont as() const { return express::Base::as(); } + // IfcCurveStyleFont as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPreDefinedCurveFont as() const { return express::Base::as(); } + // IfcPreDefinedCurveFont as() const { return express::base::as(); } - IfcCurveStyleFontSelect(const IfcCurveStyleFont& c) : express::Select(c) {}; + IfcCurveStyleFontSelect(const IfcCurveStyleFont& c) : express::select(c) {}; - IfcCurveStyleFontSelect(const IfcPreDefinedCurveFont& c) : express::Select(c) {}; + IfcCurveStyleFontSelect(const IfcPreDefinedCurveFont& c) : express::select(c) {}; }; /// IfcDefinitionSelectprovides the option to either select an object or type object IfcObjectDefinition, or a property set template or property set, IfcPropertyDefinition. @@ -1170,22 +1170,22 @@ public: /// IfcPropertyDefinition /// /// HISTORY New select type in IFC2x4. -class IFC_SCHEMA_API IfcDefinitionSelect : public express::Select { +class IFC_SCHEMA_API IfcDefinitionSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcObjectDefinition as() const { return express::Base::as(); } + // IfcObjectDefinition as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPropertyDefinition as() const { return express::Base::as(); } + // IfcPropertyDefinition as() const { return express::base::as(); } - IfcDefinitionSelect(const IfcObjectDefinition& c) : express::Select(c) {}; + IfcDefinitionSelect(const IfcObjectDefinition& c) : express::select(c) {}; - IfcDefinitionSelect(const IfcPropertyDefinition& c) : express::Select(c) {}; + IfcDefinitionSelect(const IfcPropertyDefinition& c) : express::select(c) {}; }; /// IfcDerivedMeasureValue is a select type for selecting between derived measure types. @@ -1262,436 +1262,436 @@ public: /// HISTORY New type in IFC Release 2x. /// /// IFC2x4 change: added IfcTemperatureRateOfChangeMeasure. -class IFC_SCHEMA_API IfcDerivedMeasureValue : public express::Select { +class IFC_SCHEMA_API IfcDerivedMeasureValue : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcAbsorbedDoseMeasure as() const { return express::Base::as(); } + // IfcAbsorbedDoseMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcAccelerationMeasure as() const { return express::Base::as(); } + // IfcAccelerationMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcAngularVelocityMeasure as() const { return express::Base::as(); } + // IfcAngularVelocityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcAreaDensityMeasure as() const { return express::Base::as(); } + // IfcAreaDensityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcCompoundPlaneAngleMeasure as() const { return express::Base::as(); } + // IfcCompoundPlaneAngleMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcCurvatureMeasure as() const { return express::Base::as(); } + // IfcCurvatureMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcDoseEquivalentMeasure as() const { return express::Base::as(); } + // IfcDoseEquivalentMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcDynamicViscosityMeasure as() const { return express::Base::as(); } + // IfcDynamicViscosityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcElectricCapacitanceMeasure as() const { return express::Base::as(); } + // IfcElectricCapacitanceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcElectricChargeMeasure as() const { return express::Base::as(); } + // IfcElectricChargeMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcElectricConductanceMeasure as() const { return express::Base::as(); } + // IfcElectricConductanceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcElectricResistanceMeasure as() const { return express::Base::as(); } + // IfcElectricResistanceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcElectricVoltageMeasure as() const { return express::Base::as(); } + // IfcElectricVoltageMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcEnergyMeasure as() const { return express::Base::as(); } + // IfcEnergyMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcForceMeasure as() const { return express::Base::as(); } + // IfcForceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcFrequencyMeasure as() const { return express::Base::as(); } + // IfcFrequencyMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcHeatFluxDensityMeasure as() const { return express::Base::as(); } + // IfcHeatFluxDensityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcHeatingValueMeasure as() const { return express::Base::as(); } + // IfcHeatingValueMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcIlluminanceMeasure as() const { return express::Base::as(); } + // IfcIlluminanceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcInductanceMeasure as() const { return express::Base::as(); } + // IfcInductanceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcIntegerCountRateMeasure as() const { return express::Base::as(); } + // IfcIntegerCountRateMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcIonConcentrationMeasure as() const { return express::Base::as(); } + // IfcIonConcentrationMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcIsothermalMoistureCapacityMeasure as() const { return express::Base::as(); } + // IfcIsothermalMoistureCapacityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcKinematicViscosityMeasure as() const { return express::Base::as(); } + // IfcKinematicViscosityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLinearForceMeasure as() const { return express::Base::as(); } + // IfcLinearForceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLinearMomentMeasure as() const { return express::Base::as(); } + // IfcLinearMomentMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLinearStiffnessMeasure as() const { return express::Base::as(); } + // IfcLinearStiffnessMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLinearVelocityMeasure as() const { return express::Base::as(); } + // IfcLinearVelocityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLuminousFluxMeasure as() const { return express::Base::as(); } + // IfcLuminousFluxMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLuminousIntensityDistributionMeasure as() const { return express::Base::as(); } + // IfcLuminousIntensityDistributionMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMagneticFluxDensityMeasure as() const { return express::Base::as(); } + // IfcMagneticFluxDensityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMagneticFluxMeasure as() const { return express::Base::as(); } + // IfcMagneticFluxMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMassDensityMeasure as() const { return express::Base::as(); } + // IfcMassDensityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMassFlowRateMeasure as() const { return express::Base::as(); } + // IfcMassFlowRateMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMassPerLengthMeasure as() const { return express::Base::as(); } + // IfcMassPerLengthMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcModulusOfElasticityMeasure as() const { return express::Base::as(); } + // IfcModulusOfElasticityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcModulusOfLinearSubgradeReactionMeasure as() const { return express::Base::as(); } + // IfcModulusOfLinearSubgradeReactionMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcModulusOfRotationalSubgradeReactionMeasure as() const { return express::Base::as(); } + // IfcModulusOfRotationalSubgradeReactionMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcModulusOfSubgradeReactionMeasure as() const { return express::Base::as(); } + // IfcModulusOfSubgradeReactionMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMoistureDiffusivityMeasure as() const { return express::Base::as(); } + // IfcMoistureDiffusivityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMolecularWeightMeasure as() const { return express::Base::as(); } + // IfcMolecularWeightMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMomentOfInertiaMeasure as() const { return express::Base::as(); } + // IfcMomentOfInertiaMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMonetaryMeasure as() const { return express::Base::as(); } + // IfcMonetaryMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPHMeasure as() const { return express::Base::as(); } + // IfcPHMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPlanarForceMeasure as() const { return express::Base::as(); } + // IfcPlanarForceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPowerMeasure as() const { return express::Base::as(); } + // IfcPowerMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPressureMeasure as() const { return express::Base::as(); } + // IfcPressureMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcRadioActivityMeasure as() const { return express::Base::as(); } + // IfcRadioActivityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcRotationalFrequencyMeasure as() const { return express::Base::as(); } + // IfcRotationalFrequencyMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcRotationalMassMeasure as() const { return express::Base::as(); } + // IfcRotationalMassMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcRotationalStiffnessMeasure as() const { return express::Base::as(); } + // IfcRotationalStiffnessMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSectionModulusMeasure as() const { return express::Base::as(); } + // IfcSectionModulusMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSectionalAreaIntegralMeasure as() const { return express::Base::as(); } + // IfcSectionalAreaIntegralMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcShearModulusMeasure as() const { return express::Base::as(); } + // IfcShearModulusMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSoundPowerLevelMeasure as() const { return express::Base::as(); } + // IfcSoundPowerLevelMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSoundPowerMeasure as() const { return express::Base::as(); } + // IfcSoundPowerMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSoundPressureLevelMeasure as() const { return express::Base::as(); } + // IfcSoundPressureLevelMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSoundPressureMeasure as() const { return express::Base::as(); } + // IfcSoundPressureMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSpecificHeatCapacityMeasure as() const { return express::Base::as(); } + // IfcSpecificHeatCapacityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcTemperatureGradientMeasure as() const { return express::Base::as(); } + // IfcTemperatureGradientMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcTemperatureRateOfChangeMeasure as() const { return express::Base::as(); } + // IfcTemperatureRateOfChangeMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcThermalAdmittanceMeasure as() const { return express::Base::as(); } + // IfcThermalAdmittanceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcThermalConductivityMeasure as() const { return express::Base::as(); } + // IfcThermalConductivityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcThermalExpansionCoefficientMeasure as() const { return express::Base::as(); } + // IfcThermalExpansionCoefficientMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcThermalResistanceMeasure as() const { return express::Base::as(); } + // IfcThermalResistanceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcThermalTransmittanceMeasure as() const { return express::Base::as(); } + // IfcThermalTransmittanceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcTorqueMeasure as() const { return express::Base::as(); } + // IfcTorqueMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcVaporPermeabilityMeasure as() const { return express::Base::as(); } + // IfcVaporPermeabilityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcVolumetricFlowRateMeasure as() const { return express::Base::as(); } + // IfcVolumetricFlowRateMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcWarpingConstantMeasure as() const { return express::Base::as(); } + // IfcWarpingConstantMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcWarpingMomentMeasure as() const { return express::Base::as(); } + // IfcWarpingMomentMeasure as() const { return express::base::as(); } - IfcDerivedMeasureValue(const IfcAbsorbedDoseMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcAbsorbedDoseMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcAccelerationMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcAccelerationMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcAngularVelocityMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcAngularVelocityMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcAreaDensityMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcAreaDensityMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcCompoundPlaneAngleMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcCompoundPlaneAngleMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcCurvatureMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcCurvatureMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcDoseEquivalentMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcDoseEquivalentMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcDynamicViscosityMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcDynamicViscosityMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcElectricCapacitanceMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcElectricCapacitanceMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcElectricChargeMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcElectricChargeMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcElectricConductanceMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcElectricConductanceMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcElectricResistanceMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcElectricResistanceMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcElectricVoltageMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcElectricVoltageMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcEnergyMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcEnergyMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcForceMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcForceMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcFrequencyMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcFrequencyMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcHeatFluxDensityMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcHeatFluxDensityMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcHeatingValueMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcHeatingValueMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcIlluminanceMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcIlluminanceMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcInductanceMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcInductanceMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcIntegerCountRateMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcIntegerCountRateMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcIonConcentrationMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcIonConcentrationMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcIsothermalMoistureCapacityMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcIsothermalMoistureCapacityMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcKinematicViscosityMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcKinematicViscosityMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcLinearForceMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcLinearForceMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcLinearMomentMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcLinearMomentMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcLinearStiffnessMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcLinearStiffnessMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcLinearVelocityMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcLinearVelocityMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcLuminousFluxMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcLuminousFluxMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcLuminousIntensityDistributionMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcLuminousIntensityDistributionMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcMagneticFluxDensityMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcMagneticFluxDensityMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcMagneticFluxMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcMagneticFluxMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcMassDensityMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcMassDensityMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcMassFlowRateMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcMassFlowRateMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcMassPerLengthMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcMassPerLengthMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcModulusOfElasticityMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcModulusOfElasticityMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcModulusOfLinearSubgradeReactionMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcModulusOfLinearSubgradeReactionMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcModulusOfRotationalSubgradeReactionMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcModulusOfRotationalSubgradeReactionMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcModulusOfSubgradeReactionMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcModulusOfSubgradeReactionMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcMoistureDiffusivityMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcMoistureDiffusivityMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcMolecularWeightMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcMolecularWeightMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcMomentOfInertiaMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcMomentOfInertiaMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcMonetaryMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcMonetaryMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcPHMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcPHMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcPlanarForceMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcPlanarForceMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcPowerMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcPowerMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcPressureMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcPressureMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcRadioActivityMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcRadioActivityMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcRotationalFrequencyMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcRotationalFrequencyMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcRotationalMassMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcRotationalMassMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcRotationalStiffnessMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcRotationalStiffnessMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcSectionModulusMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcSectionModulusMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcSectionalAreaIntegralMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcSectionalAreaIntegralMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcShearModulusMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcShearModulusMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcSoundPowerLevelMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcSoundPowerLevelMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcSoundPowerMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcSoundPowerMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcSoundPressureLevelMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcSoundPressureLevelMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcSoundPressureMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcSoundPressureMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcSpecificHeatCapacityMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcSpecificHeatCapacityMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcTemperatureGradientMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcTemperatureGradientMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcTemperatureRateOfChangeMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcTemperatureRateOfChangeMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcThermalAdmittanceMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcThermalAdmittanceMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcThermalConductivityMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcThermalConductivityMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcThermalExpansionCoefficientMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcThermalExpansionCoefficientMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcThermalResistanceMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcThermalResistanceMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcThermalTransmittanceMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcThermalTransmittanceMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcTorqueMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcTorqueMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcVaporPermeabilityMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcVaporPermeabilityMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcVolumetricFlowRateMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcVolumetricFlowRateMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcWarpingConstantMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcWarpingConstantMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcWarpingMomentMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcWarpingMomentMeasure& c) : express::select(c) {}; }; /// IfcDocumentSelect enables selection of whether document information is to be contained within an IFC model or is to be referenced from an external source. @@ -1702,22 +1702,22 @@ public: /// /// IfcDocumentInformation (for "metadata" of an external document) /// IfcDocumentReference (for reference within a document) -class IFC_SCHEMA_API IfcDocumentSelect : public express::Select { +class IFC_SCHEMA_API IfcDocumentSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcDocumentInformation as() const { return express::Base::as(); } + // IfcDocumentInformation as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcDocumentReference as() const { return express::Base::as(); } + // IfcDocumentReference as() const { return express::base::as(); } - IfcDocumentSelect(const IfcDocumentInformation& c) : express::Select(c) {}; + IfcDocumentSelect(const IfcDocumentInformation& c) : express::select(c) {}; - IfcDocumentSelect(const IfcDocumentReference& c) : express::Select(c) {}; + IfcDocumentSelect(const IfcDocumentReference& c) : express::select(c) {}; }; /// Definition from ISO/CD 10303-46:1992: The fill style select is a selection between different fill area styles. @@ -1726,46 +1726,46 @@ public: /// the final definition of the formal standard. /// /// HISTORY New type in IFC2x2. -class IFC_SCHEMA_API IfcFillStyleSelect : public express::Select { +class IFC_SCHEMA_API IfcFillStyleSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcColour as() const { return express::Base::as(); } + // IfcColour as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcColourSpecification as() const { return express::Base::as(); } + // IfcColourSpecification as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPreDefinedColour as() const { return express::Base::as(); } + // IfcPreDefinedColour as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcExternallyDefinedHatchStyle as() const { return express::Base::as(); } + // IfcExternallyDefinedHatchStyle as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcFillAreaStyleHatching as() const { return express::Base::as(); } + // IfcFillAreaStyleHatching as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcFillAreaStyleTiles as() const { return express::Base::as(); } + // IfcFillAreaStyleTiles as() const { return express::base::as(); } - IfcFillStyleSelect(const IfcColour& c) : express::Select(c) {}; + IfcFillStyleSelect(const IfcColour& c) : express::select(c) {}; - IfcFillStyleSelect(const IfcColourSpecification& c) : express::Select(c) {}; + IfcFillStyleSelect(const IfcColourSpecification& c) : express::select(c) {}; - IfcFillStyleSelect(const IfcPreDefinedColour& c) : express::Select(c) {}; + IfcFillStyleSelect(const IfcPreDefinedColour& c) : express::select(c) {}; - IfcFillStyleSelect(const IfcExternallyDefinedHatchStyle& c) : express::Select(c) {}; + IfcFillStyleSelect(const IfcExternallyDefinedHatchStyle& c) : express::select(c) {}; - IfcFillStyleSelect(const IfcFillAreaStyleHatching& c) : express::Select(c) {}; + IfcFillStyleSelect(const IfcFillAreaStyleHatching& c) : express::select(c) {}; - IfcFillStyleSelect(const IfcFillAreaStyleTiles& c) : express::Select(c) {}; + IfcFillStyleSelect(const IfcFillAreaStyleTiles& c) : express::select(c) {}; }; /// Definition from ISO/CD 10303-42:1992: This select type identifies the types of entities which can occur in a geometric set. @@ -1773,28 +1773,28 @@ public: /// NOTE: Corresponding ISO 10303 type: geometric_set_select. Please refer to ISO/IS 10303-42:1994, p. 169 for the final definition of the formal standard. /// /// HISTORY: New type in IFC Release 2x. -class IFC_SCHEMA_API IfcGeometricSetSelect : public express::Select { +class IFC_SCHEMA_API IfcGeometricSetSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcCurve as() const { return express::Base::as(); } + // IfcCurve as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPoint as() const { return express::Base::as(); } + // IfcPoint as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSurface as() const { return express::Base::as(); } + // IfcSurface as() const { return express::base::as(); } - IfcGeometricSetSelect(const IfcCurve& c) : express::Select(c) {}; + IfcGeometricSetSelect(const IfcCurve& c) : express::select(c) {}; - IfcGeometricSetSelect(const IfcPoint& c) : express::Select(c) {}; + IfcGeometricSetSelect(const IfcPoint& c) : express::select(c) {}; - IfcGeometricSetSelect(const IfcSurface& c) : express::Select(c) {}; + IfcGeometricSetSelect(const IfcSurface& c) : express::select(c) {}; }; /// IfcGridPlacementDirectionSelect enables the choice of defining a grid placement be either an explicit direction, or by referencing a second grid intersection to provide the direction. @@ -1805,62 +1805,62 @@ public: /// IfcVirtualGridIntersection /// /// HISTORY New select type in IFC2x4. -class IFC_SCHEMA_API IfcGridPlacementDirectionSelect : public express::Select { +class IFC_SCHEMA_API IfcGridPlacementDirectionSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcDirection as() const { return express::Base::as(); } + // IfcDirection as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcVirtualGridIntersection as() const { return express::Base::as(); } + // IfcVirtualGridIntersection as() const { return express::base::as(); } - IfcGridPlacementDirectionSelect(const IfcDirection& c) : express::Select(c) {}; + IfcGridPlacementDirectionSelect(const IfcDirection& c) : express::select(c) {}; - IfcGridPlacementDirectionSelect(const IfcVirtualGridIntersection& c) : express::Select(c) {}; + IfcGridPlacementDirectionSelect(const IfcVirtualGridIntersection& c) : express::select(c) {}; }; /// The IfcHatchLineDistanceSelect is a selection between different ways to determine the distance and potentially start point of hatch lines, either by an offset distance length measure or by a vector. /// /// HISTORY  New type in IFC2x3. -class IFC_SCHEMA_API IfcHatchLineDistanceSelect : public express::Select { +class IFC_SCHEMA_API IfcHatchLineDistanceSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPositiveLengthMeasure as() const { return express::Base::as(); } + // IfcPositiveLengthMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcVector as() const { return express::Base::as(); } + // IfcVector as() const { return express::base::as(); } - IfcHatchLineDistanceSelect(const IfcPositiveLengthMeasure& c) : express::Select(c) {}; + IfcHatchLineDistanceSelect(const IfcPositiveLengthMeasure& c) : express::select(c) {}; - IfcHatchLineDistanceSelect(const IfcVector& c) : express::Select(c) {}; + IfcHatchLineDistanceSelect(const IfcVector& c) : express::select(c) {}; }; -class IFC_SCHEMA_API IfcInterferenceSelect : public express::Select { +class IFC_SCHEMA_API IfcInterferenceSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcElement as() const { return express::Base::as(); } + // IfcElement as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSpatialElement as() const { return express::Base::as(); } + // IfcSpatialElement as() const { return express::base::as(); } - IfcInterferenceSelect(const IfcElement& c) : express::Select(c) {}; + IfcInterferenceSelect(const IfcElement& c) : express::select(c) {}; - IfcInterferenceSelect(const IfcSpatialElement& c) : express::Select(c) {}; + IfcInterferenceSelect(const IfcSpatialElement& c) : express::select(c) {}; }; /// Definition from ISO/CD 10303-46:1992: The layered things type selects those things, which can be grouped in layers. @@ -1870,22 +1870,22 @@ public: /// NOTE: Corresponding ISO 10303 name: layered_item. It was called layered_things in the ISO/CD version and had been renamed to layered_item in the ISO/IS final version. Please refer to ISO/IS 10303-46:1994, p. 13 for the final definition of the formal standard. /// /// HISTORY: New type in IFC2x2. -class IFC_SCHEMA_API IfcLayeredItem : public express::Select { +class IFC_SCHEMA_API IfcLayeredItem : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcRepresentation as() const { return express::Base::as(); } + // IfcRepresentation as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcRepresentationItem as() const { return express::Base::as(); } + // IfcRepresentationItem as() const { return express::base::as(); } - IfcLayeredItem(const IfcRepresentation& c) : express::Select(c) {}; + IfcLayeredItem(const IfcRepresentation& c) : express::select(c) {}; - IfcLayeredItem(const IfcRepresentationItem& c) : express::Select(c) {}; + IfcLayeredItem(const IfcRepresentationItem& c) : express::select(c) {}; }; /// IfcLibrarySelect enables selection of whether library information is to be contained within an IFC model or is to be referenced from an external source. @@ -1898,22 +1898,22 @@ public: /// IfcLibraryReference (for reference into a library of information by location) /// /// Generally, it is expected that selection will be IfcLibraryReference and only rarely IfcLibraryInformation. IfcLibraryInformation should only be selected in circumstances where there could be a need to indicate the libraries that will be used without making individual references. This may occur for higher level objects such as a project or building. -class IFC_SCHEMA_API IfcLibrarySelect : public express::Select { +class IFC_SCHEMA_API IfcLibrarySelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLibraryInformation as() const { return express::Base::as(); } + // IfcLibraryInformation as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLibraryReference as() const { return express::Base::as(); } + // IfcLibraryReference as() const { return express::base::as(); } - IfcLibrarySelect(const IfcLibraryInformation& c) : express::Select(c) {}; + IfcLibrarySelect(const IfcLibraryInformation& c) : express::select(c) {}; - IfcLibrarySelect(const IfcLibraryReference& c) : express::Select(c) {}; + IfcLibrarySelect(const IfcLibraryReference& c) : express::select(c) {}; }; /// A goniometric light gets its intensity distribution function (how much light goes in any one direction) from one of two sources: (i) an industry-standard file, (ii) from distribution data passed directly via the IfcLightIntensityDistribution. @@ -1938,22 +1938,22 @@ public: /// directions covers all cases. /// /// HISTORY New type in IFC2x2. -class IFC_SCHEMA_API IfcLightDistributionDataSourceSelect : public express::Select { +class IFC_SCHEMA_API IfcLightDistributionDataSourceSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcExternalReference as() const { return express::Base::as(); } + // IfcExternalReference as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLightIntensityDistribution as() const { return express::Base::as(); } + // IfcLightIntensityDistribution as() const { return express::base::as(); } - IfcLightDistributionDataSourceSelect(const IfcExternalReference& c) : express::Select(c) {}; + IfcLightDistributionDataSourceSelect(const IfcExternalReference& c) : express::select(c) {}; - IfcLightDistributionDataSourceSelect(const IfcLightIntensityDistribution& c) : express::Select(c) {}; + IfcLightDistributionDataSourceSelect(const IfcLightIntensityDistribution& c) : express::select(c) {}; }; /// IfcMaterialSelect provides selection of either a material @@ -1982,28 +1982,28 @@ public: /// /// IFC2x4 CHANGE The select now includes two new abstract entities IfcMaterialDefinition /// and IfcMaterialUsageDefinition with upward compatibility. The use of IfcMaterialList is deprecated from IFC2x4 onwards. -class IFC_SCHEMA_API IfcMaterialSelect : public express::Select { +class IFC_SCHEMA_API IfcMaterialSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMaterialDefinition as() const { return express::Base::as(); } + // IfcMaterialDefinition as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMaterialList as() const { return express::Base::as(); } + // IfcMaterialList as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMaterialUsageDefinition as() const { return express::Base::as(); } + // IfcMaterialUsageDefinition as() const { return express::base::as(); } - IfcMaterialSelect(const IfcMaterialDefinition& c) : express::Select(c) {}; + IfcMaterialSelect(const IfcMaterialDefinition& c) : express::select(c) {}; - IfcMaterialSelect(const IfcMaterialList& c) : express::Select(c) {}; + IfcMaterialSelect(const IfcMaterialList& c) : express::select(c) {}; - IfcMaterialSelect(const IfcMaterialUsageDefinition& c) : express::Select(c) {}; + IfcMaterialSelect(const IfcMaterialUsageDefinition& c) : express::select(c) {}; }; /// Definition from ISO/CD 10303-41:1992: A measure value is a value as defined in ISO 31-0 (clause 2). @@ -2015,148 +2015,148 @@ public: /// HISTORY New type in IFC Release 1.5.1. /// /// IFC 2x4 change: added IfcNonNegativeLengthMeasure -class IFC_SCHEMA_API IfcMeasureValue : public express::Select { +class IFC_SCHEMA_API IfcMeasureValue : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcAmountOfSubstanceMeasure as() const { return express::Base::as(); } + // IfcAmountOfSubstanceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcAreaMeasure as() const { return express::Base::as(); } + // IfcAreaMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcComplexNumber as() const { return express::Base::as(); } + // IfcComplexNumber as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcContextDependentMeasure as() const { return express::Base::as(); } + // IfcContextDependentMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcCountMeasure as() const { return express::Base::as(); } + // IfcCountMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcDescriptiveMeasure as() const { return express::Base::as(); } + // IfcDescriptiveMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcElectricCurrentMeasure as() const { return express::Base::as(); } + // IfcElectricCurrentMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLengthMeasure as() const { return express::Base::as(); } + // IfcLengthMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLuminousIntensityMeasure as() const { return express::Base::as(); } + // IfcLuminousIntensityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMassMeasure as() const { return express::Base::as(); } + // IfcMassMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcNonNegativeLengthMeasure as() const { return express::Base::as(); } + // IfcNonNegativeLengthMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcNormalisedRatioMeasure as() const { return express::Base::as(); } + // IfcNormalisedRatioMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcNumericMeasure as() const { return express::Base::as(); } + // IfcNumericMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcParameterValue as() const { return express::Base::as(); } + // IfcParameterValue as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPlaneAngleMeasure as() const { return express::Base::as(); } + // IfcPlaneAngleMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPositiveLengthMeasure as() const { return express::Base::as(); } + // IfcPositiveLengthMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPositivePlaneAngleMeasure as() const { return express::Base::as(); } + // IfcPositivePlaneAngleMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPositiveRatioMeasure as() const { return express::Base::as(); } + // IfcPositiveRatioMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcRatioMeasure as() const { return express::Base::as(); } + // IfcRatioMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSolidAngleMeasure as() const { return express::Base::as(); } + // IfcSolidAngleMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcThermodynamicTemperatureMeasure as() const { return express::Base::as(); } + // IfcThermodynamicTemperatureMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcTimeMeasure as() const { return express::Base::as(); } + // IfcTimeMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcVolumeMeasure as() const { return express::Base::as(); } + // IfcVolumeMeasure as() const { return express::base::as(); } - IfcMeasureValue(const IfcAmountOfSubstanceMeasure& c) : express::Select(c) {}; + IfcMeasureValue(const IfcAmountOfSubstanceMeasure& c) : express::select(c) {}; - IfcMeasureValue(const IfcAreaMeasure& c) : express::Select(c) {}; + IfcMeasureValue(const IfcAreaMeasure& c) : express::select(c) {}; - IfcMeasureValue(const IfcComplexNumber& c) : express::Select(c) {}; + IfcMeasureValue(const IfcComplexNumber& c) : express::select(c) {}; - IfcMeasureValue(const IfcContextDependentMeasure& c) : express::Select(c) {}; + IfcMeasureValue(const IfcContextDependentMeasure& c) : express::select(c) {}; - IfcMeasureValue(const IfcCountMeasure& c) : express::Select(c) {}; + IfcMeasureValue(const IfcCountMeasure& c) : express::select(c) {}; - IfcMeasureValue(const IfcDescriptiveMeasure& c) : express::Select(c) {}; + IfcMeasureValue(const IfcDescriptiveMeasure& c) : express::select(c) {}; - IfcMeasureValue(const IfcElectricCurrentMeasure& c) : express::Select(c) {}; + IfcMeasureValue(const IfcElectricCurrentMeasure& c) : express::select(c) {}; - IfcMeasureValue(const IfcLengthMeasure& c) : express::Select(c) {}; + IfcMeasureValue(const IfcLengthMeasure& c) : express::select(c) {}; - IfcMeasureValue(const IfcLuminousIntensityMeasure& c) : express::Select(c) {}; + IfcMeasureValue(const IfcLuminousIntensityMeasure& c) : express::select(c) {}; - IfcMeasureValue(const IfcMassMeasure& c) : express::Select(c) {}; + IfcMeasureValue(const IfcMassMeasure& c) : express::select(c) {}; - IfcMeasureValue(const IfcNonNegativeLengthMeasure& c) : express::Select(c) {}; + IfcMeasureValue(const IfcNonNegativeLengthMeasure& c) : express::select(c) {}; - IfcMeasureValue(const IfcNormalisedRatioMeasure& c) : express::Select(c) {}; + IfcMeasureValue(const IfcNormalisedRatioMeasure& c) : express::select(c) {}; - IfcMeasureValue(const IfcNumericMeasure& c) : express::Select(c) {}; + IfcMeasureValue(const IfcNumericMeasure& c) : express::select(c) {}; - IfcMeasureValue(const IfcParameterValue& c) : express::Select(c) {}; + IfcMeasureValue(const IfcParameterValue& c) : express::select(c) {}; - IfcMeasureValue(const IfcPlaneAngleMeasure& c) : express::Select(c) {}; + IfcMeasureValue(const IfcPlaneAngleMeasure& c) : express::select(c) {}; - IfcMeasureValue(const IfcPositiveLengthMeasure& c) : express::Select(c) {}; + IfcMeasureValue(const IfcPositiveLengthMeasure& c) : express::select(c) {}; - IfcMeasureValue(const IfcPositivePlaneAngleMeasure& c) : express::Select(c) {}; + IfcMeasureValue(const IfcPositivePlaneAngleMeasure& c) : express::select(c) {}; - IfcMeasureValue(const IfcPositiveRatioMeasure& c) : express::Select(c) {}; + IfcMeasureValue(const IfcPositiveRatioMeasure& c) : express::select(c) {}; - IfcMeasureValue(const IfcRatioMeasure& c) : express::Select(c) {}; + IfcMeasureValue(const IfcRatioMeasure& c) : express::select(c) {}; - IfcMeasureValue(const IfcSolidAngleMeasure& c) : express::Select(c) {}; + IfcMeasureValue(const IfcSolidAngleMeasure& c) : express::select(c) {}; - IfcMeasureValue(const IfcThermodynamicTemperatureMeasure& c) : express::Select(c) {}; + IfcMeasureValue(const IfcThermodynamicTemperatureMeasure& c) : express::select(c) {}; - IfcMeasureValue(const IfcTimeMeasure& c) : express::Select(c) {}; + IfcMeasureValue(const IfcTimeMeasure& c) : express::select(c) {}; - IfcMeasureValue(const IfcVolumeMeasure& c) : express::Select(c) {}; + IfcMeasureValue(const IfcVolumeMeasure& c) : express::select(c) {}; }; /// IfcMetricValueSelect is a select type that enables selection of the data type for the value component of an IfcMetric. @@ -2171,838 +2171,838 @@ public: /// IfcTable /// IfcText /// IfcTimeSeries -class IFC_SCHEMA_API IfcMetricValueSelect : public express::Select { +class IFC_SCHEMA_API IfcMetricValueSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcAppliedValue as() const { return express::Base::as(); } + // IfcAppliedValue as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMeasureWithUnit as() const { return express::Base::as(); } + // IfcMeasureWithUnit as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcReference as() const { return express::Base::as(); } + // IfcReference as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcTable as() const { return express::Base::as(); } + // IfcTable as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcTimeSeries as() const { return express::Base::as(); } + // IfcTimeSeries as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcValue as() const { return express::Base::as(); } + // IfcValue as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcDerivedMeasureValue as() const { return express::Base::as(); } + // IfcDerivedMeasureValue as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcAbsorbedDoseMeasure as() const { return express::Base::as(); } + // IfcAbsorbedDoseMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcAccelerationMeasure as() const { return express::Base::as(); } + // IfcAccelerationMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcAngularVelocityMeasure as() const { return express::Base::as(); } + // IfcAngularVelocityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcAreaDensityMeasure as() const { return express::Base::as(); } + // IfcAreaDensityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcCompoundPlaneAngleMeasure as() const { return express::Base::as(); } + // IfcCompoundPlaneAngleMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcCurvatureMeasure as() const { return express::Base::as(); } + // IfcCurvatureMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcDoseEquivalentMeasure as() const { return express::Base::as(); } + // IfcDoseEquivalentMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcDynamicViscosityMeasure as() const { return express::Base::as(); } + // IfcDynamicViscosityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcElectricCapacitanceMeasure as() const { return express::Base::as(); } + // IfcElectricCapacitanceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcElectricChargeMeasure as() const { return express::Base::as(); } + // IfcElectricChargeMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcElectricConductanceMeasure as() const { return express::Base::as(); } + // IfcElectricConductanceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcElectricResistanceMeasure as() const { return express::Base::as(); } + // IfcElectricResistanceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcElectricVoltageMeasure as() const { return express::Base::as(); } + // IfcElectricVoltageMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcEnergyMeasure as() const { return express::Base::as(); } + // IfcEnergyMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcForceMeasure as() const { return express::Base::as(); } + // IfcForceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcFrequencyMeasure as() const { return express::Base::as(); } + // IfcFrequencyMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcHeatFluxDensityMeasure as() const { return express::Base::as(); } + // IfcHeatFluxDensityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcHeatingValueMeasure as() const { return express::Base::as(); } + // IfcHeatingValueMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcIlluminanceMeasure as() const { return express::Base::as(); } + // IfcIlluminanceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcInductanceMeasure as() const { return express::Base::as(); } + // IfcInductanceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcIntegerCountRateMeasure as() const { return express::Base::as(); } + // IfcIntegerCountRateMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcIonConcentrationMeasure as() const { return express::Base::as(); } + // IfcIonConcentrationMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcIsothermalMoistureCapacityMeasure as() const { return express::Base::as(); } + // IfcIsothermalMoistureCapacityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcKinematicViscosityMeasure as() const { return express::Base::as(); } + // IfcKinematicViscosityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLinearForceMeasure as() const { return express::Base::as(); } + // IfcLinearForceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLinearMomentMeasure as() const { return express::Base::as(); } + // IfcLinearMomentMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLinearStiffnessMeasure as() const { return express::Base::as(); } + // IfcLinearStiffnessMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLinearVelocityMeasure as() const { return express::Base::as(); } + // IfcLinearVelocityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLuminousFluxMeasure as() const { return express::Base::as(); } + // IfcLuminousFluxMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLuminousIntensityDistributionMeasure as() const { return express::Base::as(); } + // IfcLuminousIntensityDistributionMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMagneticFluxDensityMeasure as() const { return express::Base::as(); } + // IfcMagneticFluxDensityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMagneticFluxMeasure as() const { return express::Base::as(); } + // IfcMagneticFluxMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMassDensityMeasure as() const { return express::Base::as(); } + // IfcMassDensityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMassFlowRateMeasure as() const { return express::Base::as(); } + // IfcMassFlowRateMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMassPerLengthMeasure as() const { return express::Base::as(); } + // IfcMassPerLengthMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcModulusOfElasticityMeasure as() const { return express::Base::as(); } + // IfcModulusOfElasticityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcModulusOfLinearSubgradeReactionMeasure as() const { return express::Base::as(); } + // IfcModulusOfLinearSubgradeReactionMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcModulusOfRotationalSubgradeReactionMeasure as() const { return express::Base::as(); } + // IfcModulusOfRotationalSubgradeReactionMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcModulusOfSubgradeReactionMeasure as() const { return express::Base::as(); } + // IfcModulusOfSubgradeReactionMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMoistureDiffusivityMeasure as() const { return express::Base::as(); } + // IfcMoistureDiffusivityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMolecularWeightMeasure as() const { return express::Base::as(); } + // IfcMolecularWeightMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMomentOfInertiaMeasure as() const { return express::Base::as(); } + // IfcMomentOfInertiaMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMonetaryMeasure as() const { return express::Base::as(); } + // IfcMonetaryMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPHMeasure as() const { return express::Base::as(); } + // IfcPHMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPlanarForceMeasure as() const { return express::Base::as(); } + // IfcPlanarForceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPowerMeasure as() const { return express::Base::as(); } + // IfcPowerMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPressureMeasure as() const { return express::Base::as(); } + // IfcPressureMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcRadioActivityMeasure as() const { return express::Base::as(); } + // IfcRadioActivityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcRotationalFrequencyMeasure as() const { return express::Base::as(); } + // IfcRotationalFrequencyMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcRotationalMassMeasure as() const { return express::Base::as(); } + // IfcRotationalMassMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcRotationalStiffnessMeasure as() const { return express::Base::as(); } + // IfcRotationalStiffnessMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSectionModulusMeasure as() const { return express::Base::as(); } + // IfcSectionModulusMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSectionalAreaIntegralMeasure as() const { return express::Base::as(); } + // IfcSectionalAreaIntegralMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcShearModulusMeasure as() const { return express::Base::as(); } + // IfcShearModulusMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSoundPowerLevelMeasure as() const { return express::Base::as(); } + // IfcSoundPowerLevelMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSoundPowerMeasure as() const { return express::Base::as(); } + // IfcSoundPowerMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSoundPressureLevelMeasure as() const { return express::Base::as(); } + // IfcSoundPressureLevelMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSoundPressureMeasure as() const { return express::Base::as(); } + // IfcSoundPressureMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSpecificHeatCapacityMeasure as() const { return express::Base::as(); } + // IfcSpecificHeatCapacityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcTemperatureGradientMeasure as() const { return express::Base::as(); } + // IfcTemperatureGradientMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcTemperatureRateOfChangeMeasure as() const { return express::Base::as(); } + // IfcTemperatureRateOfChangeMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcThermalAdmittanceMeasure as() const { return express::Base::as(); } + // IfcThermalAdmittanceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcThermalConductivityMeasure as() const { return express::Base::as(); } + // IfcThermalConductivityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcThermalExpansionCoefficientMeasure as() const { return express::Base::as(); } + // IfcThermalExpansionCoefficientMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcThermalResistanceMeasure as() const { return express::Base::as(); } + // IfcThermalResistanceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcThermalTransmittanceMeasure as() const { return express::Base::as(); } + // IfcThermalTransmittanceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcTorqueMeasure as() const { return express::Base::as(); } + // IfcTorqueMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcVaporPermeabilityMeasure as() const { return express::Base::as(); } + // IfcVaporPermeabilityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcVolumetricFlowRateMeasure as() const { return express::Base::as(); } + // IfcVolumetricFlowRateMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcWarpingConstantMeasure as() const { return express::Base::as(); } + // IfcWarpingConstantMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcWarpingMomentMeasure as() const { return express::Base::as(); } + // IfcWarpingMomentMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMeasureValue as() const { return express::Base::as(); } + // IfcMeasureValue as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcAmountOfSubstanceMeasure as() const { return express::Base::as(); } + // IfcAmountOfSubstanceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcAreaMeasure as() const { return express::Base::as(); } + // IfcAreaMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcComplexNumber as() const { return express::Base::as(); } + // IfcComplexNumber as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcContextDependentMeasure as() const { return express::Base::as(); } + // IfcContextDependentMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcCountMeasure as() const { return express::Base::as(); } + // IfcCountMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcDescriptiveMeasure as() const { return express::Base::as(); } + // IfcDescriptiveMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcElectricCurrentMeasure as() const { return express::Base::as(); } + // IfcElectricCurrentMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLengthMeasure as() const { return express::Base::as(); } + // IfcLengthMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLuminousIntensityMeasure as() const { return express::Base::as(); } + // IfcLuminousIntensityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMassMeasure as() const { return express::Base::as(); } + // IfcMassMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcNonNegativeLengthMeasure as() const { return express::Base::as(); } + // IfcNonNegativeLengthMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcNormalisedRatioMeasure as() const { return express::Base::as(); } + // IfcNormalisedRatioMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcNumericMeasure as() const { return express::Base::as(); } + // IfcNumericMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcParameterValue as() const { return express::Base::as(); } + // IfcParameterValue as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPlaneAngleMeasure as() const { return express::Base::as(); } + // IfcPlaneAngleMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPositiveLengthMeasure as() const { return express::Base::as(); } + // IfcPositiveLengthMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPositivePlaneAngleMeasure as() const { return express::Base::as(); } + // IfcPositivePlaneAngleMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPositiveRatioMeasure as() const { return express::Base::as(); } + // IfcPositiveRatioMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcRatioMeasure as() const { return express::Base::as(); } + // IfcRatioMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSolidAngleMeasure as() const { return express::Base::as(); } + // IfcSolidAngleMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcThermodynamicTemperatureMeasure as() const { return express::Base::as(); } + // IfcThermodynamicTemperatureMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcTimeMeasure as() const { return express::Base::as(); } + // IfcTimeMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcVolumeMeasure as() const { return express::Base::as(); } + // IfcVolumeMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSimpleValue as() const { return express::Base::as(); } + // IfcSimpleValue as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcBinary as() const { return express::Base::as(); } + // IfcBinary as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcBoolean as() const { return express::Base::as(); } + // IfcBoolean as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcDate as() const { return express::Base::as(); } + // IfcDate as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcDateTime as() const { return express::Base::as(); } + // IfcDateTime as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcDuration as() const { return express::Base::as(); } + // IfcDuration as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcIdentifier as() const { return express::Base::as(); } + // IfcIdentifier as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcInteger as() const { return express::Base::as(); } + // IfcInteger as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLabel as() const { return express::Base::as(); } + // IfcLabel as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLogical as() const { return express::Base::as(); } + // IfcLogical as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPositiveInteger as() const { return express::Base::as(); } + // IfcPositiveInteger as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcReal as() const { return express::Base::as(); } + // IfcReal as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcText as() const { return express::Base::as(); } + // IfcText as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcTime as() const { return express::Base::as(); } + // IfcTime as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcTimeStamp as() const { return express::Base::as(); } + // IfcTimeStamp as() const { return express::base::as(); } - IfcMetricValueSelect(const IfcAppliedValue& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcAppliedValue& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcMeasureWithUnit& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcMeasureWithUnit& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcReference& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcReference& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcTable& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcTable& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcTimeSeries& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcTimeSeries& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcValue& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcValue& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcDerivedMeasureValue& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcDerivedMeasureValue& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcAbsorbedDoseMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcAbsorbedDoseMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcAccelerationMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcAccelerationMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcAngularVelocityMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcAngularVelocityMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcAreaDensityMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcAreaDensityMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcCompoundPlaneAngleMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcCompoundPlaneAngleMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcCurvatureMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcCurvatureMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcDoseEquivalentMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcDoseEquivalentMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcDynamicViscosityMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcDynamicViscosityMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcElectricCapacitanceMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcElectricCapacitanceMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcElectricChargeMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcElectricChargeMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcElectricConductanceMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcElectricConductanceMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcElectricResistanceMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcElectricResistanceMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcElectricVoltageMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcElectricVoltageMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcEnergyMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcEnergyMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcForceMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcForceMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcFrequencyMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcFrequencyMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcHeatFluxDensityMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcHeatFluxDensityMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcHeatingValueMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcHeatingValueMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcIlluminanceMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcIlluminanceMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcInductanceMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcInductanceMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcIntegerCountRateMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcIntegerCountRateMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcIonConcentrationMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcIonConcentrationMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcIsothermalMoistureCapacityMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcIsothermalMoistureCapacityMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcKinematicViscosityMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcKinematicViscosityMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcLinearForceMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcLinearForceMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcLinearMomentMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcLinearMomentMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcLinearStiffnessMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcLinearStiffnessMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcLinearVelocityMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcLinearVelocityMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcLuminousFluxMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcLuminousFluxMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcLuminousIntensityDistributionMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcLuminousIntensityDistributionMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcMagneticFluxDensityMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcMagneticFluxDensityMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcMagneticFluxMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcMagneticFluxMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcMassDensityMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcMassDensityMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcMassFlowRateMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcMassFlowRateMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcMassPerLengthMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcMassPerLengthMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcModulusOfElasticityMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcModulusOfElasticityMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcModulusOfLinearSubgradeReactionMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcModulusOfLinearSubgradeReactionMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcModulusOfRotationalSubgradeReactionMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcModulusOfRotationalSubgradeReactionMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcModulusOfSubgradeReactionMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcModulusOfSubgradeReactionMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcMoistureDiffusivityMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcMoistureDiffusivityMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcMolecularWeightMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcMolecularWeightMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcMomentOfInertiaMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcMomentOfInertiaMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcMonetaryMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcMonetaryMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcPHMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcPHMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcPlanarForceMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcPlanarForceMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcPowerMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcPowerMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcPressureMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcPressureMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcRadioActivityMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcRadioActivityMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcRotationalFrequencyMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcRotationalFrequencyMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcRotationalMassMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcRotationalMassMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcRotationalStiffnessMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcRotationalStiffnessMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcSectionModulusMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcSectionModulusMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcSectionalAreaIntegralMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcSectionalAreaIntegralMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcShearModulusMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcShearModulusMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcSoundPowerLevelMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcSoundPowerLevelMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcSoundPowerMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcSoundPowerMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcSoundPressureLevelMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcSoundPressureLevelMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcSoundPressureMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcSoundPressureMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcSpecificHeatCapacityMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcSpecificHeatCapacityMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcTemperatureGradientMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcTemperatureGradientMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcTemperatureRateOfChangeMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcTemperatureRateOfChangeMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcThermalAdmittanceMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcThermalAdmittanceMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcThermalConductivityMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcThermalConductivityMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcThermalExpansionCoefficientMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcThermalExpansionCoefficientMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcThermalResistanceMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcThermalResistanceMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcThermalTransmittanceMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcThermalTransmittanceMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcTorqueMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcTorqueMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcVaporPermeabilityMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcVaporPermeabilityMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcVolumetricFlowRateMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcVolumetricFlowRateMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcWarpingConstantMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcWarpingConstantMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcWarpingMomentMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcWarpingMomentMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcMeasureValue& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcMeasureValue& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcAmountOfSubstanceMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcAmountOfSubstanceMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcAreaMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcAreaMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcComplexNumber& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcComplexNumber& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcContextDependentMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcContextDependentMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcCountMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcCountMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcDescriptiveMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcDescriptiveMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcElectricCurrentMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcElectricCurrentMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcLengthMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcLengthMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcLuminousIntensityMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcLuminousIntensityMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcMassMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcMassMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcNonNegativeLengthMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcNonNegativeLengthMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcNormalisedRatioMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcNormalisedRatioMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcNumericMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcNumericMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcParameterValue& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcParameterValue& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcPlaneAngleMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcPlaneAngleMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcPositiveLengthMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcPositiveLengthMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcPositivePlaneAngleMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcPositivePlaneAngleMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcPositiveRatioMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcPositiveRatioMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcRatioMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcRatioMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcSolidAngleMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcSolidAngleMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcThermodynamicTemperatureMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcThermodynamicTemperatureMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcTimeMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcTimeMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcVolumeMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcVolumeMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcSimpleValue& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcSimpleValue& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcBinary& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcBinary& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcBoolean& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcBoolean& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcDate& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcDate& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcDateTime& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcDateTime& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcDuration& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcDuration& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcIdentifier& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcIdentifier& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcInteger& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcInteger& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcLabel& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcLabel& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcLogical& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcLogical& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcPositiveInteger& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcPositiveInteger& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcReal& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcReal& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcText& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcText& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcTime& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcTime& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcTimeStamp& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcTimeStamp& c) : express::select(c) {}; }; /// Definition from IAI: A measure for modulus of rotational subgrade reaction which expresses the rotational bedding of a structural curve item per length. TRUE denotes infinite stiffness (rigidity). FALSE denotes no stiffness (a release). A numeric value denotes finite linear-elastic stiffness. /// /// HISTORY: New type in IFC 2x4. -class IFC_SCHEMA_API IfcModulusOfRotationalSubgradeReactionSelect : public express::Select { +class IFC_SCHEMA_API IfcModulusOfRotationalSubgradeReactionSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcBoolean as() const { return express::Base::as(); } + // IfcBoolean as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcModulusOfRotationalSubgradeReactionMeasure as() const { return express::Base::as(); } + // IfcModulusOfRotationalSubgradeReactionMeasure as() const { return express::base::as(); } - IfcModulusOfRotationalSubgradeReactionSelect(const IfcBoolean& c) : express::Select(c) {}; + IfcModulusOfRotationalSubgradeReactionSelect(const IfcBoolean& c) : express::select(c) {}; - IfcModulusOfRotationalSubgradeReactionSelect(const IfcModulusOfRotationalSubgradeReactionMeasure& c) : express::Select(c) {}; + IfcModulusOfRotationalSubgradeReactionSelect(const IfcModulusOfRotationalSubgradeReactionMeasure& c) : express::select(c) {}; }; /// Definition from IAI: Bedding measure which expresses the bedding of a structural face item per area. TRUE denotes infinite stiffness (rigidity). FALSE denotes no stiffness (a release). A numeric value denotes finite linear-elastic stiffness. /// /// HISTORY: New type in IFC 2x4. -class IFC_SCHEMA_API IfcModulusOfSubgradeReactionSelect : public express::Select { +class IFC_SCHEMA_API IfcModulusOfSubgradeReactionSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcBoolean as() const { return express::Base::as(); } + // IfcBoolean as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcModulusOfSubgradeReactionMeasure as() const { return express::Base::as(); } + // IfcModulusOfSubgradeReactionMeasure as() const { return express::base::as(); } - IfcModulusOfSubgradeReactionSelect(const IfcBoolean& c) : express::Select(c) {}; + IfcModulusOfSubgradeReactionSelect(const IfcBoolean& c) : express::select(c) {}; - IfcModulusOfSubgradeReactionSelect(const IfcModulusOfSubgradeReactionMeasure& c) : express::Select(c) {}; + IfcModulusOfSubgradeReactionSelect(const IfcModulusOfSubgradeReactionMeasure& c) : express::select(c) {}; }; /// Definition from IAI: A measure for modulus of translational subgrade reaction which expresses the translational bedding of a structural curve item per length. TRUE denotes infinite stiffness (rigidity). FALSE denotes no stiffness (a release). A numeric value denotes finite linear-elastic stiffness. /// /// HISTORY: New type in IFC 2x4. -class IFC_SCHEMA_API IfcModulusOfTranslationalSubgradeReactionSelect : public express::Select { +class IFC_SCHEMA_API IfcModulusOfTranslationalSubgradeReactionSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcBoolean as() const { return express::Base::as(); } + // IfcBoolean as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcModulusOfLinearSubgradeReactionMeasure as() const { return express::Base::as(); } + // IfcModulusOfLinearSubgradeReactionMeasure as() const { return express::base::as(); } - IfcModulusOfTranslationalSubgradeReactionSelect(const IfcBoolean& c) : express::Select(c) {}; + IfcModulusOfTranslationalSubgradeReactionSelect(const IfcBoolean& c) : express::select(c) {}; - IfcModulusOfTranslationalSubgradeReactionSelect(const IfcModulusOfLinearSubgradeReactionMeasure& c) : express::Select(c) {}; + IfcModulusOfTranslationalSubgradeReactionSelect(const IfcModulusOfLinearSubgradeReactionMeasure& c) : express::select(c) {}; }; /// IfcObjectReferenceSelect is a select type, that holds a list of resource level entities that can be used as properties within a property set. /// /// HISTORY  New select type in IFC Release 2.0. -class IFC_SCHEMA_API IfcObjectReferenceSelect : public express::Select { +class IFC_SCHEMA_API IfcObjectReferenceSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcAddress as() const { return express::Base::as(); } + // IfcAddress as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcAppliedValue as() const { return express::Base::as(); } + // IfcAppliedValue as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcExternalReference as() const { return express::Base::as(); } + // IfcExternalReference as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMaterialDefinition as() const { return express::Base::as(); } + // IfcMaterialDefinition as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcOrganization as() const { return express::Base::as(); } + // IfcOrganization as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPerson as() const { return express::Base::as(); } + // IfcPerson as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPersonAndOrganization as() const { return express::Base::as(); } + // IfcPersonAndOrganization as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcTable as() const { return express::Base::as(); } + // IfcTable as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcTimeSeries as() const { return express::Base::as(); } + // IfcTimeSeries as() const { return express::base::as(); } - IfcObjectReferenceSelect(const IfcAddress& c) : express::Select(c) {}; + IfcObjectReferenceSelect(const IfcAddress& c) : express::select(c) {}; - IfcObjectReferenceSelect(const IfcAppliedValue& c) : express::Select(c) {}; + IfcObjectReferenceSelect(const IfcAppliedValue& c) : express::select(c) {}; - IfcObjectReferenceSelect(const IfcExternalReference& c) : express::Select(c) {}; + IfcObjectReferenceSelect(const IfcExternalReference& c) : express::select(c) {}; - IfcObjectReferenceSelect(const IfcMaterialDefinition& c) : express::Select(c) {}; + IfcObjectReferenceSelect(const IfcMaterialDefinition& c) : express::select(c) {}; - IfcObjectReferenceSelect(const IfcOrganization& c) : express::Select(c) {}; + IfcObjectReferenceSelect(const IfcOrganization& c) : express::select(c) {}; - IfcObjectReferenceSelect(const IfcPerson& c) : express::Select(c) {}; + IfcObjectReferenceSelect(const IfcPerson& c) : express::select(c) {}; - IfcObjectReferenceSelect(const IfcPersonAndOrganization& c) : express::Select(c) {}; + IfcObjectReferenceSelect(const IfcPersonAndOrganization& c) : express::select(c) {}; - IfcObjectReferenceSelect(const IfcTable& c) : express::Select(c) {}; + IfcObjectReferenceSelect(const IfcTable& c) : express::select(c) {}; - IfcObjectReferenceSelect(const IfcTimeSeries& c) : express::Select(c) {}; + IfcObjectReferenceSelect(const IfcTimeSeries& c) : express::select(c) {}; }; /// IfcPointOrVertexPoint provides the option to either select a geometric point (IfcPoint and subtypes) within a geometric model, or a vertex with associated point coordinates (IfcVertexPoint) within a topological model. @@ -3012,22 +3012,22 @@ public: /// IfcVertexPoint /// /// HISTORY  New select type in IFC2x Edition 3. -class IFC_SCHEMA_API IfcPointOrVertexPoint : public express::Select { +class IFC_SCHEMA_API IfcPointOrVertexPoint : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPoint as() const { return express::Base::as(); } + // IfcPoint as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcVertexPoint as() const { return express::Base::as(); } + // IfcVertexPoint as() const { return express::base::as(); } - IfcPointOrVertexPoint(const IfcPoint& c) : express::Select(c) {}; + IfcPointOrVertexPoint(const IfcPoint& c) : express::select(c) {}; - IfcPointOrVertexPoint(const IfcVertexPoint& c) : express::Select(c) {}; + IfcPointOrVertexPoint(const IfcVertexPoint& c) : express::select(c) {}; }; /// IfcProcessSelectprovides the option to either @@ -3040,41 +3040,41 @@ public: /// IfcTypeProcess /// /// HISTORY New select type in IFC2x4. -class IFC_SCHEMA_API IfcProcessSelect : public express::Select { +class IFC_SCHEMA_API IfcProcessSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcProcess as() const { return express::Base::as(); } + // IfcProcess as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcTypeProcess as() const { return express::Base::as(); } + // IfcTypeProcess as() const { return express::base::as(); } - IfcProcessSelect(const IfcProcess& c) : express::Select(c) {}; + IfcProcessSelect(const IfcProcess& c) : express::select(c) {}; - IfcProcessSelect(const IfcTypeProcess& c) : express::Select(c) {}; + IfcProcessSelect(const IfcTypeProcess& c) : express::select(c) {}; }; -class IFC_SCHEMA_API IfcProductRepresentationSelect : public express::Select { +class IFC_SCHEMA_API IfcProductRepresentationSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcProductDefinitionShape as() const { return express::Base::as(); } + // IfcProductDefinitionShape as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcRepresentationMap as() const { return express::Base::as(); } + // IfcRepresentationMap as() const { return express::base::as(); } - IfcProductRepresentationSelect(const IfcProductDefinitionShape& c) : express::Select(c) {}; + IfcProductRepresentationSelect(const IfcProductDefinitionShape& c) : express::select(c) {}; - IfcProductRepresentationSelect(const IfcRepresentationMap& c) : express::Select(c) {}; + IfcProductRepresentationSelect(const IfcRepresentationMap& c) : express::select(c) {}; }; /// IfcProductSelectprovides the option to either select a @@ -3086,152 +3086,152 @@ public: /// IfcTypeProduct /// /// HISTORY New select type in IFC2x4. -class IFC_SCHEMA_API IfcProductSelect : public express::Select { +class IFC_SCHEMA_API IfcProductSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcProduct as() const { return express::Base::as(); } + // IfcProduct as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcTypeProduct as() const { return express::Base::as(); } + // IfcTypeProduct as() const { return express::base::as(); } - IfcProductSelect(const IfcProduct& c) : express::Select(c) {}; + IfcProductSelect(const IfcProduct& c) : express::select(c) {}; - IfcProductSelect(const IfcTypeProduct& c) : express::Select(c) {}; + IfcProductSelect(const IfcTypeProduct& c) : express::select(c) {}; }; -class IFC_SCHEMA_API IfcPropertySetDefinitionSelect : public express::Select { +class IFC_SCHEMA_API IfcPropertySetDefinitionSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPropertySetDefinition as() const { return express::Base::as(); } + // IfcPropertySetDefinition as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPropertySetDefinitionSet as() const { return express::Base::as(); } + // IfcPropertySetDefinitionSet as() const { return express::base::as(); } - IfcPropertySetDefinitionSelect(const IfcPropertySetDefinition& c) : express::Select(c) {}; + IfcPropertySetDefinitionSelect(const IfcPropertySetDefinition& c) : express::select(c) {}; - IfcPropertySetDefinitionSelect(const IfcPropertySetDefinitionSet& c) : express::Select(c) {}; + IfcPropertySetDefinitionSelect(const IfcPropertySetDefinitionSet& c) : express::select(c) {}; }; /// IfcResourceObjectSelect enables selection of resource level objects that are to be related to an resource level relationship object. The use of IfcResourceObjectSelect includes the ability to assign an external reference entity (library, classification, or documentation reference) to entities within the resource level. /// /// HISTORY  New Select type in IFC2x4. -class IFC_SCHEMA_API IfcResourceObjectSelect : public express::Select { +class IFC_SCHEMA_API IfcResourceObjectSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcActorRole as() const { return express::Base::as(); } + // IfcActorRole as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcAppliedValue as() const { return express::Base::as(); } + // IfcAppliedValue as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcApproval as() const { return express::Base::as(); } + // IfcApproval as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcConstraint as() const { return express::Base::as(); } + // IfcConstraint as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcContextDependentUnit as() const { return express::Base::as(); } + // IfcContextDependentUnit as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcConversionBasedUnit as() const { return express::Base::as(); } + // IfcConversionBasedUnit as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcExternalInformation as() const { return express::Base::as(); } + // IfcExternalInformation as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcExternalReference as() const { return express::Base::as(); } + // IfcExternalReference as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMaterialDefinition as() const { return express::Base::as(); } + // IfcMaterialDefinition as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcOrganization as() const { return express::Base::as(); } + // IfcOrganization as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPerson as() const { return express::Base::as(); } + // IfcPerson as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPersonAndOrganization as() const { return express::Base::as(); } + // IfcPersonAndOrganization as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPhysicalQuantity as() const { return express::Base::as(); } + // IfcPhysicalQuantity as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcProfileDef as() const { return express::Base::as(); } + // IfcProfileDef as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPropertyAbstraction as() const { return express::Base::as(); } + // IfcPropertyAbstraction as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcShapeAspect as() const { return express::Base::as(); } + // IfcShapeAspect as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcTimeSeries as() const { return express::Base::as(); } + // IfcTimeSeries as() const { return express::base::as(); } - IfcResourceObjectSelect(const IfcActorRole& c) : express::Select(c) {}; + IfcResourceObjectSelect(const IfcActorRole& c) : express::select(c) {}; - IfcResourceObjectSelect(const IfcAppliedValue& c) : express::Select(c) {}; + IfcResourceObjectSelect(const IfcAppliedValue& c) : express::select(c) {}; - IfcResourceObjectSelect(const IfcApproval& c) : express::Select(c) {}; + IfcResourceObjectSelect(const IfcApproval& c) : express::select(c) {}; - IfcResourceObjectSelect(const IfcConstraint& c) : express::Select(c) {}; + IfcResourceObjectSelect(const IfcConstraint& c) : express::select(c) {}; - IfcResourceObjectSelect(const IfcContextDependentUnit& c) : express::Select(c) {}; + IfcResourceObjectSelect(const IfcContextDependentUnit& c) : express::select(c) {}; - IfcResourceObjectSelect(const IfcConversionBasedUnit& c) : express::Select(c) {}; + IfcResourceObjectSelect(const IfcConversionBasedUnit& c) : express::select(c) {}; - IfcResourceObjectSelect(const IfcExternalInformation& c) : express::Select(c) {}; + IfcResourceObjectSelect(const IfcExternalInformation& c) : express::select(c) {}; - IfcResourceObjectSelect(const IfcExternalReference& c) : express::Select(c) {}; + IfcResourceObjectSelect(const IfcExternalReference& c) : express::select(c) {}; - IfcResourceObjectSelect(const IfcMaterialDefinition& c) : express::Select(c) {}; + IfcResourceObjectSelect(const IfcMaterialDefinition& c) : express::select(c) {}; - IfcResourceObjectSelect(const IfcOrganization& c) : express::Select(c) {}; + IfcResourceObjectSelect(const IfcOrganization& c) : express::select(c) {}; - IfcResourceObjectSelect(const IfcPerson& c) : express::Select(c) {}; + IfcResourceObjectSelect(const IfcPerson& c) : express::select(c) {}; - IfcResourceObjectSelect(const IfcPersonAndOrganization& c) : express::Select(c) {}; + IfcResourceObjectSelect(const IfcPersonAndOrganization& c) : express::select(c) {}; - IfcResourceObjectSelect(const IfcPhysicalQuantity& c) : express::Select(c) {}; + IfcResourceObjectSelect(const IfcPhysicalQuantity& c) : express::select(c) {}; - IfcResourceObjectSelect(const IfcProfileDef& c) : express::Select(c) {}; + IfcResourceObjectSelect(const IfcProfileDef& c) : express::select(c) {}; - IfcResourceObjectSelect(const IfcPropertyAbstraction& c) : express::Select(c) {}; + IfcResourceObjectSelect(const IfcPropertyAbstraction& c) : express::select(c) {}; - IfcResourceObjectSelect(const IfcShapeAspect& c) : express::Select(c) {}; + IfcResourceObjectSelect(const IfcShapeAspect& c) : express::select(c) {}; - IfcResourceObjectSelect(const IfcTimeSeries& c) : express::Select(c) {}; + IfcResourceObjectSelect(const IfcTimeSeries& c) : express::select(c) {}; }; /// IfcResourceSelectprovides the option to either select a @@ -3243,62 +3243,62 @@ public: /// IfcTypeResource /// /// HISTORY New select type in IFC2x4. -class IFC_SCHEMA_API IfcResourceSelect : public express::Select { +class IFC_SCHEMA_API IfcResourceSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcResource as() const { return express::Base::as(); } + // IfcResource as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcTypeResource as() const { return express::Base::as(); } + // IfcTypeResource as() const { return express::base::as(); } - IfcResourceSelect(const IfcResource& c) : express::Select(c) {}; + IfcResourceSelect(const IfcResource& c) : express::select(c) {}; - IfcResourceSelect(const IfcTypeResource& c) : express::Select(c) {}; + IfcResourceSelect(const IfcTypeResource& c) : express::select(c) {}; }; /// Definition from IAI: A measure of rotational stiffness. TRUE denotes infinite stiffness (rigidity). FALSE denotes no stiffness (a release). A numeric value denotes finite linear-elastic stiffness. /// /// HISTORY: New type in IFC 2x4. -class IFC_SCHEMA_API IfcRotationalStiffnessSelect : public express::Select { +class IFC_SCHEMA_API IfcRotationalStiffnessSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcBoolean as() const { return express::Base::as(); } + // IfcBoolean as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcRotationalStiffnessMeasure as() const { return express::Base::as(); } + // IfcRotationalStiffnessMeasure as() const { return express::base::as(); } - IfcRotationalStiffnessSelect(const IfcBoolean& c) : express::Select(c) {}; + IfcRotationalStiffnessSelect(const IfcBoolean& c) : express::select(c) {}; - IfcRotationalStiffnessSelect(const IfcRotationalStiffnessMeasure& c) : express::Select(c) {}; + IfcRotationalStiffnessSelect(const IfcRotationalStiffnessMeasure& c) : express::select(c) {}; }; -class IFC_SCHEMA_API IfcSegmentIndexSelect : public express::Select { +class IFC_SCHEMA_API IfcSegmentIndexSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcArcIndex as() const { return express::Base::as(); } + // IfcArcIndex as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLineIndex as() const { return express::Base::as(); } + // IfcLineIndex as() const { return express::base::as(); } - IfcSegmentIndexSelect(const IfcArcIndex& c) : express::Select(c) {}; + IfcSegmentIndexSelect(const IfcArcIndex& c) : express::select(c) {}; - IfcSegmentIndexSelect(const IfcLineIndex& c) : express::Select(c) {}; + IfcSegmentIndexSelect(const IfcLineIndex& c) : express::select(c) {}; }; /// Definition from ISO/CD 10303-42:1992 This type collects together, for reference when constructing more complex models, the subtypes which have the characteristics of a shell. A shell is a connected object of fixed dimensionality d = 0; 1; or 2, typically used to bound a region. The domain of a shell, if present, includes its bounds and 0 £ X < ¥. @@ -3312,22 +3312,22 @@ public: /// NOTE  Corresponding ISO 10303 type: shell. Please refer to ISO/IS 10303-42:1994, p. 127 for the final definition of the formal standard. Only the select items closed_shell (IfcClosedShell) and open_shell (IfcOpenShell) have been incorporated in the current IFC release. /// /// HISTORY  New type in IFC2x. -class IFC_SCHEMA_API IfcShell : public express::Select { +class IFC_SCHEMA_API IfcShell : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcClosedShell as() const { return express::Base::as(); } + // IfcClosedShell as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcOpenShell as() const { return express::Base::as(); } + // IfcOpenShell as() const { return express::base::as(); } - IfcShell(const IfcClosedShell& c) : express::Select(c) {}; + IfcShell(const IfcClosedShell& c) : express::select(c) {}; - IfcShell(const IfcOpenShell& c) : express::Select(c) {}; + IfcShell(const IfcOpenShell& c) : express::select(c) {}; }; /// IfcSimpleValue is a select type for selecting between simple value types. @@ -3349,94 +3349,94 @@ public: /// HISTORY New type in IFC Release 2x. /// /// IFC2x4 CHANGE Items IfcDateTime, IfcDate, IfcTime, IfcDuration added. -class IFC_SCHEMA_API IfcSimpleValue : public express::Select { +class IFC_SCHEMA_API IfcSimpleValue : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcBinary as() const { return express::Base::as(); } + // IfcBinary as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcBoolean as() const { return express::Base::as(); } + // IfcBoolean as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcDate as() const { return express::Base::as(); } + // IfcDate as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcDateTime as() const { return express::Base::as(); } + // IfcDateTime as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcDuration as() const { return express::Base::as(); } + // IfcDuration as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcIdentifier as() const { return express::Base::as(); } + // IfcIdentifier as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcInteger as() const { return express::Base::as(); } + // IfcInteger as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLabel as() const { return express::Base::as(); } + // IfcLabel as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLogical as() const { return express::Base::as(); } + // IfcLogical as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPositiveInteger as() const { return express::Base::as(); } + // IfcPositiveInteger as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcReal as() const { return express::Base::as(); } + // IfcReal as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcText as() const { return express::Base::as(); } + // IfcText as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcTime as() const { return express::Base::as(); } + // IfcTime as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcTimeStamp as() const { return express::Base::as(); } + // IfcTimeStamp as() const { return express::base::as(); } - IfcSimpleValue(const IfcBinary& c) : express::Select(c) {}; + IfcSimpleValue(const IfcBinary& c) : express::select(c) {}; - IfcSimpleValue(const IfcBoolean& c) : express::Select(c) {}; + IfcSimpleValue(const IfcBoolean& c) : express::select(c) {}; - IfcSimpleValue(const IfcDate& c) : express::Select(c) {}; + IfcSimpleValue(const IfcDate& c) : express::select(c) {}; - IfcSimpleValue(const IfcDateTime& c) : express::Select(c) {}; + IfcSimpleValue(const IfcDateTime& c) : express::select(c) {}; - IfcSimpleValue(const IfcDuration& c) : express::Select(c) {}; + IfcSimpleValue(const IfcDuration& c) : express::select(c) {}; - IfcSimpleValue(const IfcIdentifier& c) : express::Select(c) {}; + IfcSimpleValue(const IfcIdentifier& c) : express::select(c) {}; - IfcSimpleValue(const IfcInteger& c) : express::Select(c) {}; + IfcSimpleValue(const IfcInteger& c) : express::select(c) {}; - IfcSimpleValue(const IfcLabel& c) : express::Select(c) {}; + IfcSimpleValue(const IfcLabel& c) : express::select(c) {}; - IfcSimpleValue(const IfcLogical& c) : express::Select(c) {}; + IfcSimpleValue(const IfcLogical& c) : express::select(c) {}; - IfcSimpleValue(const IfcPositiveInteger& c) : express::Select(c) {}; + IfcSimpleValue(const IfcPositiveInteger& c) : express::select(c) {}; - IfcSimpleValue(const IfcReal& c) : express::Select(c) {}; + IfcSimpleValue(const IfcReal& c) : express::select(c) {}; - IfcSimpleValue(const IfcText& c) : express::Select(c) {}; + IfcSimpleValue(const IfcText& c) : express::select(c) {}; - IfcSimpleValue(const IfcTime& c) : express::Select(c) {}; + IfcSimpleValue(const IfcTime& c) : express::select(c) {}; - IfcSimpleValue(const IfcTimeStamp& c) : express::Select(c) {}; + IfcSimpleValue(const IfcTimeStamp& c) : express::select(c) {}; }; /// Definition from ISO/CD 10303-46:1992: The size select is a selection of a specific positive length measure. @@ -3451,46 +3451,46 @@ public: /// HISTORY  New type in IFC2x2. /// /// IFC2x3 CHANGE  The SELECT item IfcMeasureWithUnit has been removed from the IfcSizeSelect, the IfcRatioMeasure and IfcDescriptiveMeasure has been added. -class IFC_SCHEMA_API IfcSizeSelect : public express::Select { +class IFC_SCHEMA_API IfcSizeSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcDescriptiveMeasure as() const { return express::Base::as(); } + // IfcDescriptiveMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLengthMeasure as() const { return express::Base::as(); } + // IfcLengthMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcNormalisedRatioMeasure as() const { return express::Base::as(); } + // IfcNormalisedRatioMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPositiveLengthMeasure as() const { return express::Base::as(); } + // IfcPositiveLengthMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPositiveRatioMeasure as() const { return express::Base::as(); } + // IfcPositiveRatioMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcRatioMeasure as() const { return express::Base::as(); } + // IfcRatioMeasure as() const { return express::base::as(); } - IfcSizeSelect(const IfcDescriptiveMeasure& c) : express::Select(c) {}; + IfcSizeSelect(const IfcDescriptiveMeasure& c) : express::select(c) {}; - IfcSizeSelect(const IfcLengthMeasure& c) : express::Select(c) {}; + IfcSizeSelect(const IfcLengthMeasure& c) : express::select(c) {}; - IfcSizeSelect(const IfcNormalisedRatioMeasure& c) : express::Select(c) {}; + IfcSizeSelect(const IfcNormalisedRatioMeasure& c) : express::select(c) {}; - IfcSizeSelect(const IfcPositiveLengthMeasure& c) : express::Select(c) {}; + IfcSizeSelect(const IfcPositiveLengthMeasure& c) : express::select(c) {}; - IfcSizeSelect(const IfcPositiveRatioMeasure& c) : express::Select(c) {}; + IfcSizeSelect(const IfcPositiveRatioMeasure& c) : express::select(c) {}; - IfcSizeSelect(const IfcRatioMeasure& c) : express::Select(c) {}; + IfcSizeSelect(const IfcRatioMeasure& c) : express::select(c) {}; }; /// The IfcSolidOrShell provides the option to either select a geometric volume (IfcSolidModel and subtypes) within a geometric model, or a shell (IfcClosedShell) within a topological model. @@ -3500,22 +3500,22 @@ public: /// IfcClosedShell /// /// HISTORY New select type in IFC2x4. -class IFC_SCHEMA_API IfcSolidOrShell : public express::Select { +class IFC_SCHEMA_API IfcSolidOrShell : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcClosedShell as() const { return express::Base::as(); } + // IfcClosedShell as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSolidModel as() const { return express::Base::as(); } + // IfcSolidModel as() const { return express::base::as(); } - IfcSolidOrShell(const IfcClosedShell& c) : express::Select(c) {}; + IfcSolidOrShell(const IfcClosedShell& c) : express::select(c) {}; - IfcSolidOrShell(const IfcSolidModel& c) : express::Select(c) {}; + IfcSolidOrShell(const IfcSolidModel& c) : express::select(c) {}; }; /// Definition from IAI: The @@ -3530,41 +3530,41 @@ public: /// /// HISTORY New select type /// in IFC2x4. -class IFC_SCHEMA_API IfcSpaceBoundarySelect : public express::Select { +class IFC_SCHEMA_API IfcSpaceBoundarySelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcExternalSpatialElement as() const { return express::Base::as(); } + // IfcExternalSpatialElement as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSpace as() const { return express::Base::as(); } + // IfcSpace as() const { return express::base::as(); } - IfcSpaceBoundarySelect(const IfcExternalSpatialElement& c) : express::Select(c) {}; + IfcSpaceBoundarySelect(const IfcExternalSpatialElement& c) : express::select(c) {}; - IfcSpaceBoundarySelect(const IfcSpace& c) : express::Select(c) {}; + IfcSpaceBoundarySelect(const IfcSpace& c) : express::select(c) {}; }; -class IFC_SCHEMA_API IfcSpatialReferenceSelect : public express::Select { +class IFC_SCHEMA_API IfcSpatialReferenceSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcGroup as() const { return express::Base::as(); } + // IfcGroup as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcProduct as() const { return express::Base::as(); } + // IfcProduct as() const { return express::base::as(); } - IfcSpatialReferenceSelect(const IfcGroup& c) : express::Select(c) {}; + IfcSpatialReferenceSelect(const IfcGroup& c) : express::select(c) {}; - IfcSpatialReferenceSelect(const IfcProduct& c) : express::Select(c) {}; + IfcSpatialReferenceSelect(const IfcProduct& c) : express::select(c) {}; }; /// The IfcSpecularHighlightSelect defines the selectable types of value for specular highlight sharpness. @@ -3577,22 +3577,22 @@ public: /// For each surface side style only one of the two methods is needed for calculating the specular part of the equation. /// /// HISTORY: New type in IFC2x2. -class IFC_SCHEMA_API IfcSpecularHighlightSelect : public express::Select { +class IFC_SCHEMA_API IfcSpecularHighlightSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSpecularExponent as() const { return express::Base::as(); } + // IfcSpecularExponent as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSpecularRoughness as() const { return express::Base::as(); } + // IfcSpecularRoughness as() const { return express::base::as(); } - IfcSpecularHighlightSelect(const IfcSpecularExponent& c) : express::Select(c) {}; + IfcSpecularHighlightSelect(const IfcSpecularExponent& c) : express::select(c) {}; - IfcSpecularHighlightSelect(const IfcSpecularRoughness& c) : express::Select(c) {}; + IfcSpecularHighlightSelect(const IfcSpecularRoughness& c) : express::select(c) {}; }; /// Definition from IAI: This type definition shall be used to @@ -3604,22 +3604,22 @@ public: /// /// HISTORY: New type in Release IFC2x /// Edition 2. -class IFC_SCHEMA_API IfcStructuralActivityAssignmentSelect : public express::Select { +class IFC_SCHEMA_API IfcStructuralActivityAssignmentSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcElement as() const { return express::Base::as(); } + // IfcElement as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcStructuralItem as() const { return express::Base::as(); } + // IfcStructuralItem as() const { return express::base::as(); } - IfcStructuralActivityAssignmentSelect(const IfcElement& c) : express::Select(c) {}; + IfcStructuralActivityAssignmentSelect(const IfcElement& c) : express::select(c) {}; - IfcStructuralActivityAssignmentSelect(const IfcStructuralItem& c) : express::Select(c) {}; + IfcStructuralActivityAssignmentSelect(const IfcStructuralItem& c) : express::select(c) {}; }; /// IfcSurfaceOrFaceSurface provides the option to either select a geometric surface (IfcSurface @@ -3631,28 +3631,28 @@ public: /// IfcFaceBasedSurfaceModel (a connected face set, representing a faceted surface as an approximation of a non planar, non rectangular bounded surface) /// /// HISTORY  New select type in IFC2x3. -class IFC_SCHEMA_API IfcSurfaceOrFaceSurface : public express::Select { +class IFC_SCHEMA_API IfcSurfaceOrFaceSurface : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcFaceBasedSurfaceModel as() const { return express::Base::as(); } + // IfcFaceBasedSurfaceModel as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcFaceSurface as() const { return express::Base::as(); } + // IfcFaceSurface as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSurface as() const { return express::Base::as(); } + // IfcSurface as() const { return express::base::as(); } - IfcSurfaceOrFaceSurface(const IfcFaceBasedSurfaceModel& c) : express::Select(c) {}; + IfcSurfaceOrFaceSurface(const IfcFaceBasedSurfaceModel& c) : express::select(c) {}; - IfcSurfaceOrFaceSurface(const IfcFaceSurface& c) : express::Select(c) {}; + IfcSurfaceOrFaceSurface(const IfcFaceSurface& c) : express::select(c) {}; - IfcSurfaceOrFaceSurface(const IfcSurface& c) : express::Select(c) {}; + IfcSurfaceOrFaceSurface(const IfcSurface& c) : express::select(c) {}; }; /// Definition from ISO/CD 10303-46:1992: The surface style element select is a selection of the different surface styles to use in the presentation of the side of a surface. @@ -3664,40 +3664,40 @@ public: /// NOTE: Corresponding ISO 10303 type: surface_style_element_select. Please refer to ISO/IS 10303-46:1994, p. 85 for the final definition of the formal standard. /// /// HISTORY: New Select type in IFC2x2. -class IFC_SCHEMA_API IfcSurfaceStyleElementSelect : public express::Select { +class IFC_SCHEMA_API IfcSurfaceStyleElementSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcExternallyDefinedSurfaceStyle as() const { return express::Base::as(); } + // IfcExternallyDefinedSurfaceStyle as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSurfaceStyleLighting as() const { return express::Base::as(); } + // IfcSurfaceStyleLighting as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSurfaceStyleRefraction as() const { return express::Base::as(); } + // IfcSurfaceStyleRefraction as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSurfaceStyleShading as() const { return express::Base::as(); } + // IfcSurfaceStyleShading as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSurfaceStyleWithTextures as() const { return express::Base::as(); } + // IfcSurfaceStyleWithTextures as() const { return express::base::as(); } - IfcSurfaceStyleElementSelect(const IfcExternallyDefinedSurfaceStyle& c) : express::Select(c) {}; + IfcSurfaceStyleElementSelect(const IfcExternallyDefinedSurfaceStyle& c) : express::select(c) {}; - IfcSurfaceStyleElementSelect(const IfcSurfaceStyleLighting& c) : express::Select(c) {}; + IfcSurfaceStyleElementSelect(const IfcSurfaceStyleLighting& c) : express::select(c) {}; - IfcSurfaceStyleElementSelect(const IfcSurfaceStyleRefraction& c) : express::Select(c) {}; + IfcSurfaceStyleElementSelect(const IfcSurfaceStyleRefraction& c) : express::select(c) {}; - IfcSurfaceStyleElementSelect(const IfcSurfaceStyleShading& c) : express::Select(c) {}; + IfcSurfaceStyleElementSelect(const IfcSurfaceStyleShading& c) : express::select(c) {}; - IfcSurfaceStyleElementSelect(const IfcSurfaceStyleWithTextures& c) : express::Select(c) {}; + IfcSurfaceStyleElementSelect(const IfcSurfaceStyleWithTextures& c) : express::select(c) {}; }; /// IfcTextFontSelect allows for either a predefined text font, a text font model or an externally defined text font to be used to describe the font of a text literal. The definition of the text font model is based on W3C TR Cascading Style Sheet Version 1, whereas the definition of predefined text font is based on ISO 10303. @@ -3707,63 +3707,63 @@ public: /// HISTORY  New type in IFC2x2. /// /// IFC2x3 CHANGE  The select type has been renamed from IfcFontSelect. -class IFC_SCHEMA_API IfcTextFontSelect : public express::Select { +class IFC_SCHEMA_API IfcTextFontSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcExternallyDefinedTextFont as() const { return express::Base::as(); } + // IfcExternallyDefinedTextFont as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPreDefinedTextFont as() const { return express::Base::as(); } + // IfcPreDefinedTextFont as() const { return express::base::as(); } - IfcTextFontSelect(const IfcExternallyDefinedTextFont& c) : express::Select(c) {}; + IfcTextFontSelect(const IfcExternallyDefinedTextFont& c) : express::select(c) {}; - IfcTextFontSelect(const IfcPreDefinedTextFont& c) : express::Select(c) {}; + IfcTextFontSelect(const IfcPreDefinedTextFont& c) : express::select(c) {}; }; /// IfcTimeOrRatioSelect allows a value to be selected as being either a ratio or a time measure. /// HISTORY New SELECT in IFC2x4 -class IFC_SCHEMA_API IfcTimeOrRatioSelect : public express::Select { +class IFC_SCHEMA_API IfcTimeOrRatioSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcDuration as() const { return express::Base::as(); } + // IfcDuration as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcRatioMeasure as() const { return express::Base::as(); } + // IfcRatioMeasure as() const { return express::base::as(); } - IfcTimeOrRatioSelect(const IfcDuration& c) : express::Select(c) {}; + IfcTimeOrRatioSelect(const IfcDuration& c) : express::select(c) {}; - IfcTimeOrRatioSelect(const IfcRatioMeasure& c) : express::Select(c) {}; + IfcTimeOrRatioSelect(const IfcRatioMeasure& c) : express::select(c) {}; }; /// Definition from IAI: A measure of linear stiffness. TRUE denotes infinite stiffness (rigidity). FALSE denotes no stiffness (a release). A numeric value denotes finite linear-elastic stiffness. /// /// HISTORY: New type in IFC 2x4. -class IFC_SCHEMA_API IfcTranslationalStiffnessSelect : public express::Select { +class IFC_SCHEMA_API IfcTranslationalStiffnessSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcBoolean as() const { return express::Base::as(); } + // IfcBoolean as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLinearStiffnessMeasure as() const { return express::Base::as(); } + // IfcLinearStiffnessMeasure as() const { return express::base::as(); } - IfcTranslationalStiffnessSelect(const IfcBoolean& c) : express::Select(c) {}; + IfcTranslationalStiffnessSelect(const IfcBoolean& c) : express::select(c) {}; - IfcTranslationalStiffnessSelect(const IfcLinearStiffnessMeasure& c) : express::Select(c) {}; + IfcTranslationalStiffnessSelect(const IfcLinearStiffnessMeasure& c) : express::select(c) {}; }; /// Definition from ISO/CD 10303-42:1992: This select type identifies the two possible ways of trimming a parametric curve; by a Cartesian point on the curve, or by a REAL number defining a parameter value within the parametric range of the curve. @@ -3771,22 +3771,22 @@ public: /// NOTE Corresponding ISO 10303 type: trimming_select, please refer to ISO/IS 10303-42:1994, p. 20 for the final definition of the formal standard. /// /// HISTORY New Type in IFC Release 1.0 -class IFC_SCHEMA_API IfcTrimmingSelect : public express::Select { +class IFC_SCHEMA_API IfcTrimmingSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcCartesianPoint as() const { return express::Base::as(); } + // IfcCartesianPoint as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcParameterValue as() const { return express::Base::as(); } + // IfcParameterValue as() const { return express::base::as(); } - IfcTrimmingSelect(const IfcCartesianPoint& c) : express::Select(c) {}; + IfcTrimmingSelect(const IfcCartesianPoint& c) : express::select(c) {}; - IfcTrimmingSelect(const IfcParameterValue& c) : express::Select(c) {}; + IfcTrimmingSelect(const IfcParameterValue& c) : express::select(c) {}; }; /// Definition from ISO/CD 10303-41:1992: A unit is a physical quantity, with a value of one, which is used as a standard in terms of which other quantities are expressed. @@ -3802,28 +3802,28 @@ public: /// IfcMonetaryUnit: A unit for defining currencies. /// /// HISTORY: New type in IFC Release 1.5.1. -class IFC_SCHEMA_API IfcUnit : public express::Select { +class IFC_SCHEMA_API IfcUnit : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcDerivedUnit as() const { return express::Base::as(); } + // IfcDerivedUnit as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMonetaryUnit as() const { return express::Base::as(); } + // IfcMonetaryUnit as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcNamedUnit as() const { return express::Base::as(); } + // IfcNamedUnit as() const { return express::base::as(); } - IfcUnit(const IfcDerivedUnit& c) : express::Select(c) {}; + IfcUnit(const IfcDerivedUnit& c) : express::select(c) {}; - IfcUnit(const IfcMonetaryUnit& c) : express::Select(c) {}; + IfcUnit(const IfcMonetaryUnit& c) : express::select(c) {}; - IfcUnit(const IfcNamedUnit& c) : express::Select(c) {}; + IfcUnit(const IfcNamedUnit& c) : express::select(c) {}; }; /// IfcValue is a select type for selecting between more specialised select types IfcSimpleValue, @@ -3836,676 +3836,676 @@ public: /// IfcDerivedMeasureValue A select type for derived measure types. /// /// HISTORY New type in IFC Release 2x. -class IFC_SCHEMA_API IfcValue : public express::Select { +class IFC_SCHEMA_API IfcValue : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcDerivedMeasureValue as() const { return express::Base::as(); } + // IfcDerivedMeasureValue as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcAbsorbedDoseMeasure as() const { return express::Base::as(); } + // IfcAbsorbedDoseMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcAccelerationMeasure as() const { return express::Base::as(); } + // IfcAccelerationMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcAngularVelocityMeasure as() const { return express::Base::as(); } + // IfcAngularVelocityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcAreaDensityMeasure as() const { return express::Base::as(); } + // IfcAreaDensityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcCompoundPlaneAngleMeasure as() const { return express::Base::as(); } + // IfcCompoundPlaneAngleMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcCurvatureMeasure as() const { return express::Base::as(); } + // IfcCurvatureMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcDoseEquivalentMeasure as() const { return express::Base::as(); } + // IfcDoseEquivalentMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcDynamicViscosityMeasure as() const { return express::Base::as(); } + // IfcDynamicViscosityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcElectricCapacitanceMeasure as() const { return express::Base::as(); } + // IfcElectricCapacitanceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcElectricChargeMeasure as() const { return express::Base::as(); } + // IfcElectricChargeMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcElectricConductanceMeasure as() const { return express::Base::as(); } + // IfcElectricConductanceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcElectricResistanceMeasure as() const { return express::Base::as(); } + // IfcElectricResistanceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcElectricVoltageMeasure as() const { return express::Base::as(); } + // IfcElectricVoltageMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcEnergyMeasure as() const { return express::Base::as(); } + // IfcEnergyMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcForceMeasure as() const { return express::Base::as(); } + // IfcForceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcFrequencyMeasure as() const { return express::Base::as(); } + // IfcFrequencyMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcHeatFluxDensityMeasure as() const { return express::Base::as(); } + // IfcHeatFluxDensityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcHeatingValueMeasure as() const { return express::Base::as(); } + // IfcHeatingValueMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcIlluminanceMeasure as() const { return express::Base::as(); } + // IfcIlluminanceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcInductanceMeasure as() const { return express::Base::as(); } + // IfcInductanceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcIntegerCountRateMeasure as() const { return express::Base::as(); } + // IfcIntegerCountRateMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcIonConcentrationMeasure as() const { return express::Base::as(); } + // IfcIonConcentrationMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcIsothermalMoistureCapacityMeasure as() const { return express::Base::as(); } + // IfcIsothermalMoistureCapacityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcKinematicViscosityMeasure as() const { return express::Base::as(); } + // IfcKinematicViscosityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLinearForceMeasure as() const { return express::Base::as(); } + // IfcLinearForceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLinearMomentMeasure as() const { return express::Base::as(); } + // IfcLinearMomentMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLinearStiffnessMeasure as() const { return express::Base::as(); } + // IfcLinearStiffnessMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLinearVelocityMeasure as() const { return express::Base::as(); } + // IfcLinearVelocityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLuminousFluxMeasure as() const { return express::Base::as(); } + // IfcLuminousFluxMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLuminousIntensityDistributionMeasure as() const { return express::Base::as(); } + // IfcLuminousIntensityDistributionMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMagneticFluxDensityMeasure as() const { return express::Base::as(); } + // IfcMagneticFluxDensityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMagneticFluxMeasure as() const { return express::Base::as(); } + // IfcMagneticFluxMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMassDensityMeasure as() const { return express::Base::as(); } + // IfcMassDensityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMassFlowRateMeasure as() const { return express::Base::as(); } + // IfcMassFlowRateMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMassPerLengthMeasure as() const { return express::Base::as(); } + // IfcMassPerLengthMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcModulusOfElasticityMeasure as() const { return express::Base::as(); } + // IfcModulusOfElasticityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcModulusOfLinearSubgradeReactionMeasure as() const { return express::Base::as(); } + // IfcModulusOfLinearSubgradeReactionMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcModulusOfRotationalSubgradeReactionMeasure as() const { return express::Base::as(); } + // IfcModulusOfRotationalSubgradeReactionMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcModulusOfSubgradeReactionMeasure as() const { return express::Base::as(); } + // IfcModulusOfSubgradeReactionMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMoistureDiffusivityMeasure as() const { return express::Base::as(); } + // IfcMoistureDiffusivityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMolecularWeightMeasure as() const { return express::Base::as(); } + // IfcMolecularWeightMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMomentOfInertiaMeasure as() const { return express::Base::as(); } + // IfcMomentOfInertiaMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMonetaryMeasure as() const { return express::Base::as(); } + // IfcMonetaryMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPHMeasure as() const { return express::Base::as(); } + // IfcPHMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPlanarForceMeasure as() const { return express::Base::as(); } + // IfcPlanarForceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPowerMeasure as() const { return express::Base::as(); } + // IfcPowerMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPressureMeasure as() const { return express::Base::as(); } + // IfcPressureMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcRadioActivityMeasure as() const { return express::Base::as(); } + // IfcRadioActivityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcRotationalFrequencyMeasure as() const { return express::Base::as(); } + // IfcRotationalFrequencyMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcRotationalMassMeasure as() const { return express::Base::as(); } + // IfcRotationalMassMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcRotationalStiffnessMeasure as() const { return express::Base::as(); } + // IfcRotationalStiffnessMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSectionModulusMeasure as() const { return express::Base::as(); } + // IfcSectionModulusMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSectionalAreaIntegralMeasure as() const { return express::Base::as(); } + // IfcSectionalAreaIntegralMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcShearModulusMeasure as() const { return express::Base::as(); } + // IfcShearModulusMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSoundPowerLevelMeasure as() const { return express::Base::as(); } + // IfcSoundPowerLevelMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSoundPowerMeasure as() const { return express::Base::as(); } + // IfcSoundPowerMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSoundPressureLevelMeasure as() const { return express::Base::as(); } + // IfcSoundPressureLevelMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSoundPressureMeasure as() const { return express::Base::as(); } + // IfcSoundPressureMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSpecificHeatCapacityMeasure as() const { return express::Base::as(); } + // IfcSpecificHeatCapacityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcTemperatureGradientMeasure as() const { return express::Base::as(); } + // IfcTemperatureGradientMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcTemperatureRateOfChangeMeasure as() const { return express::Base::as(); } + // IfcTemperatureRateOfChangeMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcThermalAdmittanceMeasure as() const { return express::Base::as(); } + // IfcThermalAdmittanceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcThermalConductivityMeasure as() const { return express::Base::as(); } + // IfcThermalConductivityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcThermalExpansionCoefficientMeasure as() const { return express::Base::as(); } + // IfcThermalExpansionCoefficientMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcThermalResistanceMeasure as() const { return express::Base::as(); } + // IfcThermalResistanceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcThermalTransmittanceMeasure as() const { return express::Base::as(); } + // IfcThermalTransmittanceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcTorqueMeasure as() const { return express::Base::as(); } + // IfcTorqueMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcVaporPermeabilityMeasure as() const { return express::Base::as(); } + // IfcVaporPermeabilityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcVolumetricFlowRateMeasure as() const { return express::Base::as(); } + // IfcVolumetricFlowRateMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcWarpingConstantMeasure as() const { return express::Base::as(); } + // IfcWarpingConstantMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcWarpingMomentMeasure as() const { return express::Base::as(); } + // IfcWarpingMomentMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMeasureValue as() const { return express::Base::as(); } + // IfcMeasureValue as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcAmountOfSubstanceMeasure as() const { return express::Base::as(); } + // IfcAmountOfSubstanceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcAreaMeasure as() const { return express::Base::as(); } + // IfcAreaMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcComplexNumber as() const { return express::Base::as(); } + // IfcComplexNumber as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcContextDependentMeasure as() const { return express::Base::as(); } + // IfcContextDependentMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcCountMeasure as() const { return express::Base::as(); } + // IfcCountMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcDescriptiveMeasure as() const { return express::Base::as(); } + // IfcDescriptiveMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcElectricCurrentMeasure as() const { return express::Base::as(); } + // IfcElectricCurrentMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLengthMeasure as() const { return express::Base::as(); } + // IfcLengthMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLuminousIntensityMeasure as() const { return express::Base::as(); } + // IfcLuminousIntensityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMassMeasure as() const { return express::Base::as(); } + // IfcMassMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcNonNegativeLengthMeasure as() const { return express::Base::as(); } + // IfcNonNegativeLengthMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcNormalisedRatioMeasure as() const { return express::Base::as(); } + // IfcNormalisedRatioMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcNumericMeasure as() const { return express::Base::as(); } + // IfcNumericMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcParameterValue as() const { return express::Base::as(); } + // IfcParameterValue as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPlaneAngleMeasure as() const { return express::Base::as(); } + // IfcPlaneAngleMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPositiveLengthMeasure as() const { return express::Base::as(); } + // IfcPositiveLengthMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPositivePlaneAngleMeasure as() const { return express::Base::as(); } + // IfcPositivePlaneAngleMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPositiveRatioMeasure as() const { return express::Base::as(); } + // IfcPositiveRatioMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcRatioMeasure as() const { return express::Base::as(); } + // IfcRatioMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSolidAngleMeasure as() const { return express::Base::as(); } + // IfcSolidAngleMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcThermodynamicTemperatureMeasure as() const { return express::Base::as(); } + // IfcThermodynamicTemperatureMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcTimeMeasure as() const { return express::Base::as(); } + // IfcTimeMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcVolumeMeasure as() const { return express::Base::as(); } + // IfcVolumeMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSimpleValue as() const { return express::Base::as(); } + // IfcSimpleValue as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcBinary as() const { return express::Base::as(); } + // IfcBinary as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcBoolean as() const { return express::Base::as(); } + // IfcBoolean as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcDate as() const { return express::Base::as(); } + // IfcDate as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcDateTime as() const { return express::Base::as(); } + // IfcDateTime as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcDuration as() const { return express::Base::as(); } + // IfcDuration as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcIdentifier as() const { return express::Base::as(); } + // IfcIdentifier as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcInteger as() const { return express::Base::as(); } + // IfcInteger as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLabel as() const { return express::Base::as(); } + // IfcLabel as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLogical as() const { return express::Base::as(); } + // IfcLogical as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPositiveInteger as() const { return express::Base::as(); } + // IfcPositiveInteger as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcReal as() const { return express::Base::as(); } + // IfcReal as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcText as() const { return express::Base::as(); } + // IfcText as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcTime as() const { return express::Base::as(); } + // IfcTime as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcTimeStamp as() const { return express::Base::as(); } + // IfcTimeStamp as() const { return express::base::as(); } - IfcValue(const IfcDerivedMeasureValue& c) : express::Select(c) {}; + IfcValue(const IfcDerivedMeasureValue& c) : express::select(c) {}; - IfcValue(const IfcAbsorbedDoseMeasure& c) : express::Select(c) {}; + IfcValue(const IfcAbsorbedDoseMeasure& c) : express::select(c) {}; - IfcValue(const IfcAccelerationMeasure& c) : express::Select(c) {}; + IfcValue(const IfcAccelerationMeasure& c) : express::select(c) {}; - IfcValue(const IfcAngularVelocityMeasure& c) : express::Select(c) {}; + IfcValue(const IfcAngularVelocityMeasure& c) : express::select(c) {}; - IfcValue(const IfcAreaDensityMeasure& c) : express::Select(c) {}; + IfcValue(const IfcAreaDensityMeasure& c) : express::select(c) {}; - IfcValue(const IfcCompoundPlaneAngleMeasure& c) : express::Select(c) {}; + IfcValue(const IfcCompoundPlaneAngleMeasure& c) : express::select(c) {}; - IfcValue(const IfcCurvatureMeasure& c) : express::Select(c) {}; + IfcValue(const IfcCurvatureMeasure& c) : express::select(c) {}; - IfcValue(const IfcDoseEquivalentMeasure& c) : express::Select(c) {}; + IfcValue(const IfcDoseEquivalentMeasure& c) : express::select(c) {}; - IfcValue(const IfcDynamicViscosityMeasure& c) : express::Select(c) {}; + IfcValue(const IfcDynamicViscosityMeasure& c) : express::select(c) {}; - IfcValue(const IfcElectricCapacitanceMeasure& c) : express::Select(c) {}; + IfcValue(const IfcElectricCapacitanceMeasure& c) : express::select(c) {}; - IfcValue(const IfcElectricChargeMeasure& c) : express::Select(c) {}; + IfcValue(const IfcElectricChargeMeasure& c) : express::select(c) {}; - IfcValue(const IfcElectricConductanceMeasure& c) : express::Select(c) {}; + IfcValue(const IfcElectricConductanceMeasure& c) : express::select(c) {}; - IfcValue(const IfcElectricResistanceMeasure& c) : express::Select(c) {}; + IfcValue(const IfcElectricResistanceMeasure& c) : express::select(c) {}; - IfcValue(const IfcElectricVoltageMeasure& c) : express::Select(c) {}; + IfcValue(const IfcElectricVoltageMeasure& c) : express::select(c) {}; - IfcValue(const IfcEnergyMeasure& c) : express::Select(c) {}; + IfcValue(const IfcEnergyMeasure& c) : express::select(c) {}; - IfcValue(const IfcForceMeasure& c) : express::Select(c) {}; + IfcValue(const IfcForceMeasure& c) : express::select(c) {}; - IfcValue(const IfcFrequencyMeasure& c) : express::Select(c) {}; + IfcValue(const IfcFrequencyMeasure& c) : express::select(c) {}; - IfcValue(const IfcHeatFluxDensityMeasure& c) : express::Select(c) {}; + IfcValue(const IfcHeatFluxDensityMeasure& c) : express::select(c) {}; - IfcValue(const IfcHeatingValueMeasure& c) : express::Select(c) {}; + IfcValue(const IfcHeatingValueMeasure& c) : express::select(c) {}; - IfcValue(const IfcIlluminanceMeasure& c) : express::Select(c) {}; + IfcValue(const IfcIlluminanceMeasure& c) : express::select(c) {}; - IfcValue(const IfcInductanceMeasure& c) : express::Select(c) {}; + IfcValue(const IfcInductanceMeasure& c) : express::select(c) {}; - IfcValue(const IfcIntegerCountRateMeasure& c) : express::Select(c) {}; + IfcValue(const IfcIntegerCountRateMeasure& c) : express::select(c) {}; - IfcValue(const IfcIonConcentrationMeasure& c) : express::Select(c) {}; + IfcValue(const IfcIonConcentrationMeasure& c) : express::select(c) {}; - IfcValue(const IfcIsothermalMoistureCapacityMeasure& c) : express::Select(c) {}; + IfcValue(const IfcIsothermalMoistureCapacityMeasure& c) : express::select(c) {}; - IfcValue(const IfcKinematicViscosityMeasure& c) : express::Select(c) {}; + IfcValue(const IfcKinematicViscosityMeasure& c) : express::select(c) {}; - IfcValue(const IfcLinearForceMeasure& c) : express::Select(c) {}; + IfcValue(const IfcLinearForceMeasure& c) : express::select(c) {}; - IfcValue(const IfcLinearMomentMeasure& c) : express::Select(c) {}; + IfcValue(const IfcLinearMomentMeasure& c) : express::select(c) {}; - IfcValue(const IfcLinearStiffnessMeasure& c) : express::Select(c) {}; + IfcValue(const IfcLinearStiffnessMeasure& c) : express::select(c) {}; - IfcValue(const IfcLinearVelocityMeasure& c) : express::Select(c) {}; + IfcValue(const IfcLinearVelocityMeasure& c) : express::select(c) {}; - IfcValue(const IfcLuminousFluxMeasure& c) : express::Select(c) {}; + IfcValue(const IfcLuminousFluxMeasure& c) : express::select(c) {}; - IfcValue(const IfcLuminousIntensityDistributionMeasure& c) : express::Select(c) {}; + IfcValue(const IfcLuminousIntensityDistributionMeasure& c) : express::select(c) {}; - IfcValue(const IfcMagneticFluxDensityMeasure& c) : express::Select(c) {}; + IfcValue(const IfcMagneticFluxDensityMeasure& c) : express::select(c) {}; - IfcValue(const IfcMagneticFluxMeasure& c) : express::Select(c) {}; + IfcValue(const IfcMagneticFluxMeasure& c) : express::select(c) {}; - IfcValue(const IfcMassDensityMeasure& c) : express::Select(c) {}; + IfcValue(const IfcMassDensityMeasure& c) : express::select(c) {}; - IfcValue(const IfcMassFlowRateMeasure& c) : express::Select(c) {}; + IfcValue(const IfcMassFlowRateMeasure& c) : express::select(c) {}; - IfcValue(const IfcMassPerLengthMeasure& c) : express::Select(c) {}; + IfcValue(const IfcMassPerLengthMeasure& c) : express::select(c) {}; - IfcValue(const IfcModulusOfElasticityMeasure& c) : express::Select(c) {}; + IfcValue(const IfcModulusOfElasticityMeasure& c) : express::select(c) {}; - IfcValue(const IfcModulusOfLinearSubgradeReactionMeasure& c) : express::Select(c) {}; + IfcValue(const IfcModulusOfLinearSubgradeReactionMeasure& c) : express::select(c) {}; - IfcValue(const IfcModulusOfRotationalSubgradeReactionMeasure& c) : express::Select(c) {}; + IfcValue(const IfcModulusOfRotationalSubgradeReactionMeasure& c) : express::select(c) {}; - IfcValue(const IfcModulusOfSubgradeReactionMeasure& c) : express::Select(c) {}; + IfcValue(const IfcModulusOfSubgradeReactionMeasure& c) : express::select(c) {}; - IfcValue(const IfcMoistureDiffusivityMeasure& c) : express::Select(c) {}; + IfcValue(const IfcMoistureDiffusivityMeasure& c) : express::select(c) {}; - IfcValue(const IfcMolecularWeightMeasure& c) : express::Select(c) {}; + IfcValue(const IfcMolecularWeightMeasure& c) : express::select(c) {}; - IfcValue(const IfcMomentOfInertiaMeasure& c) : express::Select(c) {}; + IfcValue(const IfcMomentOfInertiaMeasure& c) : express::select(c) {}; - IfcValue(const IfcMonetaryMeasure& c) : express::Select(c) {}; + IfcValue(const IfcMonetaryMeasure& c) : express::select(c) {}; - IfcValue(const IfcPHMeasure& c) : express::Select(c) {}; + IfcValue(const IfcPHMeasure& c) : express::select(c) {}; - IfcValue(const IfcPlanarForceMeasure& c) : express::Select(c) {}; + IfcValue(const IfcPlanarForceMeasure& c) : express::select(c) {}; - IfcValue(const IfcPowerMeasure& c) : express::Select(c) {}; + IfcValue(const IfcPowerMeasure& c) : express::select(c) {}; - IfcValue(const IfcPressureMeasure& c) : express::Select(c) {}; + IfcValue(const IfcPressureMeasure& c) : express::select(c) {}; - IfcValue(const IfcRadioActivityMeasure& c) : express::Select(c) {}; + IfcValue(const IfcRadioActivityMeasure& c) : express::select(c) {}; - IfcValue(const IfcRotationalFrequencyMeasure& c) : express::Select(c) {}; + IfcValue(const IfcRotationalFrequencyMeasure& c) : express::select(c) {}; - IfcValue(const IfcRotationalMassMeasure& c) : express::Select(c) {}; + IfcValue(const IfcRotationalMassMeasure& c) : express::select(c) {}; - IfcValue(const IfcRotationalStiffnessMeasure& c) : express::Select(c) {}; + IfcValue(const IfcRotationalStiffnessMeasure& c) : express::select(c) {}; - IfcValue(const IfcSectionModulusMeasure& c) : express::Select(c) {}; + IfcValue(const IfcSectionModulusMeasure& c) : express::select(c) {}; - IfcValue(const IfcSectionalAreaIntegralMeasure& c) : express::Select(c) {}; + IfcValue(const IfcSectionalAreaIntegralMeasure& c) : express::select(c) {}; - IfcValue(const IfcShearModulusMeasure& c) : express::Select(c) {}; + IfcValue(const IfcShearModulusMeasure& c) : express::select(c) {}; - IfcValue(const IfcSoundPowerLevelMeasure& c) : express::Select(c) {}; + IfcValue(const IfcSoundPowerLevelMeasure& c) : express::select(c) {}; - IfcValue(const IfcSoundPowerMeasure& c) : express::Select(c) {}; + IfcValue(const IfcSoundPowerMeasure& c) : express::select(c) {}; - IfcValue(const IfcSoundPressureLevelMeasure& c) : express::Select(c) {}; + IfcValue(const IfcSoundPressureLevelMeasure& c) : express::select(c) {}; - IfcValue(const IfcSoundPressureMeasure& c) : express::Select(c) {}; + IfcValue(const IfcSoundPressureMeasure& c) : express::select(c) {}; - IfcValue(const IfcSpecificHeatCapacityMeasure& c) : express::Select(c) {}; + IfcValue(const IfcSpecificHeatCapacityMeasure& c) : express::select(c) {}; - IfcValue(const IfcTemperatureGradientMeasure& c) : express::Select(c) {}; + IfcValue(const IfcTemperatureGradientMeasure& c) : express::select(c) {}; - IfcValue(const IfcTemperatureRateOfChangeMeasure& c) : express::Select(c) {}; + IfcValue(const IfcTemperatureRateOfChangeMeasure& c) : express::select(c) {}; - IfcValue(const IfcThermalAdmittanceMeasure& c) : express::Select(c) {}; + IfcValue(const IfcThermalAdmittanceMeasure& c) : express::select(c) {}; - IfcValue(const IfcThermalConductivityMeasure& c) : express::Select(c) {}; + IfcValue(const IfcThermalConductivityMeasure& c) : express::select(c) {}; - IfcValue(const IfcThermalExpansionCoefficientMeasure& c) : express::Select(c) {}; + IfcValue(const IfcThermalExpansionCoefficientMeasure& c) : express::select(c) {}; - IfcValue(const IfcThermalResistanceMeasure& c) : express::Select(c) {}; + IfcValue(const IfcThermalResistanceMeasure& c) : express::select(c) {}; - IfcValue(const IfcThermalTransmittanceMeasure& c) : express::Select(c) {}; + IfcValue(const IfcThermalTransmittanceMeasure& c) : express::select(c) {}; - IfcValue(const IfcTorqueMeasure& c) : express::Select(c) {}; + IfcValue(const IfcTorqueMeasure& c) : express::select(c) {}; - IfcValue(const IfcVaporPermeabilityMeasure& c) : express::Select(c) {}; + IfcValue(const IfcVaporPermeabilityMeasure& c) : express::select(c) {}; - IfcValue(const IfcVolumetricFlowRateMeasure& c) : express::Select(c) {}; + IfcValue(const IfcVolumetricFlowRateMeasure& c) : express::select(c) {}; - IfcValue(const IfcWarpingConstantMeasure& c) : express::Select(c) {}; + IfcValue(const IfcWarpingConstantMeasure& c) : express::select(c) {}; - IfcValue(const IfcWarpingMomentMeasure& c) : express::Select(c) {}; + IfcValue(const IfcWarpingMomentMeasure& c) : express::select(c) {}; - IfcValue(const IfcMeasureValue& c) : express::Select(c) {}; + IfcValue(const IfcMeasureValue& c) : express::select(c) {}; - IfcValue(const IfcAmountOfSubstanceMeasure& c) : express::Select(c) {}; + IfcValue(const IfcAmountOfSubstanceMeasure& c) : express::select(c) {}; - IfcValue(const IfcAreaMeasure& c) : express::Select(c) {}; + IfcValue(const IfcAreaMeasure& c) : express::select(c) {}; - IfcValue(const IfcComplexNumber& c) : express::Select(c) {}; + IfcValue(const IfcComplexNumber& c) : express::select(c) {}; - IfcValue(const IfcContextDependentMeasure& c) : express::Select(c) {}; + IfcValue(const IfcContextDependentMeasure& c) : express::select(c) {}; - IfcValue(const IfcCountMeasure& c) : express::Select(c) {}; + IfcValue(const IfcCountMeasure& c) : express::select(c) {}; - IfcValue(const IfcDescriptiveMeasure& c) : express::Select(c) {}; + IfcValue(const IfcDescriptiveMeasure& c) : express::select(c) {}; - IfcValue(const IfcElectricCurrentMeasure& c) : express::Select(c) {}; + IfcValue(const IfcElectricCurrentMeasure& c) : express::select(c) {}; - IfcValue(const IfcLengthMeasure& c) : express::Select(c) {}; + IfcValue(const IfcLengthMeasure& c) : express::select(c) {}; - IfcValue(const IfcLuminousIntensityMeasure& c) : express::Select(c) {}; + IfcValue(const IfcLuminousIntensityMeasure& c) : express::select(c) {}; - IfcValue(const IfcMassMeasure& c) : express::Select(c) {}; + IfcValue(const IfcMassMeasure& c) : express::select(c) {}; - IfcValue(const IfcNonNegativeLengthMeasure& c) : express::Select(c) {}; + IfcValue(const IfcNonNegativeLengthMeasure& c) : express::select(c) {}; - IfcValue(const IfcNormalisedRatioMeasure& c) : express::Select(c) {}; + IfcValue(const IfcNormalisedRatioMeasure& c) : express::select(c) {}; - IfcValue(const IfcNumericMeasure& c) : express::Select(c) {}; + IfcValue(const IfcNumericMeasure& c) : express::select(c) {}; - IfcValue(const IfcParameterValue& c) : express::Select(c) {}; + IfcValue(const IfcParameterValue& c) : express::select(c) {}; - IfcValue(const IfcPlaneAngleMeasure& c) : express::Select(c) {}; + IfcValue(const IfcPlaneAngleMeasure& c) : express::select(c) {}; - IfcValue(const IfcPositiveLengthMeasure& c) : express::Select(c) {}; + IfcValue(const IfcPositiveLengthMeasure& c) : express::select(c) {}; - IfcValue(const IfcPositivePlaneAngleMeasure& c) : express::Select(c) {}; + IfcValue(const IfcPositivePlaneAngleMeasure& c) : express::select(c) {}; - IfcValue(const IfcPositiveRatioMeasure& c) : express::Select(c) {}; + IfcValue(const IfcPositiveRatioMeasure& c) : express::select(c) {}; - IfcValue(const IfcRatioMeasure& c) : express::Select(c) {}; + IfcValue(const IfcRatioMeasure& c) : express::select(c) {}; - IfcValue(const IfcSolidAngleMeasure& c) : express::Select(c) {}; + IfcValue(const IfcSolidAngleMeasure& c) : express::select(c) {}; - IfcValue(const IfcThermodynamicTemperatureMeasure& c) : express::Select(c) {}; + IfcValue(const IfcThermodynamicTemperatureMeasure& c) : express::select(c) {}; - IfcValue(const IfcTimeMeasure& c) : express::Select(c) {}; + IfcValue(const IfcTimeMeasure& c) : express::select(c) {}; - IfcValue(const IfcVolumeMeasure& c) : express::Select(c) {}; + IfcValue(const IfcVolumeMeasure& c) : express::select(c) {}; - IfcValue(const IfcSimpleValue& c) : express::Select(c) {}; + IfcValue(const IfcSimpleValue& c) : express::select(c) {}; - IfcValue(const IfcBinary& c) : express::Select(c) {}; + IfcValue(const IfcBinary& c) : express::select(c) {}; - IfcValue(const IfcBoolean& c) : express::Select(c) {}; + IfcValue(const IfcBoolean& c) : express::select(c) {}; - IfcValue(const IfcDate& c) : express::Select(c) {}; + IfcValue(const IfcDate& c) : express::select(c) {}; - IfcValue(const IfcDateTime& c) : express::Select(c) {}; + IfcValue(const IfcDateTime& c) : express::select(c) {}; - IfcValue(const IfcDuration& c) : express::Select(c) {}; + IfcValue(const IfcDuration& c) : express::select(c) {}; - IfcValue(const IfcIdentifier& c) : express::Select(c) {}; + IfcValue(const IfcIdentifier& c) : express::select(c) {}; - IfcValue(const IfcInteger& c) : express::Select(c) {}; + IfcValue(const IfcInteger& c) : express::select(c) {}; - IfcValue(const IfcLabel& c) : express::Select(c) {}; + IfcValue(const IfcLabel& c) : express::select(c) {}; - IfcValue(const IfcLogical& c) : express::Select(c) {}; + IfcValue(const IfcLogical& c) : express::select(c) {}; - IfcValue(const IfcPositiveInteger& c) : express::Select(c) {}; + IfcValue(const IfcPositiveInteger& c) : express::select(c) {}; - IfcValue(const IfcReal& c) : express::Select(c) {}; + IfcValue(const IfcReal& c) : express::select(c) {}; - IfcValue(const IfcText& c) : express::Select(c) {}; + IfcValue(const IfcText& c) : express::select(c) {}; - IfcValue(const IfcTime& c) : express::Select(c) {}; + IfcValue(const IfcTime& c) : express::select(c) {}; - IfcValue(const IfcTimeStamp& c) : express::Select(c) {}; + IfcValue(const IfcTimeStamp& c) : express::select(c) {}; }; /// Definition from ISO/CD 10303-42:1992: This type is used to @@ -4516,43 +4516,43 @@ public: /// definition of the formal standard. /// HISTORY New Type in IFC Release /// 1.5 -class IFC_SCHEMA_API IfcVectorOrDirection : public express::Select { +class IFC_SCHEMA_API IfcVectorOrDirection : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcDirection as() const { return express::Base::as(); } + // IfcDirection as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcVector as() const { return express::Base::as(); } + // IfcVector as() const { return express::base::as(); } - IfcVectorOrDirection(const IfcDirection& c) : express::Select(c) {}; + IfcVectorOrDirection(const IfcDirection& c) : express::select(c) {}; - IfcVectorOrDirection(const IfcVector& c) : express::Select(c) {}; + IfcVectorOrDirection(const IfcVector& c) : express::select(c) {}; }; /// Definition from IAI: A measure of warping stiffness. TRUE denotes infinite stiffness (rigidity). FALSE denotes no stiffness (a release). A numeric value denotes finite linear-elastic stiffness. /// /// HISTORY: New type in IFC 2x4. -class IFC_SCHEMA_API IfcWarpingStiffnessSelect : public express::Select { +class IFC_SCHEMA_API IfcWarpingStiffnessSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcBoolean as() const { return express::Base::as(); } + // IfcBoolean as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcWarpingMomentMeasure as() const { return express::Base::as(); } + // IfcWarpingMomentMeasure as() const { return express::base::as(); } - IfcWarpingStiffnessSelect(const IfcBoolean& c) : express::Select(c) {}; + IfcWarpingStiffnessSelect(const IfcBoolean& c) : express::select(c) {}; - IfcWarpingStiffnessSelect(const IfcWarpingMomentMeasure& c) : express::Select(c) {}; + IfcWarpingStiffnessSelect(const IfcWarpingMomentMeasure& c) : express::select(c) {}; }; /// IfcActionRequestTypeEnum defines the types of sources through which a request can be made. @@ -4566,9 +4566,9 @@ public: /// VERBAL: Request was made verbally in person. /// USERDEFINED: User-defined type. /// NOTDEFINED: Undefined type. -class IFC_SCHEMA_API IfcActionRequestTypeEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcActionRequestTypeEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcActionRequestType_EMAIL, IfcActionRequestType_FAX, IfcActionRequestType_PHONE, IfcActionRequestType_POST, IfcActionRequestType_VERBAL, IfcActionRequestType_USERDEFINED, IfcActionRequestType_NOTDEFINED} Value; static const char* ToString(Value v); @@ -4584,9 +4584,9 @@ public: /// /// HISTORY: New type in Release IFC2x /// Edition 2. -class IFC_SCHEMA_API IfcActionSourceTypeEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcActionSourceTypeEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcActionSourceType_BRAKES, IfcActionSourceType_BUOYANCY, IfcActionSourceType_COMPLETION_G1, IfcActionSourceType_CREEP, IfcActionSourceType_CURRENT, IfcActionSourceType_DEAD_LOAD_G, IfcActionSourceType_EARTHQUAKE_E, IfcActionSourceType_ERECTION, IfcActionSourceType_FIRE, IfcActionSourceType_ICE, IfcActionSourceType_IMPACT, IfcActionSourceType_IMPULSE, IfcActionSourceType_LACK_OF_FIT, IfcActionSourceType_LIVE_LOAD_Q, IfcActionSourceType_PRESTRESSING_P, IfcActionSourceType_PROPPING, IfcActionSourceType_RAIN, IfcActionSourceType_SETTLEMENT_U, IfcActionSourceType_SHRINKAGE, IfcActionSourceType_SNOW_S, IfcActionSourceType_SYSTEM_IMPERFECTION, IfcActionSourceType_TEMPERATURE_T, IfcActionSourceType_TRANSPORT, IfcActionSourceType_WAVE, IfcActionSourceType_WIND_W, IfcActionSourceType_USERDEFINED, IfcActionSourceType_NOTDEFINED} Value; static const char* ToString(Value v); @@ -4604,9 +4604,9 @@ public: /// /// HISTORY: New type in Release IFC2x /// Edition 2. -class IFC_SCHEMA_API IfcActionTypeEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcActionTypeEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcActionType_EXTRAORDINARY_A, IfcActionType_PERMANENT_G, IfcActionType_VARIABLE_Q, IfcActionType_USERDEFINED, IfcActionType_NOTDEFINED} Value; static const char* ToString(Value v); @@ -4633,9 +4633,9 @@ public: /// /// See property set of actuator common attributes for specification of /// properties for hand operated actuators. -class IFC_SCHEMA_API IfcActuatorTypeEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcActuatorTypeEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcActuatorType_ELECTRICACTUATOR, IfcActuatorType_HANDOPERATEDACTUATOR, IfcActuatorType_HYDRAULICACTUATOR, IfcActuatorType_PNEUMATICACTUATOR, IfcActuatorType_THERMOSTATICACTUATOR, IfcActuatorType_USERDEFINED, IfcActuatorType_NOTDEFINED} Value; static const char* ToString(Value v); @@ -4657,9 +4657,9 @@ public: /// HOME A home address. /// DISTRIBUTIONPOINT A postal distribution point address. /// USERDEFINED A user defined address type to be provided. -class IFC_SCHEMA_API IfcAddressTypeEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcAddressTypeEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcAddressType_DISTRIBUTIONPOINT, IfcAddressType_HOME, IfcAddressType_OFFICE, IfcAddressType_SITE, IfcAddressType_USERDEFINED} Value; static const char* ToString(Value v); @@ -4681,9 +4681,9 @@ public: /// NOTDEFINED: Undefined terminal box. /// /// HISTORY: New enumeration in IFC R2.0 -class IFC_SCHEMA_API IfcAirTerminalBoxTypeEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcAirTerminalBoxTypeEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcAirTerminalBoxType_CONSTANTFLOW, IfcAirTerminalBoxType_VARIABLEFLOWPRESSUREDEPENDANT, IfcAirTerminalBoxType_VARIABLEFLOWPRESSUREINDEPENDANT, IfcAirTerminalBoxType_USERDEFINED, IfcAirTerminalBoxType_NOTDEFINED} Value; static const char* ToString(Value v); @@ -4707,9 +4707,9 @@ public: /// NOTE: Architectural louvres within doors or windows are defined by IfcPermeableCoveringProperties. /// /// HISTORY: New enumeration in IFC R2x2. Modified in IFC R2x4 to add LOUVRE and remove EYEBALL, IRIS, LINEARGRILLE, LINEARDIFFUSER -class IFC_SCHEMA_API IfcAirTerminalTypeEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcAirTerminalTypeEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcAirTerminalType_DIFFUSER, IfcAirTerminalType_GRILLE, IfcAirTerminalType_LOUVRE, IfcAirTerminalType_REGISTER, IfcAirTerminalType_USERDEFINED, IfcAirTerminalType_NOTDEFINED} Value; static const char* ToString(Value v); @@ -4736,9 +4736,9 @@ public: /// NOTDEFINED: Undefined air to air heat recovery type. /// /// HISTORY: New enumeration in IFC R2x. -class IFC_SCHEMA_API IfcAirToAirHeatRecoveryTypeEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcAirToAirHeatRecoveryTypeEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcAirToAirHeatRecoveryType_FIXEDPLATECOUNTERFLOWEXCHANGER, IfcAirToAirHeatRecoveryType_FIXEDPLATECROSSFLOWEXCHANGER, IfcAirToAirHeatRecoveryType_FIXEDPLATEPARALLELFLOWEXCHANGER, IfcAirToAirHeatRecoveryType_HEATPIPE, IfcAirToAirHeatRecoveryType_ROTARYWHEEL, IfcAirToAirHeatRecoveryType_RUNAROUNDCOILLOOP, IfcAirToAirHeatRecoveryType_THERMOSIPHONCOILTYPEHEATEXCHANGERS, IfcAirToAirHeatRecoveryType_THERMOSIPHONSEALEDTUBEHEATEXCHANGERS, IfcAirToAirHeatRecoveryType_TWINTOWERENTHALPYRECOVERYLOOPS, IfcAirToAirHeatRecoveryType_USERDEFINED, IfcAirToAirHeatRecoveryType_NOTDEFINED} Value; static const char* ToString(Value v); @@ -4763,9 +4763,9 @@ public: /// WHISTLE: An audible alarm. /// USERDEFINED: User-defined type. /// NOTDEFINED: Undefined type. -class IFC_SCHEMA_API IfcAlarmTypeEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcAlarmTypeEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcAlarmType_BELL, IfcAlarmType_BREAKGLASSBUTTON, IfcAlarmType_LIGHT, IfcAlarmType_MANUALPULLBOX, IfcAlarmType_RAILWAYCROCODILE, IfcAlarmType_RAILWAYDETONATOR, IfcAlarmType_SIREN, IfcAlarmType_WHISTLE, IfcAlarmType_USERDEFINED, IfcAlarmType_NOTDEFINED} Value; static const char* ToString(Value v); @@ -4777,9 +4777,9 @@ public: operator Value() const; }; -class IFC_SCHEMA_API IfcAlignmentCantSegmentTypeEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcAlignmentCantSegmentTypeEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcAlignmentCantSegmentType_BLOSSCURVE, IfcAlignmentCantSegmentType_CONSTANTCANT, IfcAlignmentCantSegmentType_COSINECURVE, IfcAlignmentCantSegmentType_HELMERTCURVE, IfcAlignmentCantSegmentType_LINEARTRANSITION, IfcAlignmentCantSegmentType_SINECURVE, IfcAlignmentCantSegmentType_VIENNESEBEND} Value; static const char* ToString(Value v); @@ -4791,9 +4791,9 @@ public: operator Value() const; }; -class IFC_SCHEMA_API IfcAlignmentHorizontalSegmentTypeEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcAlignmentHorizontalSegmentTypeEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcAlignmentHorizontalSegmentType_BLOSSCURVE, IfcAlignmentHorizontalSegmentType_CIRCULARARC, IfcAlignmentHorizontalSegmentType_CLOTHOID, IfcAlignmentHorizontalSegmentType_COSINECURVE, IfcAlignmentHorizontalSegmentType_CUBIC, IfcAlignmentHorizontalSegmentType_HELMERTCURVE, IfcAlignmentHorizontalSegmentType_LINE, IfcAlignmentHorizontalSegmentType_SINECURVE, IfcAlignmentHorizontalSegmentType_VIENNESEBEND} Value; static const char* ToString(Value v); @@ -4805,9 +4805,9 @@ public: operator Value() const; }; -class IFC_SCHEMA_API IfcAlignmentTypeEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcAlignmentTypeEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcAlignmentType_USERDEFINED, IfcAlignmentType_NOTDEFINED} Value; static const char* ToString(Value v); @@ -4819,9 +4819,9 @@ public: operator Value() const; }; -class IFC_SCHEMA_API IfcAlignmentVerticalSegmentTypeEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcAlignmentVerticalSegmentTypeEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcAlignmentVerticalSegmentType_CIRCULARARC, IfcAlignmentVerticalSegmentType_CLOTHOID, IfcAlignmentVerticalSegmentType_CONSTANTGRADIENT, IfcAlignmentVerticalSegmentType_PARABOLICARC} Value; static const char* ToString(Value v); @@ -4838,9 +4838,9 @@ public: /// /// HISTORY: New type in Release IFC2x /// Edition 2. -class IFC_SCHEMA_API IfcAnalysisModelTypeEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcAnalysisModelTypeEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcAnalysisModelType_IN_PLANE_LOADING_2D, IfcAnalysisModelType_LOADING_3D, IfcAnalysisModelType_OUT_PLANE_LOADING_2D, IfcAnalysisModelType_USERDEFINED, IfcAnalysisModelType_NOTDEFINED} Value; static const char* ToString(Value v); @@ -4858,9 +4858,9 @@ public: /// /// HISTORY: New type in Release IFC2x /// Edition 2. -class IFC_SCHEMA_API IfcAnalysisTheoryTypeEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcAnalysisTheoryTypeEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcAnalysisTheoryType_FIRST_ORDER_THEORY, IfcAnalysisTheoryType_FULL_NONLINEAR_THEORY, IfcAnalysisTheoryType_SECOND_ORDER_THEORY, IfcAnalysisTheoryType_THIRD_ORDER_THEORY, IfcAnalysisTheoryType_USERDEFINED, IfcAnalysisTheoryType_NOTDEFINED} Value; static const char* ToString(Value v); @@ -4872,9 +4872,9 @@ public: operator Value() const; }; -class IFC_SCHEMA_API IfcAnnotationTypeEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcAnnotationTypeEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcAnnotationType_ASBUILTAREA, IfcAnnotationType_ASBUILTLINE, IfcAnnotationType_ASBUILTPOINT, IfcAnnotationType_ASSUMEDAREA, IfcAnnotationType_ASSUMEDLINE, IfcAnnotationType_ASSUMEDPOINT, IfcAnnotationType_NON_PHYSICAL_SIGNAL, IfcAnnotationType_SUPERELEVATIONEVENT, IfcAnnotationType_WIDTHEVENT, IfcAnnotationType_USERDEFINED, IfcAnnotationType_NOTDEFINED} Value; static const char* ToString(Value v); @@ -4897,9 +4897,9 @@ public: /// /// Use definitions /// There can be only one arithmetic operator for each applied value relationship. This is to enforce arithmetic consistency. Given this consistency, the cardinality of the IfcAppliedValueRelationship.Components attribute is a set of one to many applied values that are components of an applied value. -class IFC_SCHEMA_API IfcArithmeticOperatorEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcArithmeticOperatorEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcArithmeticOperator_ADD, IfcArithmeticOperator_DIVIDE, IfcArithmeticOperator_MULTIPLY, IfcArithmeticOperator_SUBTRACT} Value; static const char* ToString(Value v); @@ -4922,9 +4922,9 @@ public: /// SITE - this assembly is assembled at site /// /// FACTORY - this assembly is assembled in a factory -class IFC_SCHEMA_API IfcAssemblyPlaceEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcAssemblyPlaceEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcAssemblyPlace_FACTORY, IfcAssemblyPlace_SITE, IfcAssemblyPlace_NOTDEFINED} Value; static const char* ToString(Value v); @@ -4949,9 +4949,9 @@ public: /// SWITCHER: A device that receives audio and/or video signals, switches sources, and transmits signals to downstream devices. /// TELEPHONE: A telecommunications device that is used to transmit and receive sound, and optionally video. /// TUNER: An electronic receiver that detects, demodulates, and amplifies transmitted signals. -class IFC_SCHEMA_API IfcAudioVisualApplianceTypeEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcAudioVisualApplianceTypeEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcAudioVisualApplianceType_AMPLIFIER, IfcAudioVisualApplianceType_CAMERA, IfcAudioVisualApplianceType_COMMUNICATIONTERMINAL, IfcAudioVisualApplianceType_DISPLAY, IfcAudioVisualApplianceType_MICROPHONE, IfcAudioVisualApplianceType_PLAYER, IfcAudioVisualApplianceType_PROJECTOR, IfcAudioVisualApplianceType_RECEIVER, IfcAudioVisualApplianceType_RECORDINGEQUIPMENT, IfcAudioVisualApplianceType_SPEAKER, IfcAudioVisualApplianceType_SWITCHER, IfcAudioVisualApplianceType_TELEPHONE, IfcAudioVisualApplianceType_TUNER, IfcAudioVisualApplianceType_USERDEFINED, IfcAudioVisualApplianceType_NOTDEFINED} Value; static const char* ToString(Value v); @@ -4976,9 +4976,9 @@ public: /// NOTE Corresponding ISO 10303 type: b_spline_curve_form. Please refer to ISO/IS 10303-42:1994, p. 15 for the final definition of the formal standard. /// /// HISTORY New type in Release IFC2x2. -class IFC_SCHEMA_API IfcBSplineCurveForm : public express::DeclaredType { +class IFC_SCHEMA_API IfcBSplineCurveForm : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcBSplineCurveForm_CIRCULAR_ARC, IfcBSplineCurveForm_ELLIPTIC_ARC, IfcBSplineCurveForm_HYPERBOLIC_ARC, IfcBSplineCurveForm_PARABOLIC_ARC, IfcBSplineCurveForm_POLYLINE_FORM, IfcBSplineCurveForm_UNSPECIFIED} Value; static const char* ToString(Value v); @@ -4990,9 +4990,9 @@ public: operator Value() const; }; -class IFC_SCHEMA_API IfcBSplineSurfaceForm : public express::DeclaredType { +class IFC_SCHEMA_API IfcBSplineSurfaceForm : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcBSplineSurfaceForm_CONICAL_SURF, IfcBSplineSurfaceForm_CYLINDRICAL_SURF, IfcBSplineSurfaceForm_GENERALISED_CONE, IfcBSplineSurfaceForm_PLANE_SURF, IfcBSplineSurfaceForm_QUADRIC_SURF, IfcBSplineSurfaceForm_RULED_SURF, IfcBSplineSurfaceForm_SPHERICAL_SURF, IfcBSplineSurfaceForm_SURF_OF_LINEAR_EXTRUSION, IfcBSplineSurfaceForm_SURF_OF_REVOLUTION, IfcBSplineSurfaceForm_TOROIDAL_SURF, IfcBSplineSurfaceForm_UNSPECIFIED} Value; static const char* ToString(Value v); @@ -5042,9 +5042,9 @@ public: /// IFC2x4 CHANGE The enumerators /// HOLLOWCORE and SPANDREL have been /// added. -class IFC_SCHEMA_API IfcBeamTypeEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcBeamTypeEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcBeamType_BEAM, IfcBeamType_CORNICE, IfcBeamType_DIAPHRAGM, IfcBeamType_EDGEBEAM, IfcBeamType_GIRDER_SEGMENT, IfcBeamType_HATSTONE, IfcBeamType_HOLLOWCORE, IfcBeamType_JOIST, IfcBeamType_LINTEL, IfcBeamType_PIERCAP, IfcBeamType_SPANDREL, IfcBeamType_T_BEAM, IfcBeamType_USERDEFINED, IfcBeamType_NOTDEFINED} Value; static const char* ToString(Value v); @@ -5056,9 +5056,9 @@ public: operator Value() const; }; -class IFC_SCHEMA_API IfcBearingTypeEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcBearingTypeEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcBearingType_CYLINDRICAL, IfcBearingType_DISK, IfcBearingType_ELASTOMERIC, IfcBearingType_GUIDE, IfcBearingType_POT, IfcBearingType_ROCKER, IfcBearingType_ROLLER, IfcBearingType_SPHERICAL, IfcBearingType_USERDEFINED, IfcBearingType_NOTDEFINED} Value; static const char* ToString(Value v); @@ -5109,9 +5109,9 @@ public: /// /// NOTINCLUDEDIN /// Identifies that a value (individual item) must not be included (i.e. must be excluded) in the aggregation (set, list or table) set by the constraint. -class IFC_SCHEMA_API IfcBenchmarkEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcBenchmarkEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcBenchmark_EQUALTO, IfcBenchmark_GREATERTHAN, IfcBenchmark_GREATERTHANOREQUALTO, IfcBenchmark_INCLUDEDIN, IfcBenchmark_INCLUDES, IfcBenchmark_LESSTHAN, IfcBenchmark_LESSTHANOREQUALTO, IfcBenchmark_NOTEQUALTO, IfcBenchmark_NOTINCLUDEDIN, IfcBenchmark_NOTINCLUDES} Value; static const char* ToString(Value v); @@ -5131,9 +5131,9 @@ public: /// NOTDEFINED: Undefined Boiler type. /// /// HISTORY: New enumeration in IFC R2x. -class IFC_SCHEMA_API IfcBoilerTypeEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcBoilerTypeEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcBoilerType_STEAM, IfcBoilerType_WATER, IfcBoilerType_USERDEFINED, IfcBoilerType_NOTDEFINED} Value; static const char* ToString(Value v); @@ -5153,9 +5153,9 @@ public: /// NOTE Corresponding STEP type: boolean_operator, please refer to ISO/IS 10303-42:1994, p.167 for the final definition of the formal standard. /// /// HISTORY New Type in IFC Release 1.5.1. -class IFC_SCHEMA_API IfcBooleanOperator : public express::DeclaredType { +class IFC_SCHEMA_API IfcBooleanOperator : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcBooleanOperator_DIFFERENCE, IfcBooleanOperator_INTERSECTION, IfcBooleanOperator_UNION} Value; static const char* ToString(Value v); @@ -5167,9 +5167,9 @@ public: operator Value() const; }; -class IFC_SCHEMA_API IfcBridgePartTypeEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcBridgePartTypeEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcBridgePartType_ABUTMENT, IfcBridgePartType_DECK, IfcBridgePartType_DECK_SEGMENT, IfcBridgePartType_FOUNDATION, IfcBridgePartType_PIER, IfcBridgePartType_PIER_SEGMENT, IfcBridgePartType_PYLON, IfcBridgePartType_SUBSTRUCTURE, IfcBridgePartType_SUPERSTRUCTURE, IfcBridgePartType_SURFACESTRUCTURE, IfcBridgePartType_USERDEFINED, IfcBridgePartType_NOTDEFINED} Value; static const char* ToString(Value v); @@ -5181,9 +5181,9 @@ public: operator Value() const; }; -class IFC_SCHEMA_API IfcBridgeTypeEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcBridgeTypeEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcBridgeType_ARCHED, IfcBridgeType_CABLE_STAYED, IfcBridgeType_CANTILEVER, IfcBridgeType_CULVERT, IfcBridgeType_FRAMEWORK, IfcBridgeType_GIRDER, IfcBridgeType_SUSPENSION, IfcBridgeType_TRUSS, IfcBridgeType_USERDEFINED, IfcBridgeType_NOTDEFINED} Value; static const char* ToString(Value v); @@ -5202,9 +5202,9 @@ public: /// NOTDEFINED: Undefined accessory /// /// HISTORY New Enumeration in IFC 2x4. -class IFC_SCHEMA_API IfcBuildingElementPartTypeEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcBuildingElementPartTypeEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcBuildingElementPartType_APRON, IfcBuildingElementPartType_ARMOURUNIT, IfcBuildingElementPartType_INSULATION, IfcBuildingElementPartType_PRECASTPANEL, IfcBuildingElementPartType_SAFETYCAGE, IfcBuildingElementPartType_USERDEFINED, IfcBuildingElementPartType_NOTDEFINED} Value; static const char* ToString(Value v); @@ -5226,9 +5226,9 @@ public: /// USERDEFINED /// /// NOTDEFINED -class IFC_SCHEMA_API IfcBuildingElementProxyTypeEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcBuildingElementProxyTypeEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcBuildingElementProxyType_COMPLEX, IfcBuildingElementProxyType_ELEMENT, IfcBuildingElementProxyType_PARTIAL, IfcBuildingElementProxyType_PROVISIONFORSPACE, IfcBuildingElementProxyType_PROVISIONFORVOID, IfcBuildingElementProxyType_USERDEFINED, IfcBuildingElementProxyType_NOTDEFINED} Value; static const char* ToString(Value v); @@ -5253,9 +5253,9 @@ public: /// natural sun light, /// TRANSPORT: System of all transport elements in a /// building that enables the transport of people or goods. -class IFC_SCHEMA_API IfcBuildingSystemTypeEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcBuildingSystemTypeEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcBuildingSystemType_FENESTRATION, IfcBuildingSystemType_FOUNDATION, IfcBuildingSystemType_LOADBEARING, IfcBuildingSystemType_OUTERSHELL, IfcBuildingSystemType_SHADING, IfcBuildingSystemType_TRANSPORT, IfcBuildingSystemType_USERDEFINED, IfcBuildingSystemType_NOTDEFINED} Value; static const char* ToString(Value v); @@ -5267,9 +5267,9 @@ public: operator Value() const; }; -class IFC_SCHEMA_API IfcBuiltSystemTypeEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcBuiltSystemTypeEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcBuiltSystemType_EROSIONPREVENTION, IfcBuiltSystemType_FENESTRATION, IfcBuiltSystemType_FOUNDATION, IfcBuiltSystemType_LOADBEARING, IfcBuiltSystemType_MOORING, IfcBuiltSystemType_OUTERSHELL, IfcBuiltSystemType_PRESTRESSING, IfcBuiltSystemType_RAILWAYLINE, IfcBuiltSystemType_RAILWAYTRACK, IfcBuiltSystemType_REINFORCING, IfcBuiltSystemType_SHADING, IfcBuiltSystemType_TRACKCIRCUIT, IfcBuiltSystemType_TRANSPORT, IfcBuiltSystemType_USERDEFINED, IfcBuiltSystemType_NOTDEFINED} Value; static const char* ToString(Value v); @@ -5287,9 +5287,9 @@ public: /// NOTDEFINED: Undefined burner type. /// /// HISTORY: New enumeration in IFC R2x4. -class IFC_SCHEMA_API IfcBurnerTypeEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcBurnerTypeEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcBurnerType_USERDEFINED, IfcBurnerType_NOTDEFINED} Value; static const char* ToString(Value v); @@ -5310,9 +5310,9 @@ public: /// TEE: A fitting at which a branch is taken from the main route of the cable carrier. /// USERDEFINED: User-defined type. /// NOTDEFINED: Undefined type. -class IFC_SCHEMA_API IfcCableCarrierFittingTypeEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcCableCarrierFittingTypeEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcCableCarrierFittingType_BEND, IfcCableCarrierFittingType_CONNECTOR, IfcCableCarrierFittingType_CROSS, IfcCableCarrierFittingType_JUNCTION, IfcCableCarrierFittingType_REDUCER, IfcCableCarrierFittingType_TEE, IfcCableCarrierFittingType_TRANSITION, IfcCableCarrierFittingType_USERDEFINED, IfcCableCarrierFittingType_NOTDEFINED} Value; static const char* ToString(Value v); @@ -5333,9 +5333,9 @@ public: /// CONDUITSEGMENT: An enclosed tubular carrier segment through which cables are pulled. /// USERDEFINED: User-defined type. /// NOTDEFINED: Undefined type. -class IFC_SCHEMA_API IfcCableCarrierSegmentTypeEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcCableCarrierSegmentTypeEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcCableCarrierSegmentType_CABLEBRACKET, IfcCableCarrierSegmentType_CABLELADDERSEGMENT, IfcCableCarrierSegmentType_CABLETRAYSEGMENT, IfcCableCarrierSegmentType_CABLETRUNKINGSEGMENT, IfcCableCarrierSegmentType_CATENARYWIRE, IfcCableCarrierSegmentType_CONDUITSEGMENT, IfcCableCarrierSegmentType_DROPPER, IfcCableCarrierSegmentType_USERDEFINED, IfcCableCarrierSegmentType_NOTDEFINED} Value; static const char* ToString(Value v); @@ -5357,9 +5357,9 @@ public: /// TRANSITION: A fitting that joins two cable segments of different connector types. /// USERDEFINED: User-defined type. /// NOTDEFINED: Undefined type. -class IFC_SCHEMA_API IfcCableFittingTypeEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcCableFittingTypeEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcCableFittingType_CONNECTOR, IfcCableFittingType_ENTRY, IfcCableFittingType_EXIT, IfcCableFittingType_FANOUT, IfcCableFittingType_JUNCTION, IfcCableFittingType_TRANSITION, IfcCableFittingType_USERDEFINED, IfcCableFittingType_NOTDEFINED} Value; static const char* ToString(Value v); @@ -5382,9 +5382,9 @@ public: /// CORESEGMENT: A self contained element of a cable that comprises one or more conductors and sheathing.The core of one lead is normally single wired or multiwired which are intertwined. /// USERDEFINED: User-defined type. /// NOTDEFINED: Undefined type. -class IFC_SCHEMA_API IfcCableSegmentTypeEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcCableSegmentTypeEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcCableSegmentType_BUSBARSEGMENT, IfcCableSegmentType_CABLESEGMENT, IfcCableSegmentType_CONDUCTORSEGMENT, IfcCableSegmentType_CONTACTWIRESEGMENT, IfcCableSegmentType_CORESEGMENT, IfcCableSegmentType_FIBERSEGMENT, IfcCableSegmentType_FIBERTUBE, IfcCableSegmentType_OPTICALCABLESEGMENT, IfcCableSegmentType_STITCHWIRE, IfcCableSegmentType_WIREPAIRSEGMENT, IfcCableSegmentType_USERDEFINED, IfcCableSegmentType_NOTDEFINED} Value; static const char* ToString(Value v); @@ -5396,9 +5396,9 @@ public: operator Value() const; }; -class IFC_SCHEMA_API IfcCaissonFoundationTypeEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcCaissonFoundationTypeEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcCaissonFoundationType_CAISSON, IfcCaissonFoundationType_WELL, IfcCaissonFoundationType_USERDEFINED, IfcCaissonFoundationType_NOTDEFINED} Value; static const char* ToString(Value v); @@ -5420,9 +5420,9 @@ public: /// Consider Application A will create an IFC dataset that it wants to publish to others for modification and have the ability to subsequently merge these changes back into the original model. Before publication, it may want to set the IfcChangeActionEnum to NOCHANGE to establish a baseline so that other application changes can be easily identified. Application B then receives this IFC dataset and adds a new object and sets IfcChangeActionEnum to ADDED with Application B defined as the OwningApplication. Application B then modifies an existing object and (re)defines the LastModifiedDate to the time of the modification, LastModifyingUser to the IfcPersonAndOrganization making the change, and sets the LastModifyingApplication to Application B. When Application A receives this modified dataset, it can determine which objects have been added and modified by Application B and either merge or reject these changes as necessary. Consequently, the intent is that an application only modifies the value of IfcChangeActionEnum when it does something to the object, with the further intent that a model server is responsible for clearing the IfcChangeActionEnum back to NOCHANGE when it is ready to be republished. /// /// HISTORY: New enumeration in IFC R2.0. Modified in IFC2x4. -class IFC_SCHEMA_API IfcChangeActionEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcChangeActionEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcChangeAction_ADDED, IfcChangeAction_DELETED, IfcChangeAction_MODIFIED, IfcChangeAction_NOCHANGE, IfcChangeAction_NOTDEFINED} Value; static const char* ToString(Value v); @@ -5443,9 +5443,9 @@ public: /// NOTDEFINED: Undefined chiller type. /// /// HISTORY: New enumeration in IFC R2x. -class IFC_SCHEMA_API IfcChillerTypeEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcChillerTypeEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcChillerType_AIRCOOLED, IfcChillerType_HEATRECOVERY, IfcChillerType_WATERCOOLED, IfcChillerType_USERDEFINED, IfcChillerType_NOTDEFINED} Value; static const char* ToString(Value v); @@ -5466,9 +5466,9 @@ public: /// NOTE Currently there are no specific enumerators /// defined, the IfcChimneyTypeEnum has been added /// for future extensions. -class IFC_SCHEMA_API IfcChimneyTypeEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcChimneyTypeEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcChimneyType_USERDEFINED, IfcChimneyType_NOTDEFINED} Value; static const char* ToString(Value v); @@ -5501,9 +5501,9 @@ public: /// NOTDEFINED: Undefined coil type. /// /// HISTORY: New enumeration in IFC R2x. -class IFC_SCHEMA_API IfcCoilTypeEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcCoilTypeEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcCoilType_DXCOOLINGCOIL, IfcCoilType_ELECTRICHEATINGCOIL, IfcCoilType_GASHEATINGCOIL, IfcCoilType_HYDRONICCOIL, IfcCoilType_STEAMHEATINGCOIL, IfcCoilType_WATERCOOLINGCOIL, IfcCoilType_WATERHEATINGCOIL, IfcCoilType_USERDEFINED, IfcCoilType_NOTDEFINED} Value; static const char* ToString(Value v); @@ -5528,9 +5528,9 @@ public: /// future releases of IFC. /// HISTORY New Enumeration /// in Release IFC2x Edition 2. -class IFC_SCHEMA_API IfcColumnTypeEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcColumnTypeEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcColumnType_COLUMN, IfcColumnType_PIERSTEM, IfcColumnType_PIERSTEM_SEGMENT, IfcColumnType_PILASTER, IfcColumnType_STANDCOLUMN, IfcColumnType_USERDEFINED, IfcColumnType_NOTDEFINED} Value; static const char* ToString(Value v); @@ -5557,9 +5557,9 @@ public: /// REPEATER: A repeater is an electronic device that receives a signal and retransmits it at a higher level and/or higher power, or onto the other side of an obstruction, so that the signal can cover longer distances without degradation. /// ROUTER: A router is a networking device whose software and hardware are usually tailored to the tasks of routing and forwarding information. For example, on the Internet, information is directed to various paths by routers. /// SCANNER: A machine that has the primary function of scanning the content of printed matter and converting it to digital format that can be stored in a computer. -class IFC_SCHEMA_API IfcCommunicationsApplianceTypeEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcCommunicationsApplianceTypeEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcCommunicationsApplianceType_ANTENNA, IfcCommunicationsApplianceType_AUTOMATON, IfcCommunicationsApplianceType_COMPUTER, IfcCommunicationsApplianceType_FAX, IfcCommunicationsApplianceType_GATEWAY, IfcCommunicationsApplianceType_INTELLIGENTPERIPHERAL, IfcCommunicationsApplianceType_IPNETWORKEQUIPMENT, IfcCommunicationsApplianceType_LINESIDEELECTRONICUNIT, IfcCommunicationsApplianceType_MODEM, IfcCommunicationsApplianceType_NETWORKAPPLIANCE, IfcCommunicationsApplianceType_NETWORKBRIDGE, IfcCommunicationsApplianceType_NETWORKHUB, IfcCommunicationsApplianceType_OPTICALLINETERMINAL, IfcCommunicationsApplianceType_OPTICALNETWORKUNIT, IfcCommunicationsApplianceType_PRINTER, IfcCommunicationsApplianceType_RADIOBLOCKCENTER, IfcCommunicationsApplianceType_REPEATER, IfcCommunicationsApplianceType_ROUTER, IfcCommunicationsApplianceType_SCANNER, IfcCommunicationsApplianceType_TELECOMMAND, IfcCommunicationsApplianceType_TELEPHONYEXCHANGE, IfcCommunicationsApplianceType_TRANSITIONCOMPONENT, IfcCommunicationsApplianceType_TRANSPONDER, IfcCommunicationsApplianceType_TRANSPORTEQUIPMENT, IfcCommunicationsApplianceType_USERDEFINED, IfcCommunicationsApplianceType_NOTDEFINED} Value; static const char* ToString(Value v); @@ -5578,9 +5578,9 @@ public: /// /// P_COMPLEX: the properties defined by this IfcComplexPropertyTemplate are of type IfcComplexProperty. /// Q_COMPLEX: the properties defined by this IfcComplexPropertyTemplate are of type IfcPhysicalComplexQuantity. -class IFC_SCHEMA_API IfcComplexPropertyTemplateTypeEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcComplexPropertyTemplateTypeEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcComplexPropertyTemplateType_P_COMPLEX, IfcComplexPropertyTemplateType_Q_COMPLEX} Value; static const char* ToString(Value v); @@ -5613,9 +5613,9 @@ public: /// NOTDEFINED: Undefined compressor type. /// /// HISTORY: New enumeration in IFC R2x. -class IFC_SCHEMA_API IfcCompressorTypeEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcCompressorTypeEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcCompressorType_BOOSTER, IfcCompressorType_DYNAMIC, IfcCompressorType_HERMETIC, IfcCompressorType_OPENTYPE, IfcCompressorType_RECIPROCATING, IfcCompressorType_ROLLINGPISTON, IfcCompressorType_ROTARY, IfcCompressorType_ROTARYVANE, IfcCompressorType_SCROLL, IfcCompressorType_SEMIHERMETIC, IfcCompressorType_SINGLESCREW, IfcCompressorType_SINGLESTAGE, IfcCompressorType_TROCHOIDAL, IfcCompressorType_TWINSCREW, IfcCompressorType_WELDEDSHELLHERMETIC, IfcCompressorType_USERDEFINED, IfcCompressorType_NOTDEFINED} Value; static const char* ToString(Value v); @@ -5639,9 +5639,9 @@ public: /// NOTDEFINED: Undefined condenser type. /// /// HISTORY: New enumeration in IFC 2x2. WATERCOOLED added in IFC 2x4. -class IFC_SCHEMA_API IfcCondenserTypeEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcCondenserTypeEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcCondenserType_AIRCOOLED, IfcCondenserType_EVAPORATIVECOOLED, IfcCondenserType_WATERCOOLED, IfcCondenserType_WATERCOOLEDBRAZEDPLATE, IfcCondenserType_WATERCOOLEDSHELLCOIL, IfcCondenserType_WATERCOOLEDSHELLTUBE, IfcCondenserType_WATERCOOLEDTUBEINTUBE, IfcCondenserType_USERDEFINED, IfcCondenserType_NOTDEFINED} Value; static const char* ToString(Value v); @@ -5672,9 +5672,9 @@ public: /// RelatedConnectionType: AtStart /// /// Figure 65 — Connection types /*[3:3]*/ v); operator std::vector< int64_t > /*[3:3]*/() const; }; -class IFC_SCHEMA_API IfcAreaDensityMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcAreaDensityMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcAreaDensityMeasure initialize(double v); @@ -11613,18 +11613,18 @@ public: /// NOTE Corresponding ISO 10303 name: area_measure, please refer to ISO/IS 10303-41 for the final definition of the formal standard. /// /// HISTORY New type in IFC Release 1.5.1. -class IFC_SCHEMA_API IfcAreaMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcAreaMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcAreaMeasure initialize(double v); operator double() const; }; -class IFC_SCHEMA_API IfcBinary : public express::DeclaredType { +class IFC_SCHEMA_API IfcBinary : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcBinary initialize(boost::dynamic_bitset<> v); @@ -11635,9 +11635,9 @@ public: /// Type: BOOLEAN /// /// HISTORY New type in IFC Release 1.5.1. -class IFC_SCHEMA_API IfcBoolean : public express::DeclaredType { +class IFC_SCHEMA_API IfcBoolean : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcBoolean initialize(bool v); @@ -11686,9 +11686,9 @@ public: /// Figure 284 illustrates an example extrusion shape with arbitrary profile (IfcArbitraryClosedProfileDef), aligned "mid-depth right" on the member axis. The line of sight follows the extrusion direction Z which points into the drawing plane of above illustration. Hence, "left" is in the positive X direction of the IfcProfileDef. "Top" is in the positive Y direction of the IfcProfileDef. /// /// Figure 284 — Cardinal point extrusion -class IFC_SCHEMA_API IfcCardinalPointReference : public express::DeclaredType { +class IFC_SCHEMA_API IfcCardinalPointReference : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcCardinalPointReference initialize(int64_t v); @@ -11705,9 +11705,9 @@ public: /// Type: ARRAY [1:2] OF REAL /// /// HISTORY New type in IFC Release 2x2. -class IFC_SCHEMA_API IfcComplexNumber : public express::DeclaredType { +class IFC_SCHEMA_API IfcComplexNumber : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcComplexNumber initialize(std::vector< double > /*[1:2]*/ v); @@ -11761,9 +11761,9 @@ public: ///      + FORMAT(ABS(c[4]), '##');  -- -50° 58' 33" 110400 /// /// Another often encountered display format of latitudes and longitudes is to omit the signs and print N, S, E, W indicators instead, for example, 50°58'33"S. When stored as IfcCompoundPlaneAngleMeasure however, a compound plane angle measure is always signed, with same sign of all components. -class IFC_SCHEMA_API IfcCompoundPlaneAngleMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcCompoundPlaneAngleMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcCompoundPlaneAngleMeasure initialize(std::vector< int64_t > /*[3:4]*/ v); @@ -11775,9 +11775,9 @@ public: /// NOTE Corresponding ISO 10303 name: context_dependent_measure, please refer to ISO/IS 10303-41 for the final definition of the formal standard. /// /// HISTORY New type in IFC Release 1.5.1. -class IFC_SCHEMA_API IfcContextDependentMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcContextDependentMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcContextDependentMeasure initialize(double v); @@ -11789,9 +11789,9 @@ public: /// NOTE Corresponding ISO 10303 name: count_measure, please refer to ISO/IS 10303-41 for the final definition of the formal standard. /// /// HISTORY New type in IFC Release 1.5.1. -class IFC_SCHEMA_API IfcCountMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcCountMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcCountMeasure initialize(int64_t v); @@ -11804,9 +11804,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC2x2. -class IFC_SCHEMA_API IfcCurvatureMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcCurvatureMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcCurvatureMeasure initialize(double v); @@ -11818,9 +11818,9 @@ public: /// /// Use definitions /// All given values should be provided in context and converted into a Gregorian date context and be shall be processable by a receiving application. -class IFC_SCHEMA_API IfcDate : public express::DeclaredType { +class IFC_SCHEMA_API IfcDate : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcDate initialize(std::string v); @@ -11844,9 +11844,9 @@ public: /// otherwise they are forbidden. The year 0000 is prohibited. /// /// HISTORY: New type in IFC2x4 -class IFC_SCHEMA_API IfcDateTime : public express::DeclaredType { +class IFC_SCHEMA_API IfcDateTime : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcDateTime initialize(std::string v); @@ -11864,9 +11864,9 @@ public: /// Release 1.5.1. /// IFC2x4 CHANGE Where rule /// ValidRange added. -class IFC_SCHEMA_API IfcDayInMonthNumber : public express::DeclaredType { +class IFC_SCHEMA_API IfcDayInMonthNumber : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcDayInMonthNumber initialize(int64_t v); @@ -11906,9 +11906,9 @@ public: /// Type: INTEGER /// HISTORY New type in /// IFC2x4. -class IFC_SCHEMA_API IfcDayInWeekNumber : public express::DeclaredType { +class IFC_SCHEMA_API IfcDayInWeekNumber : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcDayInWeekNumber initialize(int64_t v); @@ -11920,9 +11920,9 @@ public: /// NOTE Corresponding ISO 10303 name:descriptive_measure, please refer to ISO/IS 10303-41 for the final definition of the formal standard. /// /// HISTORY New type in IFC Release 1.5.1. -class IFC_SCHEMA_API IfcDescriptiveMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcDescriptiveMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcDescriptiveMeasure initialize(std::string v); @@ -11935,9 +11935,9 @@ public: /// NOTE Corresponding ISO 10303 type: dimension_count, please refer to ISO/IS 10303-42:1994, p. 14 for the final definition of the formal standard. /// /// HISTORY New Type in IFC Release 1.5 -class IFC_SCHEMA_API IfcDimensionCount : public express::DeclaredType { +class IFC_SCHEMA_API IfcDimensionCount : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcDimensionCount initialize(int64_t v); @@ -11948,9 +11948,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2x. -class IFC_SCHEMA_API IfcDoseEquivalentMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcDoseEquivalentMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcDoseEquivalentMeasure initialize(double v); @@ -11961,9 +11961,9 @@ public: /// EXAMPLE: P0002-10-15T10:30:20 (duration of two years, 10 months, 15 days, 10 hours, 30 minutes and 20 seconds). /// /// HISTORY: New type in IFC2x4 -class IFC_SCHEMA_API IfcDuration : public express::DeclaredType { +class IFC_SCHEMA_API IfcDuration : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcDuration initialize(std::string v); @@ -11975,9 +11975,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2.0. -class IFC_SCHEMA_API IfcDynamicViscosityMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcDynamicViscosityMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcDynamicViscosityMeasure initialize(double v); @@ -11988,9 +11988,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2x. -class IFC_SCHEMA_API IfcElectricCapacitanceMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcElectricCapacitanceMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcElectricCapacitanceMeasure initialize(double v); @@ -12001,9 +12001,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2x. -class IFC_SCHEMA_API IfcElectricChargeMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcElectricChargeMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcElectricChargeMeasure initialize(double v); @@ -12014,9 +12014,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2x. -class IFC_SCHEMA_API IfcElectricConductanceMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcElectricConductanceMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcElectricConductanceMeasure initialize(double v); @@ -12029,9 +12029,9 @@ public: /// NOTE Corresponding ISO 10303 name: electric_current_measure, please refer to ISO/IS 10303-41 for the final definition of the formal standard. /// /// HISTORY New type in IFC Release 1.5.1. -class IFC_SCHEMA_API IfcElectricCurrentMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcElectricCurrentMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcElectricCurrentMeasure initialize(double v); @@ -12042,9 +12042,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2x. -class IFC_SCHEMA_API IfcElectricResistanceMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcElectricResistanceMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcElectricResistanceMeasure initialize(double v); @@ -12055,9 +12055,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2.0. -class IFC_SCHEMA_API IfcElectricVoltageMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcElectricVoltageMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcElectricVoltageMeasure initialize(double v); @@ -12068,9 +12068,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2.0. -class IFC_SCHEMA_API IfcEnergyMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcEnergyMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcEnergyMeasure initialize(double v); @@ -12090,9 +12090,9 @@ public: /// NOTE  Corresponding CSS1 definitions is font-style. /// /// HISTORY  New type in IFC2x3. -class IFC_SCHEMA_API IfcFontStyle : public express::DeclaredType { +class IFC_SCHEMA_API IfcFontStyle : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcFontStyle initialize(std::string v); @@ -12110,9 +12110,9 @@ public: /// NOTE  Corresponding CSS1 definitions is font-variant. /// /// HISTORY  New type in IFC2x3. -class IFC_SCHEMA_API IfcFontVariant : public express::DeclaredType { +class IFC_SCHEMA_API IfcFontVariant : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcFontVariant initialize(std::string v); @@ -12141,9 +12141,9 @@ public: /// NOTE  Corresponding CSS1 definitions is font-weight. /// /// HISTORY  New type in IFC2x2 Addendum 2. -class IFC_SCHEMA_API IfcFontWeight : public express::DeclaredType { +class IFC_SCHEMA_API IfcFontWeight : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcFontWeight initialize(std::string v); @@ -12154,9 +12154,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2x. -class IFC_SCHEMA_API IfcForceMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcForceMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcForceMeasure initialize(double v); @@ -12167,9 +12167,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2.0. -class IFC_SCHEMA_API IfcFrequencyMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcFrequencyMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcFrequencyMeasure initialize(double v); @@ -12188,9 +12188,9 @@ public: /// Refer to the BuildingSMART website (www.buildingsmart-tech.org) for more information and sample encoding algorithms. /// /// HISTORY  New type in IFC R1.5.1. -class IFC_SCHEMA_API IfcGloballyUniqueId : public express::DeclaredType { +class IFC_SCHEMA_API IfcGloballyUniqueId : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcGloballyUniqueId initialize(std::string v); @@ -12201,9 +12201,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2.0. -class IFC_SCHEMA_API IfcHeatFluxDensityMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcHeatFluxDensityMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcHeatFluxDensityMeasure initialize(double v); @@ -12212,9 +12212,9 @@ public: /// IfcHeatingValueMeasure defines the amount of energy released (usually in MJ/kg) when a fuel is burned. /// /// HISTORY: This is new type in IFC2x2. -class IFC_SCHEMA_API IfcHeatingValueMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcHeatingValueMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcHeatingValueMeasure initialize(double v); @@ -12234,9 +12234,9 @@ public: /// Per ISO 10303-11, the set of characters that may appear in STRINGs is defined in ISO 10646. The encoding of characters in case of file-based exchange is defined in ISO 10303-21 (STEP physical files) and ISO 10303-28 (XML files). Among else, these specifications define the encoding of 8-bit characters from ISO 8859-1...-16 and of 2-byte Unicode characters. /// /// Note that while IfcIdentifier is restricted to 255 characters, the size in exchange files after encoding may be considerably larger than 255 octets, depending on the particular encoding and on the contents of the identifier. -class IFC_SCHEMA_API IfcIdentifier : public express::DeclaredType { +class IFC_SCHEMA_API IfcIdentifier : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcIdentifier initialize(std::string v); @@ -12247,9 +12247,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2x. -class IFC_SCHEMA_API IfcIlluminanceMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcIlluminanceMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcIlluminanceMeasure initialize(double v); @@ -12260,9 +12260,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2x. -class IFC_SCHEMA_API IfcInductanceMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcInductanceMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcInductanceMeasure initialize(double v); @@ -12275,9 +12275,9 @@ public: /// Type: INTEGER /// /// HISTORY New type in IFC Release 1.5.1. -class IFC_SCHEMA_API IfcInteger : public express::DeclaredType { +class IFC_SCHEMA_API IfcInteger : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcInteger initialize(int64_t v); @@ -12290,9 +12290,9 @@ public: /// Type: INTEGER /// /// HISTORY New type in IFC Release 2.0. -class IFC_SCHEMA_API IfcIntegerCountRateMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcIntegerCountRateMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcIntegerCountRateMeasure initialize(int64_t v); @@ -12301,9 +12301,9 @@ public: /// IfcIonConcentrationMeasure is a measure of particular ion concentration in a liquid, given in mg/L. /// /// HISTORY: New type in IFC2x2. -class IFC_SCHEMA_API IfcIonConcentrationMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcIonConcentrationMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcIonConcentrationMeasure initialize(double v); @@ -12314,9 +12314,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2x. -class IFC_SCHEMA_API IfcIsothermalMoistureCapacityMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcIsothermalMoistureCapacityMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcIsothermalMoistureCapacityMeasure initialize(double v); @@ -12327,9 +12327,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2.0. -class IFC_SCHEMA_API IfcKinematicViscosityMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcKinematicViscosityMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcKinematicViscosityMeasure initialize(double v); @@ -12349,9 +12349,9 @@ public: /// Per ISO 10303-11, the set of characters that may appear in STRINGs is defined in ISO 10646. The encoding of characters in case of file-based exchange is defined in ISO 10303-21 (STEP physical files) and ISO 10303-28 (XML files). Among else, these specifications define the encoding of 8-bit characters from ISO 8859-1...-16 and of 2-byte Unicode characters. /// /// Note that while IfcLabel is restricted to 255 characters, the size in exchange files after encoding may be considerably larger than 255 octets, depending on the particular encoding and on the contents of the label. -class IFC_SCHEMA_API IfcLabel : public express::DeclaredType { +class IFC_SCHEMA_API IfcLabel : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcLabel initialize(std::string v); @@ -12382,18 +12382,18 @@ public: /// NOTE Corresponding ISO 10303 name: length_measure, please refer to ISO/IS 10303-41 for the final definition of the formal standard. /// /// HISTORY New type in IFC Release 1.5.1. -class IFC_SCHEMA_API IfcLengthMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcLengthMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcLengthMeasure initialize(double v); operator double() const; }; -class IFC_SCHEMA_API IfcLineIndex : public express::DeclaredType { +class IFC_SCHEMA_API IfcLineIndex : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcLineIndex initialize(std::vector< int64_t > /*[2:?]*/ v); @@ -12404,9 +12404,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2x. -class IFC_SCHEMA_API IfcLinearForceMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcLinearForceMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcLinearForceMeasure initialize(double v); @@ -12417,9 +12417,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2x. -class IFC_SCHEMA_API IfcLinearMomentMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcLinearMomentMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcLinearMomentMeasure initialize(double v); @@ -12430,9 +12430,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2x. -class IFC_SCHEMA_API IfcLinearStiffnessMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcLinearStiffnessMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcLinearStiffnessMeasure initialize(double v); @@ -12443,9 +12443,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2.0. -class IFC_SCHEMA_API IfcLinearVelocityMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcLinearVelocityMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcLinearVelocityMeasure initialize(double v); @@ -12456,9 +12456,9 @@ public: /// Type: LOGICAL /// /// HISTORY New type in IFC Release 2x. -class IFC_SCHEMA_API IfcLogical : public express::DeclaredType { +class IFC_SCHEMA_API IfcLogical : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcLogical initialize(boost::logic::tribool v); @@ -12469,9 +12469,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2x. -class IFC_SCHEMA_API IfcLuminousFluxMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcLuminousFluxMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcLuminousFluxMeasure initialize(double v); @@ -12484,9 +12484,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC2x2. -class IFC_SCHEMA_API IfcLuminousIntensityDistributionMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcLuminousIntensityDistributionMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcLuminousIntensityDistributionMeasure initialize(double v); @@ -12499,9 +12499,9 @@ public: /// NOTE Corresponding ISO 10303 name: luminous_intensity_measure, please refer to ISO/IS 10303-41 for the final definition of the formal standard. /// /// HISTORY New type in IFC Release 1.5.1. -class IFC_SCHEMA_API IfcLuminousIntensityMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcLuminousIntensityMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcLuminousIntensityMeasure initialize(double v); @@ -12512,9 +12512,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2x. -class IFC_SCHEMA_API IfcMagneticFluxDensityMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcMagneticFluxDensityMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcMagneticFluxDensityMeasure initialize(double v); @@ -12525,9 +12525,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2x. -class IFC_SCHEMA_API IfcMagneticFluxMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcMagneticFluxMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcMagneticFluxMeasure initialize(double v); @@ -12538,9 +12538,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2.0. -class IFC_SCHEMA_API IfcMassDensityMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcMassDensityMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcMassDensityMeasure initialize(double v); @@ -12551,9 +12551,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2.0. -class IFC_SCHEMA_API IfcMassFlowRateMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcMassFlowRateMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcMassFlowRateMeasure initialize(double v); @@ -12566,9 +12566,9 @@ public: /// NOTE Corresponding ISO 10303 name: mass_measure, please refer to ISO/IS 10303-41 for the final definition of the formal standard. /// /// HISTORY New type in IFC Release 1.5.1. -class IFC_SCHEMA_API IfcMassMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcMassMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcMassMeasure initialize(double v); @@ -12581,9 +12581,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC2x2. -class IFC_SCHEMA_API IfcMassPerLengthMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcMassPerLengthMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcMassPerLengthMeasure initialize(double v); @@ -12594,9 +12594,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2x. -class IFC_SCHEMA_API IfcModulusOfElasticityMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcModulusOfElasticityMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcModulusOfElasticityMeasure initialize(double v); @@ -12607,9 +12607,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2x2. -class IFC_SCHEMA_API IfcModulusOfLinearSubgradeReactionMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcModulusOfLinearSubgradeReactionMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcModulusOfLinearSubgradeReactionMeasure initialize(double v); @@ -12620,9 +12620,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC2x2. -class IFC_SCHEMA_API IfcModulusOfRotationalSubgradeReactionMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcModulusOfRotationalSubgradeReactionMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcModulusOfRotationalSubgradeReactionMeasure initialize(double v); @@ -12637,9 +12637,9 @@ public: /// Figure 290 illustrates elastic support of a planar member. /// /// Figure 290 — Modulus of subgrade reaction measure -class IFC_SCHEMA_API IfcModulusOfSubgradeReactionMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcModulusOfSubgradeReactionMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcModulusOfSubgradeReactionMeasure initialize(double v); @@ -12650,9 +12650,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2x. -class IFC_SCHEMA_API IfcMoistureDiffusivityMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcMoistureDiffusivityMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcMoistureDiffusivityMeasure initialize(double v); @@ -12663,9 +12663,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2x. -class IFC_SCHEMA_API IfcMolecularWeightMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcMolecularWeightMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcMolecularWeightMeasure initialize(double v); @@ -12676,9 +12676,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2x. -class IFC_SCHEMA_API IfcMomentOfInertiaMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcMomentOfInertiaMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcMomentOfInertiaMeasure initialize(double v); @@ -12688,9 +12688,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2.0. -class IFC_SCHEMA_API IfcMonetaryMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcMonetaryMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcMonetaryMeasure initialize(double v); @@ -12752,9 +12752,9 @@ public: /// standard. /// HISTORY New type in IFC /// Release 1.5.1. -class IFC_SCHEMA_API IfcMonthInYearNumber : public express::DeclaredType { +class IFC_SCHEMA_API IfcMonthInYearNumber : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcMonthInYearNumber initialize(int64_t v); @@ -12779,9 +12779,9 @@ public: /// NOTE Corresponding ISO 10303 name: numeric_measure, please refer to ISO/IS 10303-41 for the final definition of the formal standard. /// /// HISTORY New type in IFC Release 1.5.1. -class IFC_SCHEMA_API IfcNumericMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcNumericMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcNumericMeasure initialize(double v); @@ -12790,9 +12790,9 @@ public: /// IfcPHMeasure is a measure of the molar hydrogen ion concentration in a liquid (usually defined as the measure of acidity) in a range from 0 to 14. /// /// HISTORY: New type in IFC 2x2. -class IFC_SCHEMA_API IfcPHMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcPHMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcPHMeasure initialize(double v); @@ -12805,9 +12805,9 @@ public: /// NOTE Corresponding STEP name: parameter_value, please refer to ISO/IS 10303-41 for the final definition of the formal standard. /// /// HISTORY New type in IFC Release 1.5.1. -class IFC_SCHEMA_API IfcParameterValue : public express::DeclaredType { +class IFC_SCHEMA_API IfcParameterValue : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcParameterValue initialize(double v); @@ -12818,9 +12818,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2x. -class IFC_SCHEMA_API IfcPlanarForceMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcPlanarForceMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcPlanarForceMeasure initialize(double v); @@ -12837,9 +12837,9 @@ public: /// NOTE Corresponding ISO 10303 name: plane_angle_measure, please refer to ISO/IS 10303-41 for the final definition of the formal standard. /// /// HISTORY New type in IFC Release 1.5.1. -class IFC_SCHEMA_API IfcPlaneAngleMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcPlaneAngleMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcPlaneAngleMeasure initialize(double v); @@ -12887,9 +12887,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2.0. -class IFC_SCHEMA_API IfcPowerMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcPowerMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcPowerMeasure initialize(double v); @@ -12904,9 +12904,9 @@ public: /// NOTE  Corresponding ISO 10303 name: presentable_text. Please refer to ISO/IS 10303-46:1994, p. 133 for the final definition of the formal standard. /// /// HISTORY  New type in IFC2x2. -class IFC_SCHEMA_API IfcPresentableText : public express::DeclaredType { +class IFC_SCHEMA_API IfcPresentableText : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcPresentableText initialize(std::string v); @@ -12917,18 +12917,18 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2.0. -class IFC_SCHEMA_API IfcPressureMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcPressureMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcPressureMeasure initialize(double v); operator double() const; }; -class IFC_SCHEMA_API IfcPropertySetDefinitionSet : public express::DeclaredType { +class IFC_SCHEMA_API IfcPropertySetDefinitionSet : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcPropertySetDefinitionSet initialize(std::vector< ::Ifc4x3_add1::IfcPropertySetDefinition > v); @@ -12939,9 +12939,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2x. -class IFC_SCHEMA_API IfcRadioActivityMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcRadioActivityMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcRadioActivityMeasure initialize(double v); @@ -12957,9 +12957,9 @@ public: /// NOTE Corresponding STEP name: ratio_measure, please refer to ISO/IS 10303-41 for the final definition of the formal standard. /// /// HISTORY New type in IFC Release 1.5.1. -class IFC_SCHEMA_API IfcRatioMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcRatioMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcRatioMeasure initialize(double v); @@ -12972,9 +12972,9 @@ public: /// Type: REAL /// /// HISTORY: New type in IFC Release 1.5.1. -class IFC_SCHEMA_API IfcReal : public express::DeclaredType { +class IFC_SCHEMA_API IfcReal : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcReal initialize(double v); @@ -12985,9 +12985,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2x. -class IFC_SCHEMA_API IfcRotationalFrequencyMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcRotationalFrequencyMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcRotationalFrequencyMeasure initialize(double v); @@ -12999,9 +12999,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC2x2. -class IFC_SCHEMA_API IfcRotationalMassMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcRotationalMassMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcRotationalMassMeasure initialize(double v); @@ -13012,9 +13012,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2x. -class IFC_SCHEMA_API IfcRotationalStiffnessMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcRotationalStiffnessMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcRotationalStiffnessMeasure initialize(double v); @@ -13025,9 +13025,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2x2. -class IFC_SCHEMA_API IfcSectionModulusMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcSectionModulusMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcSectionModulusMeasure initialize(double v); @@ -13038,9 +13038,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC2x2. -class IFC_SCHEMA_API IfcSectionalAreaIntegralMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcSectionalAreaIntegralMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcSectionalAreaIntegralMeasure initialize(double v); @@ -13051,9 +13051,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2x. -class IFC_SCHEMA_API IfcShearModulusMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcShearModulusMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcShearModulusMeasure initialize(double v); @@ -13066,18 +13066,18 @@ public: /// NOTE Corresponding ISO 10303 name: solid_angle_measure, please refer to ISO/IS 10303-41 for the final definition of the formal standard. /// /// HISTORY New type in IFC Release 1.5.1. -class IFC_SCHEMA_API IfcSolidAngleMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcSolidAngleMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcSolidAngleMeasure initialize(double v); operator double() const; }; -class IFC_SCHEMA_API IfcSoundPowerLevelMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcSoundPowerLevelMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcSoundPowerLevelMeasure initialize(double v); @@ -13088,18 +13088,18 @@ public: /// Type: REAL /// /// HISTORY New type in IFC2x2. -class IFC_SCHEMA_API IfcSoundPowerMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcSoundPowerMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcSoundPowerMeasure initialize(double v); operator double() const; }; -class IFC_SCHEMA_API IfcSoundPressureLevelMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcSoundPressureLevelMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcSoundPressureLevelMeasure initialize(double v); @@ -13110,9 +13110,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC2x2. -class IFC_SCHEMA_API IfcSoundPressureMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcSoundPressureMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcSoundPressureMeasure initialize(double v); @@ -13123,9 +13123,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2x. -class IFC_SCHEMA_API IfcSpecificHeatCapacityMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcSpecificHeatCapacityMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcSpecificHeatCapacityMeasure initialize(double v); @@ -13138,9 +13138,9 @@ public: /// NOTE: The datatype relates to the definition of specular_exponent in ISO 10303-46 entity surface_style_reflectance_ambient_diffuse_specular. /// /// HISTORY: New type in IFC2x2. -class IFC_SCHEMA_API IfcSpecularExponent : public express::DeclaredType { +class IFC_SCHEMA_API IfcSpecularExponent : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcSpecularExponent initialize(double v); @@ -13155,18 +13155,18 @@ public: /// NOTE: The datatype relates to the definition of "shiness" in VRML97, which is the reciprocate value to the specular roughness. /// /// HISTORY: New type in Release IFC2x2. -class IFC_SCHEMA_API IfcSpecularRoughness : public express::DeclaredType { +class IFC_SCHEMA_API IfcSpecularRoughness : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcSpecularRoughness initialize(double v); operator double() const; }; -class IFC_SCHEMA_API IfcStrippedOptional : public express::DeclaredType { +class IFC_SCHEMA_API IfcStrippedOptional : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcStrippedOptional initialize(bool v); @@ -13177,9 +13177,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC2x2. -class IFC_SCHEMA_API IfcTemperatureGradientMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcTemperatureGradientMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcTemperatureGradientMeasure initialize(double v); @@ -13190,9 +13190,9 @@ public: /// Type: REAL /// /// HISTORY  New type in IFC2x4. -class IFC_SCHEMA_API IfcTemperatureRateOfChangeMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcTemperatureRateOfChangeMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcTemperatureRateOfChangeMeasure initialize(double v); @@ -13209,9 +13209,9 @@ public: /// Per ISO 10303-11, the set of characters that may appear in STRINGs is defined in ISO 10646. The encoding of characters in case of file-based exchange is defined in ISO 10303-21 (STEP physical files) and ISO 10303-28 (XML files). Among else, these specifications define the encoding of 8-bit characters from ISO 8859-1...-16 and of 2-byte Unicode characters. /// /// Note that while IfcText is not formally restricted in length, the size of a string in ISO 10303-21:2002 conforming exchange files must not exceed 32767 octets after encoding and escaping. -class IFC_SCHEMA_API IfcText : public express::DeclaredType { +class IFC_SCHEMA_API IfcText : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcText initialize(std::string v); @@ -13227,9 +13227,9 @@ public: /// NOTE  Corresponding CSS1 definition is text-align. /// /// HISTORY  New type in IFC2x3. -class IFC_SCHEMA_API IfcTextAlignment : public express::DeclaredType { +class IFC_SCHEMA_API IfcTextAlignment : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcTextAlignment initialize(std::string v); @@ -13248,9 +13248,9 @@ public: /// NOTE  Corresponding CSS1 definition is text-decoration. /// /// HISTORY  New type in IFC2x3. -class IFC_SCHEMA_API IfcTextDecoration : public express::DeclaredType { +class IFC_SCHEMA_API IfcTextDecoration : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcTextDecoration initialize(std::string v); @@ -13275,9 +13275,9 @@ public: /// HISTORY  New type in IFC2x2 Addendum 2. /// /// IFC2x2 Addendum 2 CHANGE: The IfcFontFamily has been added. -class IFC_SCHEMA_API IfcTextFontName : public express::DeclaredType { +class IFC_SCHEMA_API IfcTextFontName : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcTextFontName initialize(std::string v); @@ -13293,9 +13293,9 @@ public: /// NOTE  Corresponding CSS1 definition is text-transform. /// /// HISTORY  New type in IFC2x3. -class IFC_SCHEMA_API IfcTextTransformation : public express::DeclaredType { +class IFC_SCHEMA_API IfcTextTransformation : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcTextTransformation initialize(std::string v); @@ -13306,9 +13306,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2.0. -class IFC_SCHEMA_API IfcThermalAdmittanceMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcThermalAdmittanceMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcThermalAdmittanceMeasure initialize(double v); @@ -13319,9 +13319,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2x. -class IFC_SCHEMA_API IfcThermalConductivityMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcThermalConductivityMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcThermalConductivityMeasure initialize(double v); @@ -13331,9 +13331,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC2x2. -class IFC_SCHEMA_API IfcThermalExpansionCoefficientMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcThermalExpansionCoefficientMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcThermalExpansionCoefficientMeasure initialize(double v); @@ -13343,9 +13343,9 @@ public: /// Usually measured in m2 Kelvin/Watt. /// /// HISTORY New type in IFC Release 2.0. -class IFC_SCHEMA_API IfcThermalResistanceMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcThermalResistanceMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcThermalResistanceMeasure initialize(double v); @@ -13356,9 +13356,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2.0. -class IFC_SCHEMA_API IfcThermalTransmittanceMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcThermalTransmittanceMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcThermalTransmittanceMeasure initialize(double v); @@ -13371,9 +13371,9 @@ public: /// NOTE Corresponding ISO 10303 name: thermodynamic_temperature_measure, please refer to ISO/IS 10303-41 for the final definition of the formal standard. /// /// HISTORY New type in IFC Release 1.5.1. -class IFC_SCHEMA_API IfcThermodynamicTemperatureMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcThermodynamicTemperatureMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcThermodynamicTemperatureMeasure initialize(double v); @@ -13387,9 +13387,9 @@ public: /// 13:20:00-05:00. /// /// HISTORY: New type in IFC2x4 -class IFC_SCHEMA_API IfcTime : public express::DeclaredType { +class IFC_SCHEMA_API IfcTime : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcTime initialize(std::string v); @@ -13402,9 +13402,9 @@ public: /// NOTE Corresponding ISO 10303 name: time_measure, please refer to ISO/IS 10303-41 for the final definition of the formal standard. /// /// HISTORY New type in IFC Release 1.5.1. -class IFC_SCHEMA_API IfcTimeMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcTimeMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcTimeMeasure initialize(double v); @@ -13414,9 +13414,9 @@ public: /// Type: INTEGER /// /// HISTORY New type in IFC Release 1.5.1. -class IFC_SCHEMA_API IfcTimeStamp : public express::DeclaredType { +class IFC_SCHEMA_API IfcTimeStamp : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcTimeStamp initialize(int64_t v); @@ -13427,9 +13427,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2x. -class IFC_SCHEMA_API IfcTorqueMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcTorqueMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcTorqueMeasure initialize(double v); @@ -13442,9 +13442,9 @@ public: /// designed to make it easy to map other namespaces (that share the properties of URNs) into URN-space. /// /// HISTORY New defined datatype in IFC 2x4. -class IFC_SCHEMA_API IfcURIReference : public express::DeclaredType { +class IFC_SCHEMA_API IfcURIReference : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcURIReference initialize(std::string v); @@ -13455,9 +13455,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2x. -class IFC_SCHEMA_API IfcVaporPermeabilityMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcVaporPermeabilityMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcVaporPermeabilityMeasure initialize(double v); @@ -13470,9 +13470,9 @@ public: /// NOTE Corresponding ISO 10303 name: volume_measure, please refer to ISO/IS 10303-41 for the final definition of the formal standard. /// /// HISTORY New type in IFC Release 1.5.1. -class IFC_SCHEMA_API IfcVolumeMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcVolumeMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcVolumeMeasure initialize(double v); @@ -13483,9 +13483,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2.0. -class IFC_SCHEMA_API IfcVolumetricFlowRateMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcVolumetricFlowRateMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcVolumetricFlowRateMeasure initialize(double v); @@ -13496,9 +13496,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC2x2. -class IFC_SCHEMA_API IfcWarpingConstantMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcWarpingConstantMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcWarpingConstantMeasure initialize(double v); @@ -13509,18 +13509,18 @@ public: /// Type: REAL /// /// HISTORY New type in IFC2x2. -class IFC_SCHEMA_API IfcWarpingMomentMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcWarpingMomentMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcWarpingMomentMeasure initialize(double v); operator double() const; }; -class IFC_SCHEMA_API IfcWellKnownTextLiteral : public express::DeclaredType { +class IFC_SCHEMA_API IfcWellKnownTextLiteral : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcWellKnownTextLiteral initialize(std::string v); @@ -13598,9 +13598,9 @@ public: /// Corresponds to the following entity in ISO-10303-41: organization_role and person_role. /// /// HISTORY New entity in IFC Release 1.5.1 -class IFC_SCHEMA_API IfcActorRole : public express::Entity { +class IFC_SCHEMA_API IfcActorRole : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// The name of the role played by an actor. If the Role has value USERDEFINED, then /// the user defined role shall be provided as a value of the attribute UserDefinedRole. @@ -13625,9 +13625,9 @@ public: /// NOTE Corresponds to the following entity in ISO-10303-41: address. /// /// HISTORY New entity in IFC Release 1.5.1. -class IFC_SCHEMA_API IfcAddress : public express::Entity { +class IFC_SCHEMA_API IfcAddress : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// Identifies the logical location of the address. std::optional< ::Ifc4x3_add1::IfcAddressTypeEnum::Value > Purpose() const; @@ -13648,9 +13648,9 @@ public: IfcAddress initialize(std::optional< ::Ifc4x3_add1::IfcAddressTypeEnum::Value > v1_Purpose, std::optional< std::string > v2_Description, std::optional< std::string > v3_UserDefinedPurpose); }; -class IFC_SCHEMA_API IfcAlignmentParameterSegment : public express::Entity { +class IFC_SCHEMA_API IfcAlignmentParameterSegment : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; std::optional< std::string > StartTag() const; void setStartTag(const std::optional< std::string >& v); @@ -13686,9 +13686,9 @@ public: /// IfcApplication holds the information about an IFC compliant application developed by an application developer. The IfcApplication utilizes a short identifying name as provided by the application developer. /// /// HISTORY  New entity in IFC R1.5. -class IFC_SCHEMA_API IfcApplication : public express::Entity { +class IFC_SCHEMA_API IfcApplication : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// Name of the application developer, being requested to be member of the IAI. ::Ifc4x3_add1::IfcOrganization ApplicationDeveloper() const; @@ -13720,9 +13720,9 @@ public: /// An instance of IfcAppliedValue may have a unit basis asserted. This is defined as an IfcMeasureWithUnit that determines the extent of the unit value for application purposes. It is assumed that when this attribute is asserted, then the value given to IfcAppliedValue is that for unit quantity. This is not enforced within the IFC schema and thus needs to be controlled within an application. /// /// Applied values may be referenced from a document (such as a price list). The relationship between one or more occurrences of IfcAppliedValue (or its subtypes) is achieved through the use of the IfcExternalReferenceRelationship in which the document provides the IfcExternalReferenceRelationship.RelatingExtReference and the value occurrences are the IfcExternalReferenceRelationship.RelatedResourceObjects. -class IFC_SCHEMA_API IfcAppliedValue : public express::Entity { +class IFC_SCHEMA_API IfcAppliedValue : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// A name or additional clarification given to a cost value. std::optional< std::string > Name() const; @@ -13768,9 +13768,9 @@ public: /// HISTORY New Entity in IFC Release 2.0 /// /// IFC2x Edition 4 CHANGE  Attributes Identifier and Name made optional, where rule added to require at least one of them being asserted. Inverse attributes ApprovedObjects, ApprovedResources and HasExternalReferences added. Inverse attribute Properties deleted (more general relationship via inverse ApprovedResources to be used instead). -class IFC_SCHEMA_API IfcApproval : public express::Entity { +class IFC_SCHEMA_API IfcApproval : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// A computer interpretable identifier by which the approval is known. std::optional< std::string > Identifier() const; @@ -13829,9 +13829,9 @@ public: /// HISTORY: New entity /// in Release IFC2x Edition /// 2. -class IFC_SCHEMA_API IfcBoundaryCondition : public express::Entity { +class IFC_SCHEMA_API IfcBoundaryCondition : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// Optionally defines a name for this boundary condition. std::optional< std::string > Name() const; @@ -13973,9 +13973,9 @@ public: /// HISTORY  New entity in IFC Release 1.5. /// /// IFC2x Edition 3 CHANGE  The definition of the subtypes has been enhanced by allowing either geometric representation items (point | curve | surface) or topological representation items with associated geometry (vertex point | edge curve | face  surface). -class IFC_SCHEMA_API IfcConnectionGeometry : public express::Entity { +class IFC_SCHEMA_API IfcConnectionGeometry : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; static const ifcopenshell::entity& Class(); @@ -14065,9 +14065,9 @@ public: /// A constraint must have a name applied through the IfcConstraint.Name attribute and optionally, a description through IfcConstraint.Description. The grade of the constraint (hard, soft, advisory) must be specified through IfcConstraint.ConstraintGrade or IfcConstraint.UserDefinedGrade whilst the source, creating actor and time at which the constraint is created may be optionally asserted through IfcConstraint.ConstraintSource, IfcConstraint.CreatingActor and IfcConstraint.CreationTime. /// /// A constraint may also have additional external information (such as classification or document information) associated to it by IfcExternalReferenceRelationship, accessible through inverse attribute IfcConstraint.HasExternalReferences -class IFC_SCHEMA_API IfcConstraint : public express::Entity { +class IFC_SCHEMA_API IfcConstraint : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// A name to be used for the constraint (e.g., ChillerCoefficientOfPerformance). std::string Name() const; @@ -14145,9 +14145,9 @@ public: /// and any map or other coordinate reference system. /// /// HISTORY  New entity in IFC2x4. -class IFC_SCHEMA_API IfcCoordinateOperation : public express::Entity { +class IFC_SCHEMA_API IfcCoordinateOperation : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// Source coordinate reference system for the operation. ::Ifc4x3_add1::IfcCoordinateReferenceSystemSelect SourceCRS() const; @@ -14181,9 +14181,9 @@ public: /// Specifications. /// /// HISTORY  New entity in IFC2x4. -class IFC_SCHEMA_API IfcCoordinateReferenceSystem : public express::Entity { +class IFC_SCHEMA_API IfcCoordinateReferenceSystem : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// Name by which the coordinate reference system is identified. /// Note  The name shall be taken from the list recognized by the European Petroleum Survey Group EPSG. @@ -14255,9 +14255,9 @@ public: /// NOTE: Corresponding ISO 10303 name: derived_unit, please refer to ISO/IS 10303-41 for the final definition of the formal standard. /// /// HISTORY: New entity in IFC Release 1.5.1. -class IFC_SCHEMA_API IfcDerivedUnit : public express::Entity { +class IFC_SCHEMA_API IfcDerivedUnit : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// The group of units and their exponents that define the derived unit. std::vector< ::Ifc4x3_add1::IfcDerivedUnitElement > Elements() const; @@ -14282,9 +14282,9 @@ public: /// NOTE: Corresponding ISO 10303 name: derived_unit_element, please refer to ISO/IS 10303-41 for the final definition of the formal standard. /// /// HISTORY New entity in IFC Release 1.5.1. -class IFC_SCHEMA_API IfcDerivedUnitElement : public express::Entity { +class IFC_SCHEMA_API IfcDerivedUnitElement : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// The fixed quantity which is used as the mathematical factor. ::Ifc4x3_add1::IfcNamedUnit Unit() const; @@ -14313,9 +14313,9 @@ public: /// for the final definition of the formal standard. /// /// HISTORY New entity in IFC Release 1.5.1. -class IFC_SCHEMA_API IfcDimensionalExponents : public express::Entity { +class IFC_SCHEMA_API IfcDimensionalExponents : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// The power of the length base quantity. int64_t LengthExponent() const; @@ -14348,9 +14348,9 @@ public: /// all external information entities. /// /// HISTORY New entity in IFC2x4. -class IFC_SCHEMA_API IfcExternalInformation : public express::Entity { +class IFC_SCHEMA_API IfcExternalInformation : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; static const ifcopenshell::entity& Class(); @@ -14365,9 +14365,9 @@ public: /// IfcExternalReference is an abstract supertype of all external reference entities. /// /// HISTORY New entity in IFC2x. -class IFC_SCHEMA_API IfcExternalReference : public express::Entity { +class IFC_SCHEMA_API IfcExternalReference : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// Location, where the external source (classification, document or library) can be accessed by electronic means. The electronic location is provided as an URI, and would normally be given as an URL location string. /// @@ -14477,9 +14477,9 @@ public: /// underlying AxisCurve supports this concept. /// /// Figure 242 — Grid axis -class IFC_SCHEMA_API IfcGridAxis : public express::Entity { +class IFC_SCHEMA_API IfcGridAxis : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// The tag or name for this grid axis. std::optional< std::string > AxisTag() const; @@ -14501,9 +14501,9 @@ public: /// The IfcIrregularTimeSeriesValue describes a value (or set of values) at a particular time point. /// /// HISTORY: New entity in IFC 2x2. -class IFC_SCHEMA_API IfcIrregularTimeSeriesValue : public express::Entity { +class IFC_SCHEMA_API IfcIrregularTimeSeriesValue : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// The specification of the time point. std::string TimeStamp() const; @@ -14598,9 +14598,9 @@ public: /// For each pair of MainPlaneAngle and SecondaryPlaneAngle the LuminousIntensity is provided (the unit is given by the IfcUnitAssignment referring to the LuminousIntensityDistributionUnit, normally cd/klm). /// /// HISTORY: New entity in IFC2x2. -class IFC_SCHEMA_API IfcLightDistributionData : public express::Entity { +class IFC_SCHEMA_API IfcLightDistributionData : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// The main plane angle (A, B or C angles, according to the light distribution curve chosen). double MainPlaneAngle() const; @@ -14620,9 +14620,9 @@ public: /// IfcLightIntensityDistribution defines the the luminous intensity of a light source that changes according to the direction of the ray. It is based on some standardized light distribution curves, which are defined by the LightDistributionCurve attribute. /// /// New entity in IFC2x2. -class IFC_SCHEMA_API IfcLightIntensityDistribution : public express::Entity { +class IFC_SCHEMA_API IfcLightIntensityDistribution : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// Standardized light distribution curve used to define the luminous intensity of the light in all directions. ::Ifc4x3_add1::IfcLightDistributionCurveEnum::Value LightDistributionCurve() const; @@ -14698,9 +14698,9 @@ public: /// HISTORY New entity in IFC2x. /// /// IFC2x4 CHANGE The entity IfcMaterialClassificationRelationship is deprecated since IFC2x4 and shall no longer be used. Use IfcExternalReferenceRelationship instead. -class IFC_SCHEMA_API IfcMaterialClassificationRelationship : public express::Entity { +class IFC_SCHEMA_API IfcMaterialClassificationRelationship : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// The material classifications identifying the type of material. std::vector< ::Ifc4x3_add1::IfcClassificationSelect > MaterialClassifications() const; @@ -14736,9 +14736,9 @@ public: /// IfcRelAssociatesMaterial. /// /// HISTORY New entity in IFC2x4 -class IFC_SCHEMA_API IfcMaterialDefinition : public express::Entity { +class IFC_SCHEMA_API IfcMaterialDefinition : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; std::vector< IfcRelAssociatesMaterial > AssociatedTo() const; // INVERSE IfcRelAssociatesMaterial::RelatingMaterial std::vector< IfcExternalReferenceRelationship > HasExternalReferences() const; // INVERSE IfcExternalReferenceRelationship::RelatedResourceObjects @@ -14934,9 +14934,9 @@ public: /// /// IFC2x4 CHANGE The entity IfcMaterialList is deprecated and shall no longer /// be used. Use IfcMaterialConstituentSet instead. -class IFC_SCHEMA_API IfcMaterialList : public express::Entity { +class IFC_SCHEMA_API IfcMaterialList : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// Materials used in a composition of substances. std::vector< ::Ifc4x3_add1::IfcMaterial > Materials() const; @@ -15052,9 +15052,9 @@ public: /// IfcMaterialUsageDefinition to a subtype of /// IfcElementType, it shall only be assigned to an element /// occurrence. -class IFC_SCHEMA_API IfcMaterialUsageDefinition : public express::Entity { +class IFC_SCHEMA_API IfcMaterialUsageDefinition : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; std::vector< IfcRelAssociatesMaterial > AssociatedTo() const; // INVERSE IfcRelAssociatesMaterial::RelatingMaterial @@ -15071,9 +15071,9 @@ public: /// NOTE Corresponding ISO 10303 name: measure_with_unit, please refer to ISO/IS 10303-41 for the final definition of the formal standard. /// /// HISTORY New entity in IFC Release 1.5.1. -class IFC_SCHEMA_API IfcMeasureWithUnit : public express::Entity { +class IFC_SCHEMA_API IfcMeasureWithUnit : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// The value of the physical quantity when expressed in the specified units. ::Ifc4x3_add1::IfcValue ValueComponent() const; @@ -15161,9 +15161,9 @@ public: /// HISTORY: New entity in IFC Release 2x. /// /// IFC2x4 CHANGE: Type of the attribute Currency changed. -class IFC_SCHEMA_API IfcMonetaryUnit : public express::Entity { +class IFC_SCHEMA_API IfcMonetaryUnit : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// Code or name of the currency. Permissible values are the three-letter alphabetic currency codes as per ISO 4217, for example CNY, EUR, GBP, JPY, USD. std::string Currency() const; @@ -15177,9 +15177,9 @@ public: /// NOTE Corresponding ISO 10303 name: named_unit, please refer to ISO/IS 10303-41 for the final definition of the formal standard. /// /// HISTORY New type in IFC Release 1.5.1. -class IFC_SCHEMA_API IfcNamedUnit : public express::Entity { +class IFC_SCHEMA_API IfcNamedUnit : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// The dimensional exponents of the SI base units by which the named unit is defined. ::Ifc4x3_add1::IfcDimensionalExponents Dimensions() const; @@ -15202,9 +15202,9 @@ public: /// In any case the object placement has to unambiguously define the object coordinate system as either two-dimensional axis placement (IfcAxis2Placement2D) or three-dimensional axis placement (IfcAxis2Placement3D). The axis placement may have to be calculated. /// /// HISTORY New entity in IFC Release 2x. -class IFC_SCHEMA_API IfcObjectPlacement : public express::Entity { +class IFC_SCHEMA_API IfcObjectPlacement : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; ::Ifc4x3_add1::IfcObjectPlacement PlacementRelTo() const; void setPlacementRelTo(const ::Ifc4x3_add1::IfcObjectPlacement& v); @@ -15250,9 +15250,9 @@ public: /// /// HISTORY New entity in IFC Release 1.5.1. /// IFC 2x4 change: attribute Id renamed to Identification. -class IFC_SCHEMA_API IfcOrganization : public express::Entity { +class IFC_SCHEMA_API IfcOrganization : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// Identification of the organization. std::optional< std::string > Identification() const; @@ -15287,9 +15287,9 @@ public: /// /// If LastModifiedDate is defined but ChangeAction is not asserted, then the state of ChangeAction is assumed to be UNDEFINED. /// If both LastModifiedDate and ChangeAction are asserted, then the state of ChangeAction applies to the value asserted in LastModifiedDate. -class IFC_SCHEMA_API IfcOwnerHistory : public express::Entity { +class IFC_SCHEMA_API IfcOwnerHistory : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// Direct reference to the end user who currently "owns" this object. Note that IFC includes the concept of ownership transfer from one user to another and therefore distinguishes between the Owning User and Creating User. ::Ifc4x3_add1::IfcPersonAndOrganization OwningUser() const; @@ -15328,9 +15328,9 @@ public: /// /// HISTORY New entity in IFC Release 1.5.1. /// IFC 2x4 change: attribute Id renamed to Identification. WHERE rule relaxed to allow omission of names if Identification is provided. -class IFC_SCHEMA_API IfcPerson : public express::Entity { +class IFC_SCHEMA_API IfcPerson : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// Identification of the person. std::optional< std::string > Identification() const; @@ -15372,9 +15372,9 @@ public: /// NOTE Corresponds to the following entity in ISO-10303-41: person_and_organization. /// /// HISTORY New entity in IFC Release 1.5.1 -class IFC_SCHEMA_API IfcPersonAndOrganization : public express::Entity { +class IFC_SCHEMA_API IfcPersonAndOrganization : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// The person who is related to the organization. ::Ifc4x3_add1::IfcPerson ThePerson() const; @@ -15394,9 +15394,9 @@ public: /// The Name attribute defines the actual usage or kind of measure. The interpretation of the name label has to be established within the actual exchange context. In addition an informative text may be associated to each quantity by the Description attribute. /// /// HISTORY  New entity in IFC2x. It replaces the calcXxx attributes used in previous IFC Releases. -class IFC_SCHEMA_API IfcPhysicalQuantity : public express::Entity { +class IFC_SCHEMA_API IfcPhysicalQuantity : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// Name of the element quantity or measure. The name attribute has to be made recognizable by further agreements. std::string Name() const; @@ -15469,9 +15469,9 @@ public: IfcPostalAddress initialize(std::optional< ::Ifc4x3_add1::IfcAddressTypeEnum::Value > v1_Purpose, std::optional< std::string > v2_Description, std::optional< std::string > v3_UserDefinedPurpose, std::optional< std::string > v4_InternalLocation, std::optional< std::vector< std::string > /*[1:?]*/ > v5_AddressLines, std::optional< std::string > v6_PostalBox, std::optional< std::string > v7_Town, std::optional< std::string > v8_Region, std::optional< std::string > v9_PostalCode, std::optional< std::string > v10_Country); }; -class IFC_SCHEMA_API IfcPresentationItem : public express::Entity { +class IFC_SCHEMA_API IfcPresentationItem : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; static const ifcopenshell::entity& Class(); @@ -15492,9 +15492,9 @@ public: /// Figure 305 illustrates assignment of items by shape representation or representation item. The set of AssignedItems can either include a whole shape representation, or individual geometric representation items. If both, the IfcShapeRepresentation has a layer assignment, and an individual geometric representation item in the set of IfcShapeRepresentation.Items, then the layer assignment of the IfcGeometricRepresentationItem overides the layer assignment of the IfcShapeRepresentation. /// /// Figure 305 — Presentation layer assignment -class IFC_SCHEMA_API IfcPresentationLayerAssignment : public express::Entity { +class IFC_SCHEMA_API IfcPresentationLayerAssignment : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// Name of the layer. std::string Name() const; @@ -15554,9 +15554,9 @@ public: /// Each subtype of  IfcPresentationStyle can be assigned to IfcGeometricRepresentationItem's via the IfcPresentationStyleAssignment through an intermediate IfcStyledItem or one of its subtypes. /// /// HISTORY  New entity in IFC2x3. -class IFC_SCHEMA_API IfcPresentationStyle : public express::Entity { +class IFC_SCHEMA_API IfcPresentationStyle : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// Name of the presentation style. std::optional< std::string > Name() const; @@ -15582,9 +15582,9 @@ public: /// IFC2x3 NOTE Users should not instantiate the entity from IFC2x Edition 3 onwards. /// /// IFC2x4 CHANGE  Entity made abstract. -class IFC_SCHEMA_API IfcProductRepresentation : public express::Entity { +class IFC_SCHEMA_API IfcProductRepresentation : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// The word or group of words by which the product representation is known. std::optional< std::string > Name() const; @@ -15769,9 +15769,9 @@ public: /// possible to directly instantiate IfcProfileDef and further specify /// the profile only by external reference or by profile properties. The latter /// are tracked by the inverse attribute HasProperties. -class IFC_SCHEMA_API IfcProfileDef : public express::Entity { +class IFC_SCHEMA_API IfcProfileDef : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// Defines the type of geometry into which this profile definition shall be resolved, either a curve or a surface area. In case of curve the profile should be referenced by a swept surface, in case of area the profile should be referenced by a swept area solid. ::Ifc4x3_add1::IfcProfileTypeEnum::Value ProfileType() const; @@ -15837,9 +15837,9 @@ public: IfcProjectedCRS initialize(std::optional< std::string > v1_Name, std::optional< std::string > v2_Description, std::optional< std::string > v3_GeodeticDatum, std::optional< std::string > v4_VerticalDatum, std::optional< std::string > v5_MapProjection, std::optional< std::string > v6_MapZone, ::Ifc4x3_add1::IfcNamedUnit v7_MapUnit); }; -class IFC_SCHEMA_API IfcPropertyAbstraction : public express::Entity { +class IFC_SCHEMA_API IfcPropertyAbstraction : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; std::vector< IfcExternalReferenceRelationship > HasExternalReferences() const; // INVERSE IfcExternalReferenceRelationship::RelatedResourceObjects @@ -16054,9 +16054,9 @@ public: /// /// Use definitions /// IfcRecurrencePattern supports various recurrence patterns that are differentiated by a type definition (IfcRecurrencePattern.RecurrenceType), which is required to provide the meaning of the given values. It can be further constrained by applicable times through specified IfcTimePeriod instances, thus enabling time periods such as between 7:00 and 12:00 and between 13:00 and 17:00 for each of the applicable days, weeks or months. -class IFC_SCHEMA_API IfcRecurrencePattern : public express::Entity { +class IFC_SCHEMA_API IfcRecurrencePattern : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// Defines the recurrence type that gives meaning to the used /// attributes and decides about possible attribute @@ -16100,9 +16100,9 @@ public: IfcRecurrencePattern initialize(::Ifc4x3_add1::IfcRecurrenceTypeEnum::Value v1_RecurrenceType, std::optional< std::vector< int64_t > /*[1:?]*/ > v2_DayComponent, std::optional< std::vector< int64_t > /*[1:?]*/ > v3_WeekdayComponent, std::optional< std::vector< int64_t > /*[1:?]*/ > v4_MonthComponent, std::optional< int64_t > v5_Position, std::optional< int64_t > v6_Interval, std::optional< int64_t > v7_Occurrences, std::optional< std::vector< ::Ifc4x3_add1::IfcTimePeriod > > v8_TimePeriods); }; -class IFC_SCHEMA_API IfcReference : public express::Entity { +class IFC_SCHEMA_API IfcReference : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; std::optional< std::string > TypeIdentifier() const; void setTypeIdentifier(const std::optional< std::string >& v); @@ -16164,9 +16164,9 @@ public: /// IFC2x4 CHANGE  Entity /// IfcRepresentation has been changed into an ABSTRACT /// supertype. -class IFC_SCHEMA_API IfcRepresentation : public express::Entity { +class IFC_SCHEMA_API IfcRepresentation : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// Definition of the representation context for which the different subtypes of representation are valid. ::Ifc4x3_add1::IfcRepresentationContext ContextOfItems() const; @@ -16198,9 +16198,9 @@ public: /// /// IFC2x4 CHANGE Entity made abstract, had been deprecated from instantiation since /// IFC2x2. -class IFC_SCHEMA_API IfcRepresentationContext : public express::Entity { +class IFC_SCHEMA_API IfcRepresentationContext : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// The optional identifier of the representation context as used within a project. std::optional< std::string > ContextIdentifier() const; @@ -16245,9 +16245,9 @@ public: /// HISTORY  New entity in IFC Release 2x. /// /// IFC2x3 CHANGE  The inverse attributes StyledByItem and LayerAssignments have been added. Upward compatibility for file based exchange is guaranteed. -class IFC_SCHEMA_API IfcRepresentationItem : public express::Entity { +class IFC_SCHEMA_API IfcRepresentationItem : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; std::vector< IfcPresentationLayerAssignment > LayerAssignment() const; // INVERSE IfcPresentationLayerAssignment::AssignedItems std::vector< IfcStyledItem > StyledByItem() const; // INVERSE IfcStyledItem::Item @@ -16266,9 +16266,9 @@ public: /// NOTE  The definition of a mapping which is used to specify a new representation item comprises a representation map and a mapped item entity. Without both entities, the mapping is not fully defined. Two entities are specified to allow the same source representation to be mapped into multiple new representations. /// /// HISTORY  New entity in IFC Release 2x. -class IFC_SCHEMA_API IfcRepresentationMap : public express::Entity { +class IFC_SCHEMA_API IfcRepresentationMap : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// An axis2 placement that defines the position about which the mapped /// representation is mapped. @@ -16286,9 +16286,9 @@ public: /// IfcResourceLevelRelationship is an abstract base class for relationships between resource-level entities. /// /// HISTORY New Entity in IFC 2x4 -class IFC_SCHEMA_API IfcResourceLevelRelationship : public express::Entity { +class IFC_SCHEMA_API IfcResourceLevelRelationship : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// A name used to identify or qualify the relationship. std::optional< std::string > Name() const; @@ -16324,9 +16324,9 @@ public: /// HISTORY New entity in IFC Release 1.0 /// /// IFC2x4 CHANGE The attribute OwnerHistory has been made OPTIONAL. -class IFC_SCHEMA_API IfcRoot : public express::Entity { +class IFC_SCHEMA_API IfcRoot : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// Assignment of a globally unique identifier within the entire software world. std::string GlobalId() const; @@ -16374,9 +16374,9 @@ public: /// IfcSchedulingTime is the abstract supertype of entities that capture time-related information of processes. /// /// HISTORY: New entity in IFC2x4. -class IFC_SCHEMA_API IfcSchedulingTime : public express::Entity { +class IFC_SCHEMA_API IfcSchedulingTime : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// Optional name for the time definition. std::optional< std::string > Name() const; @@ -16429,9 +16429,9 @@ public: /// IfcRepresentationMap's that are used by an /// IfcTypeProduct through the /// RepresentationMaps attribute. -class IFC_SCHEMA_API IfcShapeAspect : public express::Entity { +class IFC_SCHEMA_API IfcShapeAspect : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// List of shape representations. Each member defines a valid representation of a particular type within a particular representation context as being an aspect (or part) of a product definition. /// IFC2x Edition 3 CHANGE  The data type has been changed from IfcShapeRepresentation to IfcShapeModel with upward compatibility @@ -16630,9 +16630,9 @@ public: /// Definition from IAI: Describe more rarely needed connection properties. /// /// HISTORY: New entity in IFC 2x2. -class IFC_SCHEMA_API IfcStructuralConnectionCondition : public express::Entity { +class IFC_SCHEMA_API IfcStructuralConnectionCondition : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// Optionally defines a name for this connection condition. std::optional< std::string > Name() const; @@ -16644,9 +16644,9 @@ public: /// Definition from IAI: The abstract entity IfcStructuralLoadOrResult is the supertype of all loads (actions or reactions) or of certain requirements resulting from structural analysis, or certain provisions which influence structural analysis. /// /// HISTORY: New entity in IFC 2x2. -class IFC_SCHEMA_API IfcStructuralLoad : public express::Entity { +class IFC_SCHEMA_API IfcStructuralLoad : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// Optionally defines a name for this load. std::optional< std::string > Name() const; @@ -17099,9 +17099,9 @@ public: /// HISTORY  New entity in IFC R1.5. /// /// IFC2x4 CHANGE  Columns attribute added. -class IFC_SCHEMA_API IfcTable : public express::Entity { +class IFC_SCHEMA_API IfcTable : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// A unique name which is intended to describe the usage of the Table. std::optional< std::string > Name() const; @@ -17121,9 +17121,9 @@ public: /// The use of IfcTableColumn supercedes the IsHeading flag associated with IfcTableRow. /// /// HISTORY  New entity in IFC2x4. -class IFC_SCHEMA_API IfcTableColumn : public express::Entity { +class IFC_SCHEMA_API IfcTableColumn : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// Table column identifier. std::optional< std::string > Identifier() const; @@ -17156,9 +17156,9 @@ public: /// Figure 338 — Table row use alternative /// /// HISTORY  New entity in IFC R1.5. -class IFC_SCHEMA_API IfcTableRow : public express::Entity { +class IFC_SCHEMA_API IfcTableRow : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// The data value of the table cell.. std::optional< std::vector< ::Ifc4x3_add1::IfcValue > > RowCells() const; @@ -17532,9 +17532,9 @@ public: IfcTextureCoordinateGenerator initialize(std::vector< ::Ifc4x3_add1::IfcSurfaceTexture > v1_Maps, std::string v2_Mode, std::optional< std::vector< double > /*[1:?]*/ > v3_Parameter); }; -class IFC_SCHEMA_API IfcTextureCoordinateIndices : public express::Entity { +class IFC_SCHEMA_API IfcTextureCoordinateIndices : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; std::vector< int64_t > /*[3:?]*/ TexCoordIndex() const; void setTexCoordIndex(const std::vector< int64_t > /*[3:?]*/& v); @@ -17677,9 +17677,9 @@ public: /// /// Use definitions /// A time period is defined by a start and an end time, which is defined by IfcTime. The given time period should be within reasonable values (for example, the start time must be before the end time). It is furthermore expected that both time definitions use the same time zone and, if given, the same daylight saving offset. -class IFC_SCHEMA_API IfcTimePeriod : public express::Entity { +class IFC_SCHEMA_API IfcTimePeriod : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// Start time of the time period. std::string StartTime() const; @@ -17696,9 +17696,9 @@ public: /// The modeling of buildings and their performance involves data that are generated and recorded over a period of time. Such data cover a large spectrum, from weather data to schedules of all kinds to status measurements to reporting to everything else that has a time related aspect. Their correct placement in time is essential for their proper understanding and use, and the IfcTimeSeries subtypes provide the appropriate data structures to accommodate these types of data. /// /// HISTORY: New entity in IFC 2x2. -class IFC_SCHEMA_API IfcTimeSeries : public express::Entity { +class IFC_SCHEMA_API IfcTimeSeries : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// An unique name for the time series. std::string Name() const; @@ -17738,9 +17738,9 @@ public: /// Figure 241 — Time series value /// /// HISTORY  New entity in IFC2x2. -class IFC_SCHEMA_API IfcTimeSeriesValue : public express::Entity { +class IFC_SCHEMA_API IfcTimeSeriesValue : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// A list of time-series values. At least one value is required. std::vector< ::Ifc4x3_add1::IfcValue > ListValues() const; @@ -17809,9 +17809,9 @@ public: /// NOTE  A project (IfcProject) has a unit assignment which establishes a set of units which will be used globally within the project, if not otherwise defined. Other objects may have local unit assignments if there is a requirement for them to make use of units which do not fall within the project unit assignment. /// /// HISTORY  New entity in IFC Release 1.5.1. -class IFC_SCHEMA_API IfcUnitAssignment : public express::Entity { +class IFC_SCHEMA_API IfcUnitAssignment : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// Units to be included within a unit assignment. std::vector< ::Ifc4x3_add1::IfcUnit > Units() const; @@ -17917,9 +17917,9 @@ public: /// OffsetDistances[1] is a negative length measure /// /// Figure 248 — Virtual grid intersection negative offset -class IFC_SCHEMA_API IfcVirtualGridIntersection : public express::Entity { +class IFC_SCHEMA_API IfcVirtualGridIntersection : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// Two grid axes which intersects at exactly one intersection (see also informal proposition at IfcGrid). If attribute OffsetDistances is omitted, the intersection defines the placement or ref direction of a grid placement directly. If OffsetDistances are given, the intersection is defined by the offset curves to the grid axes. std::vector< ::Ifc4x3_add1::IfcGridAxis > IntersectingAxes() const; @@ -17932,9 +17932,9 @@ public: IfcVirtualGridIntersection initialize(std::vector< ::Ifc4x3_add1::IfcGridAxis > v1_IntersectingAxes, std::vector< double > /*[2:3]*/ v2_OffsetDistances); }; -class IFC_SCHEMA_API IfcWellKnownText : public express::Entity { +class IFC_SCHEMA_API IfcWellKnownText : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; std::string WellKnownText() const; void setWellKnownText(const std::string& v); diff --git a/src/ifcparse/schemas/Ifc4x3_tc1.cpp b/src/ifcparse/schemas/Ifc4x3_tc1.cpp index a93b9d669e..a4340084a6 100644 --- a/src/ifcparse/schemas/Ifc4x3_tc1.cpp +++ b/src/ifcparse/schemas/Ifc4x3_tc1.cpp @@ -44,7 +44,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcActionRequestTypeEnum::Clas /* Ifc4x3_tc1::IfcActionRequestTypeEnum::IfcActionRequestTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcActionRequestTypeEnum::IfcActionRequestTypeEnum(Value v) { @@ -73,7 +73,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcActionSourceTypeEnum::Class /* Ifc4x3_tc1::IfcActionSourceTypeEnum::IfcActionSourceTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcActionSourceTypeEnum::IfcActionSourceTypeEnum(Value v) { @@ -102,7 +102,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcActionTypeEnum::Class() { r /* Ifc4x3_tc1::IfcActionTypeEnum::IfcActionTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcActionTypeEnum::IfcActionTypeEnum(Value v) { @@ -131,7 +131,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcActuatorTypeEnum::Class() { /* Ifc4x3_tc1::IfcActuatorTypeEnum::IfcActuatorTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcActuatorTypeEnum::IfcActuatorTypeEnum(Value v) { @@ -160,7 +160,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcAddressTypeEnum::Class() { /* Ifc4x3_tc1::IfcAddressTypeEnum::IfcAddressTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcAddressTypeEnum::IfcAddressTypeEnum(Value v) { @@ -189,7 +189,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcAirTerminalBoxTypeEnum::Cla /* Ifc4x3_tc1::IfcAirTerminalBoxTypeEnum::IfcAirTerminalBoxTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcAirTerminalBoxTypeEnum::IfcAirTerminalBoxTypeEnum(Value v) { @@ -218,7 +218,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcAirTerminalTypeEnum::Class( /* Ifc4x3_tc1::IfcAirTerminalTypeEnum::IfcAirTerminalTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcAirTerminalTypeEnum::IfcAirTerminalTypeEnum(Value v) { @@ -247,7 +247,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcAirToAirHeatRecoveryTypeEnu /* Ifc4x3_tc1::IfcAirToAirHeatRecoveryTypeEnum::IfcAirToAirHeatRecoveryTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcAirToAirHeatRecoveryTypeEnum::IfcAirToAirHeatRecoveryTypeEnum(Value v) { @@ -276,7 +276,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcAlarmTypeEnum::Class() { re /* Ifc4x3_tc1::IfcAlarmTypeEnum::IfcAlarmTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcAlarmTypeEnum::IfcAlarmTypeEnum(Value v) { @@ -305,7 +305,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcAlignmentCantSegmentTypeEnu /* Ifc4x3_tc1::IfcAlignmentCantSegmentTypeEnum::IfcAlignmentCantSegmentTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcAlignmentCantSegmentTypeEnum::IfcAlignmentCantSegmentTypeEnum(Value v) { @@ -334,7 +334,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcAlignmentHorizontalSegmentT /* Ifc4x3_tc1::IfcAlignmentHorizontalSegmentTypeEnum::IfcAlignmentHorizontalSegmentTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcAlignmentHorizontalSegmentTypeEnum::IfcAlignmentHorizontalSegmentTypeEnum(Value v) { @@ -363,7 +363,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcAlignmentTypeEnum::Class() /* Ifc4x3_tc1::IfcAlignmentTypeEnum::IfcAlignmentTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcAlignmentTypeEnum::IfcAlignmentTypeEnum(Value v) { @@ -392,7 +392,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcAlignmentVerticalSegmentTyp /* Ifc4x3_tc1::IfcAlignmentVerticalSegmentTypeEnum::IfcAlignmentVerticalSegmentTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcAlignmentVerticalSegmentTypeEnum::IfcAlignmentVerticalSegmentTypeEnum(Value v) { @@ -421,7 +421,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcAnalysisModelTypeEnum::Clas /* Ifc4x3_tc1::IfcAnalysisModelTypeEnum::IfcAnalysisModelTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcAnalysisModelTypeEnum::IfcAnalysisModelTypeEnum(Value v) { @@ -450,7 +450,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcAnalysisTheoryTypeEnum::Cla /* Ifc4x3_tc1::IfcAnalysisTheoryTypeEnum::IfcAnalysisTheoryTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcAnalysisTheoryTypeEnum::IfcAnalysisTheoryTypeEnum(Value v) { @@ -479,7 +479,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcAnnotationTypeEnum::Class() /* Ifc4x3_tc1::IfcAnnotationTypeEnum::IfcAnnotationTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcAnnotationTypeEnum::IfcAnnotationTypeEnum(Value v) { @@ -508,7 +508,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcArithmeticOperatorEnum::Cla /* Ifc4x3_tc1::IfcArithmeticOperatorEnum::IfcArithmeticOperatorEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcArithmeticOperatorEnum::IfcArithmeticOperatorEnum(Value v) { @@ -537,7 +537,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcAssemblyPlaceEnum::Class() /* Ifc4x3_tc1::IfcAssemblyPlaceEnum::IfcAssemblyPlaceEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcAssemblyPlaceEnum::IfcAssemblyPlaceEnum(Value v) { @@ -566,7 +566,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcAudioVisualApplianceTypeEnu /* Ifc4x3_tc1::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceTypeEnum(Value v) { @@ -595,7 +595,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcBSplineCurveForm::Class() { /* Ifc4x3_tc1::IfcBSplineCurveForm::IfcBSplineCurveForm(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcBSplineCurveForm::IfcBSplineCurveForm(Value v) { @@ -624,7 +624,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcBSplineSurfaceForm::Class() /* Ifc4x3_tc1::IfcBSplineSurfaceForm::IfcBSplineSurfaceForm(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcBSplineSurfaceForm::IfcBSplineSurfaceForm(Value v) { @@ -653,7 +653,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcBeamTypeEnum::Class() { ret /* Ifc4x3_tc1::IfcBeamTypeEnum::IfcBeamTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcBeamTypeEnum::IfcBeamTypeEnum(Value v) { @@ -682,7 +682,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcBearingTypeEnum::Class() { /* Ifc4x3_tc1::IfcBearingTypeEnum::IfcBearingTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcBearingTypeEnum::IfcBearingTypeEnum(Value v) { @@ -711,7 +711,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcBenchmarkEnum::Class() { re /* Ifc4x3_tc1::IfcBenchmarkEnum::IfcBenchmarkEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcBenchmarkEnum::IfcBenchmarkEnum(Value v) { @@ -740,7 +740,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcBoilerTypeEnum::Class() { r /* Ifc4x3_tc1::IfcBoilerTypeEnum::IfcBoilerTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcBoilerTypeEnum::IfcBoilerTypeEnum(Value v) { @@ -769,7 +769,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcBooleanOperator::Class() { /* Ifc4x3_tc1::IfcBooleanOperator::IfcBooleanOperator(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcBooleanOperator::IfcBooleanOperator(Value v) { @@ -798,7 +798,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcBridgePartTypeEnum::Class() /* Ifc4x3_tc1::IfcBridgePartTypeEnum::IfcBridgePartTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcBridgePartTypeEnum::IfcBridgePartTypeEnum(Value v) { @@ -827,7 +827,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcBridgeTypeEnum::Class() { r /* Ifc4x3_tc1::IfcBridgeTypeEnum::IfcBridgeTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcBridgeTypeEnum::IfcBridgeTypeEnum(Value v) { @@ -856,7 +856,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcBuildingElementPartTypeEnum /* Ifc4x3_tc1::IfcBuildingElementPartTypeEnum::IfcBuildingElementPartTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcBuildingElementPartTypeEnum::IfcBuildingElementPartTypeEnum(Value v) { @@ -885,7 +885,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcBuildingElementProxyTypeEnu /* Ifc4x3_tc1::IfcBuildingElementProxyTypeEnum::IfcBuildingElementProxyTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcBuildingElementProxyTypeEnum::IfcBuildingElementProxyTypeEnum(Value v) { @@ -914,7 +914,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcBuildingSystemTypeEnum::Cla /* Ifc4x3_tc1::IfcBuildingSystemTypeEnum::IfcBuildingSystemTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcBuildingSystemTypeEnum::IfcBuildingSystemTypeEnum(Value v) { @@ -943,7 +943,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcBuiltSystemTypeEnum::Class( /* Ifc4x3_tc1::IfcBuiltSystemTypeEnum::IfcBuiltSystemTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcBuiltSystemTypeEnum::IfcBuiltSystemTypeEnum(Value v) { @@ -972,7 +972,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcBurnerTypeEnum::Class() { r /* Ifc4x3_tc1::IfcBurnerTypeEnum::IfcBurnerTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcBurnerTypeEnum::IfcBurnerTypeEnum(Value v) { @@ -1001,7 +1001,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcCableCarrierFittingTypeEnum /* Ifc4x3_tc1::IfcCableCarrierFittingTypeEnum::IfcCableCarrierFittingTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcCableCarrierFittingTypeEnum::IfcCableCarrierFittingTypeEnum(Value v) { @@ -1030,7 +1030,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcCableCarrierSegmentTypeEnum /* Ifc4x3_tc1::IfcCableCarrierSegmentTypeEnum::IfcCableCarrierSegmentTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcCableCarrierSegmentTypeEnum::IfcCableCarrierSegmentTypeEnum(Value v) { @@ -1059,7 +1059,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcCableFittingTypeEnum::Class /* Ifc4x3_tc1::IfcCableFittingTypeEnum::IfcCableFittingTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcCableFittingTypeEnum::IfcCableFittingTypeEnum(Value v) { @@ -1088,7 +1088,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcCableSegmentTypeEnum::Class /* Ifc4x3_tc1::IfcCableSegmentTypeEnum::IfcCableSegmentTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcCableSegmentTypeEnum::IfcCableSegmentTypeEnum(Value v) { @@ -1117,7 +1117,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcCaissonFoundationTypeEnum:: /* Ifc4x3_tc1::IfcCaissonFoundationTypeEnum::IfcCaissonFoundationTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcCaissonFoundationTypeEnum::IfcCaissonFoundationTypeEnum(Value v) { @@ -1146,7 +1146,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcChangeActionEnum::Class() { /* Ifc4x3_tc1::IfcChangeActionEnum::IfcChangeActionEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcChangeActionEnum::IfcChangeActionEnum(Value v) { @@ -1175,7 +1175,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcChillerTypeEnum::Class() { /* Ifc4x3_tc1::IfcChillerTypeEnum::IfcChillerTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcChillerTypeEnum::IfcChillerTypeEnum(Value v) { @@ -1204,7 +1204,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcChimneyTypeEnum::Class() { /* Ifc4x3_tc1::IfcChimneyTypeEnum::IfcChimneyTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcChimneyTypeEnum::IfcChimneyTypeEnum(Value v) { @@ -1233,7 +1233,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcCoilTypeEnum::Class() { ret /* Ifc4x3_tc1::IfcCoilTypeEnum::IfcCoilTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcCoilTypeEnum::IfcCoilTypeEnum(Value v) { @@ -1262,7 +1262,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcColumnTypeEnum::Class() { r /* Ifc4x3_tc1::IfcColumnTypeEnum::IfcColumnTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcColumnTypeEnum::IfcColumnTypeEnum(Value v) { @@ -1291,7 +1291,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcCommunicationsApplianceType /* Ifc4x3_tc1::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceTypeEnum(Value v) { @@ -1320,7 +1320,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcComplexPropertyTemplateType /* Ifc4x3_tc1::IfcComplexPropertyTemplateTypeEnum::IfcComplexPropertyTemplateTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcComplexPropertyTemplateTypeEnum::IfcComplexPropertyTemplateTypeEnum(Value v) { @@ -1349,7 +1349,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcCompressorTypeEnum::Class() /* Ifc4x3_tc1::IfcCompressorTypeEnum::IfcCompressorTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcCompressorTypeEnum::IfcCompressorTypeEnum(Value v) { @@ -1378,7 +1378,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcCondenserTypeEnum::Class() /* Ifc4x3_tc1::IfcCondenserTypeEnum::IfcCondenserTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcCondenserTypeEnum::IfcCondenserTypeEnum(Value v) { @@ -1407,7 +1407,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcConnectionTypeEnum::Class() /* Ifc4x3_tc1::IfcConnectionTypeEnum::IfcConnectionTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcConnectionTypeEnum::IfcConnectionTypeEnum(Value v) { @@ -1436,7 +1436,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcConstraintEnum::Class() { r /* Ifc4x3_tc1::IfcConstraintEnum::IfcConstraintEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcConstraintEnum::IfcConstraintEnum(Value v) { @@ -1465,7 +1465,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcConstructionEquipmentResour /* Ifc4x3_tc1::IfcConstructionEquipmentResourceTypeEnum::IfcConstructionEquipmentResourceTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcConstructionEquipmentResourceTypeEnum::IfcConstructionEquipmentResourceTypeEnum(Value v) { @@ -1494,7 +1494,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcConstructionMaterialResourc /* Ifc4x3_tc1::IfcConstructionMaterialResourceTypeEnum::IfcConstructionMaterialResourceTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcConstructionMaterialResourceTypeEnum::IfcConstructionMaterialResourceTypeEnum(Value v) { @@ -1523,7 +1523,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcConstructionProductResource /* Ifc4x3_tc1::IfcConstructionProductResourceTypeEnum::IfcConstructionProductResourceTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcConstructionProductResourceTypeEnum::IfcConstructionProductResourceTypeEnum(Value v) { @@ -1552,7 +1552,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcControllerTypeEnum::Class() /* Ifc4x3_tc1::IfcControllerTypeEnum::IfcControllerTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcControllerTypeEnum::IfcControllerTypeEnum(Value v) { @@ -1581,7 +1581,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcConveyorSegmentTypeEnum::Cl /* Ifc4x3_tc1::IfcConveyorSegmentTypeEnum::IfcConveyorSegmentTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcConveyorSegmentTypeEnum::IfcConveyorSegmentTypeEnum(Value v) { @@ -1610,7 +1610,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcCooledBeamTypeEnum::Class() /* Ifc4x3_tc1::IfcCooledBeamTypeEnum::IfcCooledBeamTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcCooledBeamTypeEnum::IfcCooledBeamTypeEnum(Value v) { @@ -1639,7 +1639,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcCoolingTowerTypeEnum::Class /* Ifc4x3_tc1::IfcCoolingTowerTypeEnum::IfcCoolingTowerTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcCoolingTowerTypeEnum::IfcCoolingTowerTypeEnum(Value v) { @@ -1668,7 +1668,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcCostItemTypeEnum::Class() { /* Ifc4x3_tc1::IfcCostItemTypeEnum::IfcCostItemTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcCostItemTypeEnum::IfcCostItemTypeEnum(Value v) { @@ -1697,7 +1697,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcCostScheduleTypeEnum::Class /* Ifc4x3_tc1::IfcCostScheduleTypeEnum::IfcCostScheduleTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcCostScheduleTypeEnum::IfcCostScheduleTypeEnum(Value v) { @@ -1726,7 +1726,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcCourseTypeEnum::Class() { r /* Ifc4x3_tc1::IfcCourseTypeEnum::IfcCourseTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcCourseTypeEnum::IfcCourseTypeEnum(Value v) { @@ -1755,7 +1755,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcCoveringTypeEnum::Class() { /* Ifc4x3_tc1::IfcCoveringTypeEnum::IfcCoveringTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcCoveringTypeEnum::IfcCoveringTypeEnum(Value v) { @@ -1784,7 +1784,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcCrewResourceTypeEnum::Class /* Ifc4x3_tc1::IfcCrewResourceTypeEnum::IfcCrewResourceTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcCrewResourceTypeEnum::IfcCrewResourceTypeEnum(Value v) { @@ -1813,7 +1813,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcCurtainWallTypeEnum::Class( /* Ifc4x3_tc1::IfcCurtainWallTypeEnum::IfcCurtainWallTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcCurtainWallTypeEnum::IfcCurtainWallTypeEnum(Value v) { @@ -1842,7 +1842,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcCurveInterpolationEnum::Cla /* Ifc4x3_tc1::IfcCurveInterpolationEnum::IfcCurveInterpolationEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcCurveInterpolationEnum::IfcCurveInterpolationEnum(Value v) { @@ -1871,7 +1871,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcDamperTypeEnum::Class() { r /* Ifc4x3_tc1::IfcDamperTypeEnum::IfcDamperTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcDamperTypeEnum::IfcDamperTypeEnum(Value v) { @@ -1900,7 +1900,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcDataOriginEnum::Class() { r /* Ifc4x3_tc1::IfcDataOriginEnum::IfcDataOriginEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcDataOriginEnum::IfcDataOriginEnum(Value v) { @@ -1929,7 +1929,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcDerivedUnitEnum::Class() { /* Ifc4x3_tc1::IfcDerivedUnitEnum::IfcDerivedUnitEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcDerivedUnitEnum::IfcDerivedUnitEnum(Value v) { @@ -1958,7 +1958,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcDirectionSenseEnum::Class() /* Ifc4x3_tc1::IfcDirectionSenseEnum::IfcDirectionSenseEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcDirectionSenseEnum::IfcDirectionSenseEnum(Value v) { @@ -1987,7 +1987,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcDiscreteAccessoryTypeEnum:: /* Ifc4x3_tc1::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryTypeEnum(Value v) { @@ -2016,7 +2016,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcDistributionBoardTypeEnum:: /* Ifc4x3_tc1::IfcDistributionBoardTypeEnum::IfcDistributionBoardTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcDistributionBoardTypeEnum::IfcDistributionBoardTypeEnum(Value v) { @@ -2045,7 +2045,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcDistributionChamberElementT /* Ifc4x3_tc1::IfcDistributionChamberElementTypeEnum::IfcDistributionChamberElementTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcDistributionChamberElementTypeEnum::IfcDistributionChamberElementTypeEnum(Value v) { @@ -2074,7 +2074,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcDistributionPortTypeEnum::C /* Ifc4x3_tc1::IfcDistributionPortTypeEnum::IfcDistributionPortTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcDistributionPortTypeEnum::IfcDistributionPortTypeEnum(Value v) { @@ -2103,7 +2103,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcDistributionSystemEnum::Cla /* Ifc4x3_tc1::IfcDistributionSystemEnum::IfcDistributionSystemEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcDistributionSystemEnum::IfcDistributionSystemEnum(Value v) { @@ -2132,7 +2132,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcDocumentConfidentialityEnum /* Ifc4x3_tc1::IfcDocumentConfidentialityEnum::IfcDocumentConfidentialityEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcDocumentConfidentialityEnum::IfcDocumentConfidentialityEnum(Value v) { @@ -2161,7 +2161,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcDocumentStatusEnum::Class() /* Ifc4x3_tc1::IfcDocumentStatusEnum::IfcDocumentStatusEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcDocumentStatusEnum::IfcDocumentStatusEnum(Value v) { @@ -2190,7 +2190,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcDoorPanelOperationEnum::Cla /* Ifc4x3_tc1::IfcDoorPanelOperationEnum::IfcDoorPanelOperationEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcDoorPanelOperationEnum::IfcDoorPanelOperationEnum(Value v) { @@ -2219,7 +2219,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcDoorPanelPositionEnum::Clas /* Ifc4x3_tc1::IfcDoorPanelPositionEnum::IfcDoorPanelPositionEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcDoorPanelPositionEnum::IfcDoorPanelPositionEnum(Value v) { @@ -2248,7 +2248,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcDoorTypeEnum::Class() { ret /* Ifc4x3_tc1::IfcDoorTypeEnum::IfcDoorTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcDoorTypeEnum::IfcDoorTypeEnum(Value v) { @@ -2277,7 +2277,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcDoorTypeOperationEnum::Clas /* Ifc4x3_tc1::IfcDoorTypeOperationEnum::IfcDoorTypeOperationEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcDoorTypeOperationEnum::IfcDoorTypeOperationEnum(Value v) { @@ -2306,7 +2306,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcDuctFittingTypeEnum::Class( /* Ifc4x3_tc1::IfcDuctFittingTypeEnum::IfcDuctFittingTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcDuctFittingTypeEnum::IfcDuctFittingTypeEnum(Value v) { @@ -2335,7 +2335,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcDuctSegmentTypeEnum::Class( /* Ifc4x3_tc1::IfcDuctSegmentTypeEnum::IfcDuctSegmentTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcDuctSegmentTypeEnum::IfcDuctSegmentTypeEnum(Value v) { @@ -2364,7 +2364,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcDuctSilencerTypeEnum::Class /* Ifc4x3_tc1::IfcDuctSilencerTypeEnum::IfcDuctSilencerTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcDuctSilencerTypeEnum::IfcDuctSilencerTypeEnum(Value v) { @@ -2393,7 +2393,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcEarthworksCutTypeEnum::Clas /* Ifc4x3_tc1::IfcEarthworksCutTypeEnum::IfcEarthworksCutTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcEarthworksCutTypeEnum::IfcEarthworksCutTypeEnum(Value v) { @@ -2422,7 +2422,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcEarthworksFillTypeEnum::Cla /* Ifc4x3_tc1::IfcEarthworksFillTypeEnum::IfcEarthworksFillTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcEarthworksFillTypeEnum::IfcEarthworksFillTypeEnum(Value v) { @@ -2451,7 +2451,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcElectricApplianceTypeEnum:: /* Ifc4x3_tc1::IfcElectricApplianceTypeEnum::IfcElectricApplianceTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcElectricApplianceTypeEnum::IfcElectricApplianceTypeEnum(Value v) { @@ -2480,7 +2480,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcElectricDistributionBoardTy /* Ifc4x3_tc1::IfcElectricDistributionBoardTypeEnum::IfcElectricDistributionBoardTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcElectricDistributionBoardTypeEnum::IfcElectricDistributionBoardTypeEnum(Value v) { @@ -2509,7 +2509,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcElectricFlowStorageDeviceTy /* Ifc4x3_tc1::IfcElectricFlowStorageDeviceTypeEnum::IfcElectricFlowStorageDeviceTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcElectricFlowStorageDeviceTypeEnum::IfcElectricFlowStorageDeviceTypeEnum(Value v) { @@ -2538,7 +2538,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcElectricFlowTreatmentDevice /* Ifc4x3_tc1::IfcElectricFlowTreatmentDeviceTypeEnum::IfcElectricFlowTreatmentDeviceTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcElectricFlowTreatmentDeviceTypeEnum::IfcElectricFlowTreatmentDeviceTypeEnum(Value v) { @@ -2567,7 +2567,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcElectricGeneratorTypeEnum:: /* Ifc4x3_tc1::IfcElectricGeneratorTypeEnum::IfcElectricGeneratorTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcElectricGeneratorTypeEnum::IfcElectricGeneratorTypeEnum(Value v) { @@ -2596,7 +2596,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcElectricMotorTypeEnum::Clas /* Ifc4x3_tc1::IfcElectricMotorTypeEnum::IfcElectricMotorTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcElectricMotorTypeEnum::IfcElectricMotorTypeEnum(Value v) { @@ -2625,7 +2625,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcElectricTimeControlTypeEnum /* Ifc4x3_tc1::IfcElectricTimeControlTypeEnum::IfcElectricTimeControlTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcElectricTimeControlTypeEnum::IfcElectricTimeControlTypeEnum(Value v) { @@ -2654,7 +2654,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcElementAssemblyTypeEnum::Cl /* Ifc4x3_tc1::IfcElementAssemblyTypeEnum::IfcElementAssemblyTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcElementAssemblyTypeEnum::IfcElementAssemblyTypeEnum(Value v) { @@ -2683,7 +2683,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcElementCompositionEnum::Cla /* Ifc4x3_tc1::IfcElementCompositionEnum::IfcElementCompositionEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcElementCompositionEnum::IfcElementCompositionEnum(Value v) { @@ -2712,7 +2712,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcEngineTypeEnum::Class() { r /* Ifc4x3_tc1::IfcEngineTypeEnum::IfcEngineTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcEngineTypeEnum::IfcEngineTypeEnum(Value v) { @@ -2741,7 +2741,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcEvaporativeCoolerTypeEnum:: /* Ifc4x3_tc1::IfcEvaporativeCoolerTypeEnum::IfcEvaporativeCoolerTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcEvaporativeCoolerTypeEnum::IfcEvaporativeCoolerTypeEnum(Value v) { @@ -2770,7 +2770,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcEvaporatorTypeEnum::Class() /* Ifc4x3_tc1::IfcEvaporatorTypeEnum::IfcEvaporatorTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcEvaporatorTypeEnum::IfcEvaporatorTypeEnum(Value v) { @@ -2799,7 +2799,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcEventTriggerTypeEnum::Class /* Ifc4x3_tc1::IfcEventTriggerTypeEnum::IfcEventTriggerTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcEventTriggerTypeEnum::IfcEventTriggerTypeEnum(Value v) { @@ -2828,7 +2828,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcEventTypeEnum::Class() { re /* Ifc4x3_tc1::IfcEventTypeEnum::IfcEventTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcEventTypeEnum::IfcEventTypeEnum(Value v) { @@ -2857,7 +2857,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcExternalSpatialElementTypeE /* Ifc4x3_tc1::IfcExternalSpatialElementTypeEnum::IfcExternalSpatialElementTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcExternalSpatialElementTypeEnum::IfcExternalSpatialElementTypeEnum(Value v) { @@ -2886,7 +2886,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcFacilityPartCommonTypeEnum: /* Ifc4x3_tc1::IfcFacilityPartCommonTypeEnum::IfcFacilityPartCommonTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcFacilityPartCommonTypeEnum::IfcFacilityPartCommonTypeEnum(Value v) { @@ -2915,7 +2915,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcFacilityUsageEnum::Class() /* Ifc4x3_tc1::IfcFacilityUsageEnum::IfcFacilityUsageEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcFacilityUsageEnum::IfcFacilityUsageEnum(Value v) { @@ -2944,7 +2944,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcFanTypeEnum::Class() { retu /* Ifc4x3_tc1::IfcFanTypeEnum::IfcFanTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcFanTypeEnum::IfcFanTypeEnum(Value v) { @@ -2973,7 +2973,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcFastenerTypeEnum::Class() { /* Ifc4x3_tc1::IfcFastenerTypeEnum::IfcFastenerTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcFastenerTypeEnum::IfcFastenerTypeEnum(Value v) { @@ -3002,7 +3002,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcFilterTypeEnum::Class() { r /* Ifc4x3_tc1::IfcFilterTypeEnum::IfcFilterTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcFilterTypeEnum::IfcFilterTypeEnum(Value v) { @@ -3031,7 +3031,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcFireSuppressionTerminalType /* Ifc4x3_tc1::IfcFireSuppressionTerminalTypeEnum::IfcFireSuppressionTerminalTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcFireSuppressionTerminalTypeEnum::IfcFireSuppressionTerminalTypeEnum(Value v) { @@ -3060,7 +3060,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcFlowDirectionEnum::Class() /* Ifc4x3_tc1::IfcFlowDirectionEnum::IfcFlowDirectionEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcFlowDirectionEnum::IfcFlowDirectionEnum(Value v) { @@ -3089,7 +3089,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcFlowInstrumentTypeEnum::Cla /* Ifc4x3_tc1::IfcFlowInstrumentTypeEnum::IfcFlowInstrumentTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcFlowInstrumentTypeEnum::IfcFlowInstrumentTypeEnum(Value v) { @@ -3118,7 +3118,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcFlowMeterTypeEnum::Class() /* Ifc4x3_tc1::IfcFlowMeterTypeEnum::IfcFlowMeterTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcFlowMeterTypeEnum::IfcFlowMeterTypeEnum(Value v) { @@ -3147,7 +3147,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcFootingTypeEnum::Class() { /* Ifc4x3_tc1::IfcFootingTypeEnum::IfcFootingTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcFootingTypeEnum::IfcFootingTypeEnum(Value v) { @@ -3176,7 +3176,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcFurnitureTypeEnum::Class() /* Ifc4x3_tc1::IfcFurnitureTypeEnum::IfcFurnitureTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcFurnitureTypeEnum::IfcFurnitureTypeEnum(Value v) { @@ -3205,7 +3205,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcGeographicElementTypeEnum:: /* Ifc4x3_tc1::IfcGeographicElementTypeEnum::IfcGeographicElementTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcGeographicElementTypeEnum::IfcGeographicElementTypeEnum(Value v) { @@ -3234,7 +3234,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcGeometricProjectionEnum::Cl /* Ifc4x3_tc1::IfcGeometricProjectionEnum::IfcGeometricProjectionEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcGeometricProjectionEnum::IfcGeometricProjectionEnum(Value v) { @@ -3263,7 +3263,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcGeotechnicalStratumTypeEnum /* Ifc4x3_tc1::IfcGeotechnicalStratumTypeEnum::IfcGeotechnicalStratumTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcGeotechnicalStratumTypeEnum::IfcGeotechnicalStratumTypeEnum(Value v) { @@ -3292,7 +3292,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcGlobalOrLocalEnum::Class() /* Ifc4x3_tc1::IfcGlobalOrLocalEnum::IfcGlobalOrLocalEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcGlobalOrLocalEnum::IfcGlobalOrLocalEnum(Value v) { @@ -3321,7 +3321,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcGridTypeEnum::Class() { ret /* Ifc4x3_tc1::IfcGridTypeEnum::IfcGridTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcGridTypeEnum::IfcGridTypeEnum(Value v) { @@ -3350,7 +3350,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcHeatExchangerTypeEnum::Clas /* Ifc4x3_tc1::IfcHeatExchangerTypeEnum::IfcHeatExchangerTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcHeatExchangerTypeEnum::IfcHeatExchangerTypeEnum(Value v) { @@ -3379,7 +3379,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcHumidifierTypeEnum::Class() /* Ifc4x3_tc1::IfcHumidifierTypeEnum::IfcHumidifierTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcHumidifierTypeEnum::IfcHumidifierTypeEnum(Value v) { @@ -3408,7 +3408,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcImpactProtectionDeviceTypeE /* Ifc4x3_tc1::IfcImpactProtectionDeviceTypeEnum::IfcImpactProtectionDeviceTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcImpactProtectionDeviceTypeEnum::IfcImpactProtectionDeviceTypeEnum(Value v) { @@ -3437,7 +3437,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcInterceptorTypeEnum::Class( /* Ifc4x3_tc1::IfcInterceptorTypeEnum::IfcInterceptorTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcInterceptorTypeEnum::IfcInterceptorTypeEnum(Value v) { @@ -3466,7 +3466,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcInternalOrExternalEnum::Cla /* Ifc4x3_tc1::IfcInternalOrExternalEnum::IfcInternalOrExternalEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcInternalOrExternalEnum::IfcInternalOrExternalEnum(Value v) { @@ -3495,7 +3495,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcInventoryTypeEnum::Class() /* Ifc4x3_tc1::IfcInventoryTypeEnum::IfcInventoryTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcInventoryTypeEnum::IfcInventoryTypeEnum(Value v) { @@ -3524,7 +3524,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcJunctionBoxTypeEnum::Class( /* Ifc4x3_tc1::IfcJunctionBoxTypeEnum::IfcJunctionBoxTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcJunctionBoxTypeEnum::IfcJunctionBoxTypeEnum(Value v) { @@ -3553,7 +3553,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcKerbTypeEnum::Class() { ret /* Ifc4x3_tc1::IfcKerbTypeEnum::IfcKerbTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcKerbTypeEnum::IfcKerbTypeEnum(Value v) { @@ -3582,7 +3582,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcKnotType::Class() { return /* Ifc4x3_tc1::IfcKnotType::IfcKnotType(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcKnotType::IfcKnotType(Value v) { @@ -3611,7 +3611,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcLaborResourceTypeEnum::Clas /* Ifc4x3_tc1::IfcLaborResourceTypeEnum::IfcLaborResourceTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcLaborResourceTypeEnum::IfcLaborResourceTypeEnum(Value v) { @@ -3640,7 +3640,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcLampTypeEnum::Class() { ret /* Ifc4x3_tc1::IfcLampTypeEnum::IfcLampTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcLampTypeEnum::IfcLampTypeEnum(Value v) { @@ -3669,7 +3669,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcLayerSetDirectionEnum::Clas /* Ifc4x3_tc1::IfcLayerSetDirectionEnum::IfcLayerSetDirectionEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcLayerSetDirectionEnum::IfcLayerSetDirectionEnum(Value v) { @@ -3698,7 +3698,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcLightDistributionCurveEnum: /* Ifc4x3_tc1::IfcLightDistributionCurveEnum::IfcLightDistributionCurveEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcLightDistributionCurveEnum::IfcLightDistributionCurveEnum(Value v) { @@ -3727,7 +3727,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcLightEmissionSourceEnum::Cl /* Ifc4x3_tc1::IfcLightEmissionSourceEnum::IfcLightEmissionSourceEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcLightEmissionSourceEnum::IfcLightEmissionSourceEnum(Value v) { @@ -3756,7 +3756,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcLightFixtureTypeEnum::Class /* Ifc4x3_tc1::IfcLightFixtureTypeEnum::IfcLightFixtureTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcLightFixtureTypeEnum::IfcLightFixtureTypeEnum(Value v) { @@ -3785,7 +3785,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcLiquidTerminalTypeEnum::Cla /* Ifc4x3_tc1::IfcLiquidTerminalTypeEnum::IfcLiquidTerminalTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcLiquidTerminalTypeEnum::IfcLiquidTerminalTypeEnum(Value v) { @@ -3814,7 +3814,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcLoadGroupTypeEnum::Class() /* Ifc4x3_tc1::IfcLoadGroupTypeEnum::IfcLoadGroupTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcLoadGroupTypeEnum::IfcLoadGroupTypeEnum(Value v) { @@ -3843,7 +3843,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcLogicalOperatorEnum::Class( /* Ifc4x3_tc1::IfcLogicalOperatorEnum::IfcLogicalOperatorEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcLogicalOperatorEnum::IfcLogicalOperatorEnum(Value v) { @@ -3872,7 +3872,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcMarineFacilityTypeEnum::Cla /* Ifc4x3_tc1::IfcMarineFacilityTypeEnum::IfcMarineFacilityTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcMarineFacilityTypeEnum::IfcMarineFacilityTypeEnum(Value v) { @@ -3901,7 +3901,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcMarinePartTypeEnum::Class() /* Ifc4x3_tc1::IfcMarinePartTypeEnum::IfcMarinePartTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcMarinePartTypeEnum::IfcMarinePartTypeEnum(Value v) { @@ -3930,7 +3930,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcMechanicalFastenerTypeEnum: /* Ifc4x3_tc1::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerTypeEnum(Value v) { @@ -3959,7 +3959,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcMedicalDeviceTypeEnum::Clas /* Ifc4x3_tc1::IfcMedicalDeviceTypeEnum::IfcMedicalDeviceTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcMedicalDeviceTypeEnum::IfcMedicalDeviceTypeEnum(Value v) { @@ -3988,7 +3988,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcMemberTypeEnum::Class() { r /* Ifc4x3_tc1::IfcMemberTypeEnum::IfcMemberTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcMemberTypeEnum::IfcMemberTypeEnum(Value v) { @@ -4017,7 +4017,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcMobileTelecommunicationsApp /* Ifc4x3_tc1::IfcMobileTelecommunicationsApplianceTypeEnum::IfcMobileTelecommunicationsApplianceTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcMobileTelecommunicationsApplianceTypeEnum::IfcMobileTelecommunicationsApplianceTypeEnum(Value v) { @@ -4046,7 +4046,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcMooringDeviceTypeEnum::Clas /* Ifc4x3_tc1::IfcMooringDeviceTypeEnum::IfcMooringDeviceTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcMooringDeviceTypeEnum::IfcMooringDeviceTypeEnum(Value v) { @@ -4075,7 +4075,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcMotorConnectionTypeEnum::Cl /* Ifc4x3_tc1::IfcMotorConnectionTypeEnum::IfcMotorConnectionTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcMotorConnectionTypeEnum::IfcMotorConnectionTypeEnum(Value v) { @@ -4104,7 +4104,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcNavigationElementTypeEnum:: /* Ifc4x3_tc1::IfcNavigationElementTypeEnum::IfcNavigationElementTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcNavigationElementTypeEnum::IfcNavigationElementTypeEnum(Value v) { @@ -4133,7 +4133,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcObjectiveEnum::Class() { re /* Ifc4x3_tc1::IfcObjectiveEnum::IfcObjectiveEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcObjectiveEnum::IfcObjectiveEnum(Value v) { @@ -4162,7 +4162,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcOccupantTypeEnum::Class() { /* Ifc4x3_tc1::IfcOccupantTypeEnum::IfcOccupantTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcOccupantTypeEnum::IfcOccupantTypeEnum(Value v) { @@ -4191,7 +4191,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcOpeningElementTypeEnum::Cla /* Ifc4x3_tc1::IfcOpeningElementTypeEnum::IfcOpeningElementTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcOpeningElementTypeEnum::IfcOpeningElementTypeEnum(Value v) { @@ -4220,7 +4220,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcOutletTypeEnum::Class() { r /* Ifc4x3_tc1::IfcOutletTypeEnum::IfcOutletTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcOutletTypeEnum::IfcOutletTypeEnum(Value v) { @@ -4249,7 +4249,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcPavementTypeEnum::Class() { /* Ifc4x3_tc1::IfcPavementTypeEnum::IfcPavementTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcPavementTypeEnum::IfcPavementTypeEnum(Value v) { @@ -4278,7 +4278,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcPerformanceHistoryTypeEnum: /* Ifc4x3_tc1::IfcPerformanceHistoryTypeEnum::IfcPerformanceHistoryTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcPerformanceHistoryTypeEnum::IfcPerformanceHistoryTypeEnum(Value v) { @@ -4307,7 +4307,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcPermeableCoveringOperationE /* Ifc4x3_tc1::IfcPermeableCoveringOperationEnum::IfcPermeableCoveringOperationEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcPermeableCoveringOperationEnum::IfcPermeableCoveringOperationEnum(Value v) { @@ -4336,7 +4336,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcPermitTypeEnum::Class() { r /* Ifc4x3_tc1::IfcPermitTypeEnum::IfcPermitTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcPermitTypeEnum::IfcPermitTypeEnum(Value v) { @@ -4365,7 +4365,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcPhysicalOrVirtualEnum::Clas /* Ifc4x3_tc1::IfcPhysicalOrVirtualEnum::IfcPhysicalOrVirtualEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcPhysicalOrVirtualEnum::IfcPhysicalOrVirtualEnum(Value v) { @@ -4394,7 +4394,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcPileConstructionEnum::Class /* Ifc4x3_tc1::IfcPileConstructionEnum::IfcPileConstructionEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcPileConstructionEnum::IfcPileConstructionEnum(Value v) { @@ -4423,7 +4423,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcPileTypeEnum::Class() { ret /* Ifc4x3_tc1::IfcPileTypeEnum::IfcPileTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcPileTypeEnum::IfcPileTypeEnum(Value v) { @@ -4452,7 +4452,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcPipeFittingTypeEnum::Class( /* Ifc4x3_tc1::IfcPipeFittingTypeEnum::IfcPipeFittingTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcPipeFittingTypeEnum::IfcPipeFittingTypeEnum(Value v) { @@ -4481,7 +4481,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcPipeSegmentTypeEnum::Class( /* Ifc4x3_tc1::IfcPipeSegmentTypeEnum::IfcPipeSegmentTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcPipeSegmentTypeEnum::IfcPipeSegmentTypeEnum(Value v) { @@ -4510,7 +4510,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcPlateTypeEnum::Class() { re /* Ifc4x3_tc1::IfcPlateTypeEnum::IfcPlateTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcPlateTypeEnum::IfcPlateTypeEnum(Value v) { @@ -4539,7 +4539,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcPreferredSurfaceCurveRepres /* Ifc4x3_tc1::IfcPreferredSurfaceCurveRepresentation::IfcPreferredSurfaceCurveRepresentation(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcPreferredSurfaceCurveRepresentation::IfcPreferredSurfaceCurveRepresentation(Value v) { @@ -4568,7 +4568,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcProcedureTypeEnum::Class() /* Ifc4x3_tc1::IfcProcedureTypeEnum::IfcProcedureTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcProcedureTypeEnum::IfcProcedureTypeEnum(Value v) { @@ -4597,7 +4597,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcProfileTypeEnum::Class() { /* Ifc4x3_tc1::IfcProfileTypeEnum::IfcProfileTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcProfileTypeEnum::IfcProfileTypeEnum(Value v) { @@ -4626,7 +4626,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcProjectOrderTypeEnum::Class /* Ifc4x3_tc1::IfcProjectOrderTypeEnum::IfcProjectOrderTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcProjectOrderTypeEnum::IfcProjectOrderTypeEnum(Value v) { @@ -4655,7 +4655,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcProjectedOrTrueLengthEnum:: /* Ifc4x3_tc1::IfcProjectedOrTrueLengthEnum::IfcProjectedOrTrueLengthEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcProjectedOrTrueLengthEnum::IfcProjectedOrTrueLengthEnum(Value v) { @@ -4684,7 +4684,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcProjectionElementTypeEnum:: /* Ifc4x3_tc1::IfcProjectionElementTypeEnum::IfcProjectionElementTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcProjectionElementTypeEnum::IfcProjectionElementTypeEnum(Value v) { @@ -4713,7 +4713,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcPropertySetTemplateTypeEnum /* Ifc4x3_tc1::IfcPropertySetTemplateTypeEnum::IfcPropertySetTemplateTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcPropertySetTemplateTypeEnum::IfcPropertySetTemplateTypeEnum(Value v) { @@ -4742,7 +4742,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcProtectiveDeviceTrippingUni /* Ifc4x3_tc1::IfcProtectiveDeviceTrippingUnitTypeEnum::IfcProtectiveDeviceTrippingUnitTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcProtectiveDeviceTrippingUnitTypeEnum::IfcProtectiveDeviceTrippingUnitTypeEnum(Value v) { @@ -4771,7 +4771,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcProtectiveDeviceTypeEnum::C /* Ifc4x3_tc1::IfcProtectiveDeviceTypeEnum::IfcProtectiveDeviceTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcProtectiveDeviceTypeEnum::IfcProtectiveDeviceTypeEnum(Value v) { @@ -4800,7 +4800,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcPumpTypeEnum::Class() { ret /* Ifc4x3_tc1::IfcPumpTypeEnum::IfcPumpTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcPumpTypeEnum::IfcPumpTypeEnum(Value v) { @@ -4829,7 +4829,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcRailTypeEnum::Class() { ret /* Ifc4x3_tc1::IfcRailTypeEnum::IfcRailTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcRailTypeEnum::IfcRailTypeEnum(Value v) { @@ -4858,7 +4858,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcRailingTypeEnum::Class() { /* Ifc4x3_tc1::IfcRailingTypeEnum::IfcRailingTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcRailingTypeEnum::IfcRailingTypeEnum(Value v) { @@ -4887,7 +4887,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcRailwayPartTypeEnum::Class( /* Ifc4x3_tc1::IfcRailwayPartTypeEnum::IfcRailwayPartTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcRailwayPartTypeEnum::IfcRailwayPartTypeEnum(Value v) { @@ -4916,7 +4916,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcRailwayTypeEnum::Class() { /* Ifc4x3_tc1::IfcRailwayTypeEnum::IfcRailwayTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcRailwayTypeEnum::IfcRailwayTypeEnum(Value v) { @@ -4945,7 +4945,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcRampFlightTypeEnum::Class() /* Ifc4x3_tc1::IfcRampFlightTypeEnum::IfcRampFlightTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcRampFlightTypeEnum::IfcRampFlightTypeEnum(Value v) { @@ -4974,7 +4974,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcRampTypeEnum::Class() { ret /* Ifc4x3_tc1::IfcRampTypeEnum::IfcRampTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcRampTypeEnum::IfcRampTypeEnum(Value v) { @@ -5003,7 +5003,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcRecurrenceTypeEnum::Class() /* Ifc4x3_tc1::IfcRecurrenceTypeEnum::IfcRecurrenceTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcRecurrenceTypeEnum::IfcRecurrenceTypeEnum(Value v) { @@ -5032,7 +5032,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcReferentTypeEnum::Class() { /* Ifc4x3_tc1::IfcReferentTypeEnum::IfcReferentTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcReferentTypeEnum::IfcReferentTypeEnum(Value v) { @@ -5061,7 +5061,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcReflectanceMethodEnum::Clas /* Ifc4x3_tc1::IfcReflectanceMethodEnum::IfcReflectanceMethodEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcReflectanceMethodEnum::IfcReflectanceMethodEnum(Value v) { @@ -5090,7 +5090,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcReinforcedSoilTypeEnum::Cla /* Ifc4x3_tc1::IfcReinforcedSoilTypeEnum::IfcReinforcedSoilTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcReinforcedSoilTypeEnum::IfcReinforcedSoilTypeEnum(Value v) { @@ -5119,7 +5119,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcReinforcingBarRoleEnum::Cla /* Ifc4x3_tc1::IfcReinforcingBarRoleEnum::IfcReinforcingBarRoleEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcReinforcingBarRoleEnum::IfcReinforcingBarRoleEnum(Value v) { @@ -5148,7 +5148,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcReinforcingBarSurfaceEnum:: /* Ifc4x3_tc1::IfcReinforcingBarSurfaceEnum::IfcReinforcingBarSurfaceEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcReinforcingBarSurfaceEnum::IfcReinforcingBarSurfaceEnum(Value v) { @@ -5177,7 +5177,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcReinforcingBarTypeEnum::Cla /* Ifc4x3_tc1::IfcReinforcingBarTypeEnum::IfcReinforcingBarTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcReinforcingBarTypeEnum::IfcReinforcingBarTypeEnum(Value v) { @@ -5206,7 +5206,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcReinforcingMeshTypeEnum::Cl /* Ifc4x3_tc1::IfcReinforcingMeshTypeEnum::IfcReinforcingMeshTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcReinforcingMeshTypeEnum::IfcReinforcingMeshTypeEnum(Value v) { @@ -5235,7 +5235,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcRoadPartTypeEnum::Class() { /* Ifc4x3_tc1::IfcRoadPartTypeEnum::IfcRoadPartTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcRoadPartTypeEnum::IfcRoadPartTypeEnum(Value v) { @@ -5264,7 +5264,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcRoadTypeEnum::Class() { ret /* Ifc4x3_tc1::IfcRoadTypeEnum::IfcRoadTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcRoadTypeEnum::IfcRoadTypeEnum(Value v) { @@ -5293,7 +5293,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcRoleEnum::Class() { return /* Ifc4x3_tc1::IfcRoleEnum::IfcRoleEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcRoleEnum::IfcRoleEnum(Value v) { @@ -5322,7 +5322,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcRoofTypeEnum::Class() { ret /* Ifc4x3_tc1::IfcRoofTypeEnum::IfcRoofTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcRoofTypeEnum::IfcRoofTypeEnum(Value v) { @@ -5351,7 +5351,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcSIPrefix::Class() { return /* Ifc4x3_tc1::IfcSIPrefix::IfcSIPrefix(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcSIPrefix::IfcSIPrefix(Value v) { @@ -5380,7 +5380,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcSIUnitName::Class() { retur /* Ifc4x3_tc1::IfcSIUnitName::IfcSIUnitName(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcSIUnitName::IfcSIUnitName(Value v) { @@ -5409,7 +5409,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcSanitaryTerminalTypeEnum::C /* Ifc4x3_tc1::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalTypeEnum(Value v) { @@ -5438,7 +5438,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcSectionTypeEnum::Class() { /* Ifc4x3_tc1::IfcSectionTypeEnum::IfcSectionTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcSectionTypeEnum::IfcSectionTypeEnum(Value v) { @@ -5467,7 +5467,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcSensorTypeEnum::Class() { r /* Ifc4x3_tc1::IfcSensorTypeEnum::IfcSensorTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcSensorTypeEnum::IfcSensorTypeEnum(Value v) { @@ -5496,7 +5496,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcSequenceEnum::Class() { ret /* Ifc4x3_tc1::IfcSequenceEnum::IfcSequenceEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcSequenceEnum::IfcSequenceEnum(Value v) { @@ -5525,7 +5525,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcShadingDeviceTypeEnum::Clas /* Ifc4x3_tc1::IfcShadingDeviceTypeEnum::IfcShadingDeviceTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcShadingDeviceTypeEnum::IfcShadingDeviceTypeEnum(Value v) { @@ -5554,7 +5554,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcSignTypeEnum::Class() { ret /* Ifc4x3_tc1::IfcSignTypeEnum::IfcSignTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcSignTypeEnum::IfcSignTypeEnum(Value v) { @@ -5583,7 +5583,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcSignalTypeEnum::Class() { r /* Ifc4x3_tc1::IfcSignalTypeEnum::IfcSignalTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcSignalTypeEnum::IfcSignalTypeEnum(Value v) { @@ -5612,7 +5612,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcSimplePropertyTemplateTypeE /* Ifc4x3_tc1::IfcSimplePropertyTemplateTypeEnum::IfcSimplePropertyTemplateTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcSimplePropertyTemplateTypeEnum::IfcSimplePropertyTemplateTypeEnum(Value v) { @@ -5641,7 +5641,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcSlabTypeEnum::Class() { ret /* Ifc4x3_tc1::IfcSlabTypeEnum::IfcSlabTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcSlabTypeEnum::IfcSlabTypeEnum(Value v) { @@ -5670,7 +5670,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcSolarDeviceTypeEnum::Class( /* Ifc4x3_tc1::IfcSolarDeviceTypeEnum::IfcSolarDeviceTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcSolarDeviceTypeEnum::IfcSolarDeviceTypeEnum(Value v) { @@ -5699,7 +5699,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcSpaceHeaterTypeEnum::Class( /* Ifc4x3_tc1::IfcSpaceHeaterTypeEnum::IfcSpaceHeaterTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcSpaceHeaterTypeEnum::IfcSpaceHeaterTypeEnum(Value v) { @@ -5728,7 +5728,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcSpaceTypeEnum::Class() { re /* Ifc4x3_tc1::IfcSpaceTypeEnum::IfcSpaceTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcSpaceTypeEnum::IfcSpaceTypeEnum(Value v) { @@ -5757,7 +5757,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcSpatialZoneTypeEnum::Class( /* Ifc4x3_tc1::IfcSpatialZoneTypeEnum::IfcSpatialZoneTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcSpatialZoneTypeEnum::IfcSpatialZoneTypeEnum(Value v) { @@ -5786,7 +5786,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcStackTerminalTypeEnum::Clas /* Ifc4x3_tc1::IfcStackTerminalTypeEnum::IfcStackTerminalTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcStackTerminalTypeEnum::IfcStackTerminalTypeEnum(Value v) { @@ -5815,7 +5815,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcStairFlightTypeEnum::Class( /* Ifc4x3_tc1::IfcStairFlightTypeEnum::IfcStairFlightTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcStairFlightTypeEnum::IfcStairFlightTypeEnum(Value v) { @@ -5844,7 +5844,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcStairTypeEnum::Class() { re /* Ifc4x3_tc1::IfcStairTypeEnum::IfcStairTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcStairTypeEnum::IfcStairTypeEnum(Value v) { @@ -5873,7 +5873,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcStateEnum::Class() { return /* Ifc4x3_tc1::IfcStateEnum::IfcStateEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcStateEnum::IfcStateEnum(Value v) { @@ -5902,7 +5902,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcStructuralCurveActivityType /* Ifc4x3_tc1::IfcStructuralCurveActivityTypeEnum::IfcStructuralCurveActivityTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcStructuralCurveActivityTypeEnum::IfcStructuralCurveActivityTypeEnum(Value v) { @@ -5931,7 +5931,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcStructuralCurveMemberTypeEn /* Ifc4x3_tc1::IfcStructuralCurveMemberTypeEnum::IfcStructuralCurveMemberTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcStructuralCurveMemberTypeEnum::IfcStructuralCurveMemberTypeEnum(Value v) { @@ -5960,7 +5960,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcStructuralSurfaceActivityTy /* Ifc4x3_tc1::IfcStructuralSurfaceActivityTypeEnum::IfcStructuralSurfaceActivityTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcStructuralSurfaceActivityTypeEnum::IfcStructuralSurfaceActivityTypeEnum(Value v) { @@ -5989,7 +5989,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcStructuralSurfaceMemberType /* Ifc4x3_tc1::IfcStructuralSurfaceMemberTypeEnum::IfcStructuralSurfaceMemberTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcStructuralSurfaceMemberTypeEnum::IfcStructuralSurfaceMemberTypeEnum(Value v) { @@ -6018,7 +6018,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcSubContractResourceTypeEnum /* Ifc4x3_tc1::IfcSubContractResourceTypeEnum::IfcSubContractResourceTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcSubContractResourceTypeEnum::IfcSubContractResourceTypeEnum(Value v) { @@ -6047,7 +6047,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcSurfaceFeatureTypeEnum::Cla /* Ifc4x3_tc1::IfcSurfaceFeatureTypeEnum::IfcSurfaceFeatureTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcSurfaceFeatureTypeEnum::IfcSurfaceFeatureTypeEnum(Value v) { @@ -6076,7 +6076,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcSurfaceSide::Class() { retu /* Ifc4x3_tc1::IfcSurfaceSide::IfcSurfaceSide(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcSurfaceSide::IfcSurfaceSide(Value v) { @@ -6105,7 +6105,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcSwitchingDeviceTypeEnum::Cl /* Ifc4x3_tc1::IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceTypeEnum(Value v) { @@ -6134,7 +6134,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcSystemFurnitureElementTypeE /* Ifc4x3_tc1::IfcSystemFurnitureElementTypeEnum::IfcSystemFurnitureElementTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcSystemFurnitureElementTypeEnum::IfcSystemFurnitureElementTypeEnum(Value v) { @@ -6163,7 +6163,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcTankTypeEnum::Class() { ret /* Ifc4x3_tc1::IfcTankTypeEnum::IfcTankTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcTankTypeEnum::IfcTankTypeEnum(Value v) { @@ -6192,7 +6192,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcTaskDurationEnum::Class() { /* Ifc4x3_tc1::IfcTaskDurationEnum::IfcTaskDurationEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcTaskDurationEnum::IfcTaskDurationEnum(Value v) { @@ -6221,7 +6221,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcTaskTypeEnum::Class() { ret /* Ifc4x3_tc1::IfcTaskTypeEnum::IfcTaskTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcTaskTypeEnum::IfcTaskTypeEnum(Value v) { @@ -6250,7 +6250,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcTendonAnchorTypeEnum::Class /* Ifc4x3_tc1::IfcTendonAnchorTypeEnum::IfcTendonAnchorTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcTendonAnchorTypeEnum::IfcTendonAnchorTypeEnum(Value v) { @@ -6279,7 +6279,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcTendonConduitTypeEnum::Clas /* Ifc4x3_tc1::IfcTendonConduitTypeEnum::IfcTendonConduitTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcTendonConduitTypeEnum::IfcTendonConduitTypeEnum(Value v) { @@ -6308,7 +6308,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcTendonTypeEnum::Class() { r /* Ifc4x3_tc1::IfcTendonTypeEnum::IfcTendonTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcTendonTypeEnum::IfcTendonTypeEnum(Value v) { @@ -6337,7 +6337,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcTextPath::Class() { return /* Ifc4x3_tc1::IfcTextPath::IfcTextPath(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcTextPath::IfcTextPath(Value v) { @@ -6366,7 +6366,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcTimeSeriesDataTypeEnum::Cla /* Ifc4x3_tc1::IfcTimeSeriesDataTypeEnum::IfcTimeSeriesDataTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcTimeSeriesDataTypeEnum::IfcTimeSeriesDataTypeEnum(Value v) { @@ -6395,7 +6395,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcTrackElementTypeEnum::Class /* Ifc4x3_tc1::IfcTrackElementTypeEnum::IfcTrackElementTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcTrackElementTypeEnum::IfcTrackElementTypeEnum(Value v) { @@ -6424,7 +6424,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcTransformerTypeEnum::Class( /* Ifc4x3_tc1::IfcTransformerTypeEnum::IfcTransformerTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcTransformerTypeEnum::IfcTransformerTypeEnum(Value v) { @@ -6453,7 +6453,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcTransitionCode::Class() { r /* Ifc4x3_tc1::IfcTransitionCode::IfcTransitionCode(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcTransitionCode::IfcTransitionCode(Value v) { @@ -6482,7 +6482,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcTransportElementTypeEnum::C /* Ifc4x3_tc1::IfcTransportElementTypeEnum::IfcTransportElementTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcTransportElementTypeEnum::IfcTransportElementTypeEnum(Value v) { @@ -6511,7 +6511,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcTrimmingPreference::Class() /* Ifc4x3_tc1::IfcTrimmingPreference::IfcTrimmingPreference(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcTrimmingPreference::IfcTrimmingPreference(Value v) { @@ -6540,7 +6540,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcTubeBundleTypeEnum::Class() /* Ifc4x3_tc1::IfcTubeBundleTypeEnum::IfcTubeBundleTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcTubeBundleTypeEnum::IfcTubeBundleTypeEnum(Value v) { @@ -6569,7 +6569,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcUnitEnum::Class() { return /* Ifc4x3_tc1::IfcUnitEnum::IfcUnitEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcUnitEnum::IfcUnitEnum(Value v) { @@ -6598,7 +6598,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcUnitaryControlElementTypeEn /* Ifc4x3_tc1::IfcUnitaryControlElementTypeEnum::IfcUnitaryControlElementTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcUnitaryControlElementTypeEnum::IfcUnitaryControlElementTypeEnum(Value v) { @@ -6627,7 +6627,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcUnitaryEquipmentTypeEnum::C /* Ifc4x3_tc1::IfcUnitaryEquipmentTypeEnum::IfcUnitaryEquipmentTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcUnitaryEquipmentTypeEnum::IfcUnitaryEquipmentTypeEnum(Value v) { @@ -6656,7 +6656,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcValveTypeEnum::Class() { re /* Ifc4x3_tc1::IfcValveTypeEnum::IfcValveTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcValveTypeEnum::IfcValveTypeEnum(Value v) { @@ -6685,7 +6685,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcVehicleTypeEnum::Class() { /* Ifc4x3_tc1::IfcVehicleTypeEnum::IfcVehicleTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcVehicleTypeEnum::IfcVehicleTypeEnum(Value v) { @@ -6714,7 +6714,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcVibrationDamperTypeEnum::Cl /* Ifc4x3_tc1::IfcVibrationDamperTypeEnum::IfcVibrationDamperTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcVibrationDamperTypeEnum::IfcVibrationDamperTypeEnum(Value v) { @@ -6743,7 +6743,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcVibrationIsolatorTypeEnum:: /* Ifc4x3_tc1::IfcVibrationIsolatorTypeEnum::IfcVibrationIsolatorTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcVibrationIsolatorTypeEnum::IfcVibrationIsolatorTypeEnum(Value v) { @@ -6772,7 +6772,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcVirtualElementTypeEnum::Cla /* Ifc4x3_tc1::IfcVirtualElementTypeEnum::IfcVirtualElementTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcVirtualElementTypeEnum::IfcVirtualElementTypeEnum(Value v) { @@ -6801,7 +6801,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcVoidingFeatureTypeEnum::Cla /* Ifc4x3_tc1::IfcVoidingFeatureTypeEnum::IfcVoidingFeatureTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcVoidingFeatureTypeEnum::IfcVoidingFeatureTypeEnum(Value v) { @@ -6830,7 +6830,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcWallTypeEnum::Class() { ret /* Ifc4x3_tc1::IfcWallTypeEnum::IfcWallTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcWallTypeEnum::IfcWallTypeEnum(Value v) { @@ -6859,7 +6859,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcWasteTerminalTypeEnum::Clas /* Ifc4x3_tc1::IfcWasteTerminalTypeEnum::IfcWasteTerminalTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcWasteTerminalTypeEnum::IfcWasteTerminalTypeEnum(Value v) { @@ -6888,7 +6888,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcWindowPanelOperationEnum::C /* Ifc4x3_tc1::IfcWindowPanelOperationEnum::IfcWindowPanelOperationEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcWindowPanelOperationEnum::IfcWindowPanelOperationEnum(Value v) { @@ -6917,7 +6917,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcWindowPanelPositionEnum::Cl /* Ifc4x3_tc1::IfcWindowPanelPositionEnum::IfcWindowPanelPositionEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcWindowPanelPositionEnum::IfcWindowPanelPositionEnum(Value v) { @@ -6946,7 +6946,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcWindowTypeEnum::Class() { r /* Ifc4x3_tc1::IfcWindowTypeEnum::IfcWindowTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcWindowTypeEnum::IfcWindowTypeEnum(Value v) { @@ -6975,7 +6975,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcWindowTypePartitioningEnum: /* Ifc4x3_tc1::IfcWindowTypePartitioningEnum::IfcWindowTypePartitioningEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcWindowTypePartitioningEnum::IfcWindowTypePartitioningEnum(Value v) { @@ -7004,7 +7004,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcWorkCalendarTypeEnum::Class /* Ifc4x3_tc1::IfcWorkCalendarTypeEnum::IfcWorkCalendarTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcWorkCalendarTypeEnum::IfcWorkCalendarTypeEnum(Value v) { @@ -7033,7 +7033,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcWorkPlanTypeEnum::Class() { /* Ifc4x3_tc1::IfcWorkPlanTypeEnum::IfcWorkPlanTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcWorkPlanTypeEnum::IfcWorkPlanTypeEnum(Value v) { @@ -7062,7 +7062,7 @@ const ifcopenshell::enumeration_type& Ifc4x3_tc1::IfcWorkScheduleTypeEnum::Class /* Ifc4x3_tc1::IfcWorkScheduleTypeEnum::IfcWorkScheduleTypeEnum(const std::weak_ptr& e) - : express::DeclaredType(e) + : express::declared_type(e) {} Ifc4x3_tc1::IfcWorkScheduleTypeEnum::IfcWorkScheduleTypeEnum(Value v) { @@ -7656,8 +7656,8 @@ Ifc4x3_tc1::IfcPressureMeasure::operator double() const { return get_attribute_v // Function implementations for IfcPropertySetDefinitionSet const ifcopenshell::type_declaration& Ifc4x3_tc1::IfcPropertySetDefinitionSet::Class() { return *((ifcopenshell::type_declaration*)IFC4X3_TC1_types[826]); } -Ifc4x3_tc1::IfcPropertySetDefinitionSet Ifc4x3_tc1::IfcPropertySetDefinitionSet::initialize(std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > v) { set_attribute_value(0, cast_vector(v));; return *this; } -Ifc4x3_tc1::IfcPropertySetDefinitionSet::operator std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition >() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3_tc1::IfcPropertySetDefinition>(es); } +Ifc4x3_tc1::IfcPropertySetDefinitionSet Ifc4x3_tc1::IfcPropertySetDefinitionSet::initialize(std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > v) { set_attribute_value(0, cast_vector(v));; return *this; } +Ifc4x3_tc1::IfcPropertySetDefinitionSet::operator std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition >() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3_tc1::IfcPropertySetDefinition>(es); } // Function implementations for IfcRadioActivityMeasure const ifcopenshell::type_declaration& Ifc4x3_tc1::IfcRadioActivityMeasure::Class() { return *((ifcopenshell::type_declaration*)IFC4X3_TC1_types[850]); } @@ -7878,7 +7878,7 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcActionRequest::Class() { return *((if Ifc4x3_tc1::IfcActionRequest Ifc4x3_tc1::IfcActionRequest::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, std::optional< std::string > v6_Identification, std::optional< ::Ifc4x3_tc1::IfcActionRequestTypeEnum::Value > v7_PredefinedType, std::optional< std::string > v8_Status, std::optional< std::string > v9_LongDescription) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); } if (v6_Identification) {set_attribute_value(5, (*v6_Identification)); } if (v7_PredefinedType) {set_attribute_value(6, (enumeration_reference(&::Ifc4x3_tc1::IfcActionRequestTypeEnum::Class(),(size_t)*v7_PredefinedType))); } if (v8_Status) {set_attribute_value(7, (*v8_Status)); } if (v9_LongDescription) {set_attribute_value(8, (*v9_LongDescription)); }; return *this; } // Function implementations for IfcActor -::Ifc4x3_tc1::IfcActorSelect Ifc4x3_tc1::IfcActor::TheActor() const { return ((express::Base)(get_attribute_value(5))).as<::Ifc4x3_tc1::IfcActorSelect>(); } +::Ifc4x3_tc1::IfcActorSelect Ifc4x3_tc1::IfcActor::TheActor() const { return ((express::base)(get_attribute_value(5))).as<::Ifc4x3_tc1::IfcActorSelect>(); } void Ifc4x3_tc1::IfcActor::setTheActor(const ::Ifc4x3_tc1::IfcActorSelect& v) { set_attribute_value(5, v);if constexpr (false)unset_attribute_value(5); } std::vector<::Ifc4x3_tc1::IfcRelAssignsToActor> Ifc4x3_tc1::IfcActor::IsActingUpon() const { return cast_vector(file()->get_inverse(data()->id(), IFC4X3_TC1_types[899], 6)); } @@ -7913,7 +7913,7 @@ void Ifc4x3_tc1::IfcActuatorType::setPredefinedType(const ::Ifc4x3_tc1::IfcActua const ifcopenshell::entity& Ifc4x3_tc1::IfcActuatorType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[10]); } -Ifc4x3_tc1::IfcActuatorType Ifc4x3_tc1::IfcActuatorType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcActuatorTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcActuatorTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_tc1::IfcActuatorType Ifc4x3_tc1::IfcActuatorType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcActuatorTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcActuatorTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcAddress std::optional< ::Ifc4x3_tc1::IfcAddressTypeEnum::Value > Ifc4x3_tc1::IfcAddress::Purpose() const { if(get_attribute_value(0).isNull()) { return std::nullopt; } return ::Ifc4x3_tc1::IfcAddressTypeEnum::FromString(get_attribute_value(0)); } @@ -7936,18 +7936,18 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcAdvancedBrep::Class() { return *((ifc Ifc4x3_tc1::IfcAdvancedBrep Ifc4x3_tc1::IfcAdvancedBrep::initialize(::Ifc4x3_tc1::IfcClosedShell v1_Outer) { set_attribute_value(0, (v1_Outer));; return *this; } // Function implementations for IfcAdvancedBrepWithVoids -std::vector< ::Ifc4x3_tc1::IfcClosedShell > Ifc4x3_tc1::IfcAdvancedBrepWithVoids::Voids() const { std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3_tc1::IfcClosedShell>(es); } -void Ifc4x3_tc1::IfcAdvancedBrepWithVoids::setVoids(const std::vector< ::Ifc4x3_tc1::IfcClosedShell >& v) { set_attribute_value(1, cast_vector(v));if constexpr (false)unset_attribute_value(1); } +std::vector< ::Ifc4x3_tc1::IfcClosedShell > Ifc4x3_tc1::IfcAdvancedBrepWithVoids::Voids() const { std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3_tc1::IfcClosedShell>(es); } +void Ifc4x3_tc1::IfcAdvancedBrepWithVoids::setVoids(const std::vector< ::Ifc4x3_tc1::IfcClosedShell >& v) { set_attribute_value(1, cast_vector(v));if constexpr (false)unset_attribute_value(1); } const ifcopenshell::entity& Ifc4x3_tc1::IfcAdvancedBrepWithVoids::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[15]); } -Ifc4x3_tc1::IfcAdvancedBrepWithVoids Ifc4x3_tc1::IfcAdvancedBrepWithVoids::initialize(::Ifc4x3_tc1::IfcClosedShell v1_Outer, std::vector< ::Ifc4x3_tc1::IfcClosedShell > v2_Voids) { set_attribute_value(0, (v1_Outer));set_attribute_value(1, cast_vector(v2_Voids));; return *this; } +Ifc4x3_tc1::IfcAdvancedBrepWithVoids Ifc4x3_tc1::IfcAdvancedBrepWithVoids::initialize(::Ifc4x3_tc1::IfcClosedShell v1_Outer, std::vector< ::Ifc4x3_tc1::IfcClosedShell > v2_Voids) { set_attribute_value(0, (v1_Outer));set_attribute_value(1, cast_vector(v2_Voids));; return *this; } // Function implementations for IfcAdvancedFace const ifcopenshell::entity& Ifc4x3_tc1::IfcAdvancedFace::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[16]); } -Ifc4x3_tc1::IfcAdvancedFace Ifc4x3_tc1::IfcAdvancedFace::initialize(std::vector< ::Ifc4x3_tc1::IfcFaceBound > v1_Bounds, ::Ifc4x3_tc1::IfcSurface v2_FaceSurface, bool v3_SameSense) { set_attribute_value(0, cast_vector(v1_Bounds));set_attribute_value(1, (v2_FaceSurface));set_attribute_value(2, (v3_SameSense));; return *this; } +Ifc4x3_tc1::IfcAdvancedFace Ifc4x3_tc1::IfcAdvancedFace::initialize(std::vector< ::Ifc4x3_tc1::IfcFaceBound > v1_Bounds, ::Ifc4x3_tc1::IfcSurface v2_FaceSurface, bool v3_SameSense) { set_attribute_value(0, cast_vector(v1_Bounds));set_attribute_value(1, (v2_FaceSurface));set_attribute_value(2, (v3_SameSense));; return *this; } // Function implementations for IfcAirTerminal std::optional< ::Ifc4x3_tc1::IfcAirTerminalTypeEnum::Value > Ifc4x3_tc1::IfcAirTerminal::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_tc1::IfcAirTerminalTypeEnum::FromString(get_attribute_value(8)); } @@ -7971,7 +7971,7 @@ void Ifc4x3_tc1::IfcAirTerminalBoxType::setPredefinedType(const ::Ifc4x3_tc1::If const ifcopenshell::entity& Ifc4x3_tc1::IfcAirTerminalBoxType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[19]); } -Ifc4x3_tc1::IfcAirTerminalBoxType Ifc4x3_tc1::IfcAirTerminalBoxType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcAirTerminalBoxTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcAirTerminalBoxTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_tc1::IfcAirTerminalBoxType Ifc4x3_tc1::IfcAirTerminalBoxType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcAirTerminalBoxTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcAirTerminalBoxTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcAirTerminalType ::Ifc4x3_tc1::IfcAirTerminalTypeEnum::Value Ifc4x3_tc1::IfcAirTerminalType::PredefinedType() const { return ::Ifc4x3_tc1::IfcAirTerminalTypeEnum::FromString(get_attribute_value(9)); } @@ -7979,7 +7979,7 @@ void Ifc4x3_tc1::IfcAirTerminalType::setPredefinedType(const ::Ifc4x3_tc1::IfcAi const ifcopenshell::entity& Ifc4x3_tc1::IfcAirTerminalType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[21]); } -Ifc4x3_tc1::IfcAirTerminalType Ifc4x3_tc1::IfcAirTerminalType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcAirTerminalTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcAirTerminalTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_tc1::IfcAirTerminalType Ifc4x3_tc1::IfcAirTerminalType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcAirTerminalTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcAirTerminalTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcAirToAirHeatRecovery std::optional< ::Ifc4x3_tc1::IfcAirToAirHeatRecoveryTypeEnum::Value > Ifc4x3_tc1::IfcAirToAirHeatRecovery::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_tc1::IfcAirToAirHeatRecoveryTypeEnum::FromString(get_attribute_value(8)); } @@ -7995,7 +7995,7 @@ void Ifc4x3_tc1::IfcAirToAirHeatRecoveryType::setPredefinedType(const ::Ifc4x3_t const ifcopenshell::entity& Ifc4x3_tc1::IfcAirToAirHeatRecoveryType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[24]); } -Ifc4x3_tc1::IfcAirToAirHeatRecoveryType Ifc4x3_tc1::IfcAirToAirHeatRecoveryType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcAirToAirHeatRecoveryTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcAirToAirHeatRecoveryTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_tc1::IfcAirToAirHeatRecoveryType Ifc4x3_tc1::IfcAirToAirHeatRecoveryType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcAirToAirHeatRecoveryTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcAirToAirHeatRecoveryTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcAlarm std::optional< ::Ifc4x3_tc1::IfcAlarmTypeEnum::Value > Ifc4x3_tc1::IfcAlarm::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_tc1::IfcAlarmTypeEnum::FromString(get_attribute_value(8)); } @@ -8011,7 +8011,7 @@ void Ifc4x3_tc1::IfcAlarmType::setPredefinedType(const ::Ifc4x3_tc1::IfcAlarmTyp const ifcopenshell::entity& Ifc4x3_tc1::IfcAlarmType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[27]); } -Ifc4x3_tc1::IfcAlarmType Ifc4x3_tc1::IfcAlarmType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcAlarmTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcAlarmTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_tc1::IfcAlarmType Ifc4x3_tc1::IfcAlarmType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcAlarmTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcAlarmTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcAlignment std::optional< ::Ifc4x3_tc1::IfcAlignmentTypeEnum::Value > Ifc4x3_tc1::IfcAlignment::PredefinedType() const { if(get_attribute_value(7).isNull()) { return std::nullopt; } return ::Ifc4x3_tc1::IfcAlignmentTypeEnum::FromString(get_attribute_value(7)); } @@ -8056,7 +8056,7 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcAlignmentHorizontal::Class() { return Ifc4x3_tc1::IfcAlignmentHorizontal Ifc4x3_tc1::IfcAlignmentHorizontal::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, ::Ifc4x3_tc1::IfcObjectPlacement v6_ObjectPlacement, ::Ifc4x3_tc1::IfcProductRepresentation v7_Representation) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); }set_attribute_value(5, (v6_ObjectPlacement));set_attribute_value(6, (v7_Representation));; return *this; } // Function implementations for IfcAlignmentHorizontalSegment -::Ifc4x3_tc1::IfcCartesianPoint Ifc4x3_tc1::IfcAlignmentHorizontalSegment::StartPoint() const { return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3_tc1::IfcCartesianPoint>(); } +::Ifc4x3_tc1::IfcCartesianPoint Ifc4x3_tc1::IfcAlignmentHorizontalSegment::StartPoint() const { return ((express::base)(get_attribute_value(2))).as<::Ifc4x3_tc1::IfcCartesianPoint>(); } void Ifc4x3_tc1::IfcAlignmentHorizontalSegment::setStartPoint(const ::Ifc4x3_tc1::IfcCartesianPoint& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } double Ifc4x3_tc1::IfcAlignmentHorizontalSegment::StartDirection() const { double v = get_attribute_value(3); return v; } void Ifc4x3_tc1::IfcAlignmentHorizontalSegment::setStartDirection(const double& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } @@ -8086,7 +8086,7 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcAlignmentParameterSegment::Class() { Ifc4x3_tc1::IfcAlignmentParameterSegment Ifc4x3_tc1::IfcAlignmentParameterSegment::initialize(std::optional< std::string > v1_StartTag, std::optional< std::string > v2_EndTag) { if (v1_StartTag) {set_attribute_value(0, (*v1_StartTag)); } if (v2_EndTag) {set_attribute_value(1, (*v2_EndTag)); }; return *this; } // Function implementations for IfcAlignmentSegment -::Ifc4x3_tc1::IfcAlignmentParameterSegment Ifc4x3_tc1::IfcAlignmentSegment::DesignParameters() const { return ((express::Base)(get_attribute_value(7))).as<::Ifc4x3_tc1::IfcAlignmentParameterSegment>(); } +::Ifc4x3_tc1::IfcAlignmentParameterSegment Ifc4x3_tc1::IfcAlignmentSegment::DesignParameters() const { return ((express::base)(get_attribute_value(7))).as<::Ifc4x3_tc1::IfcAlignmentParameterSegment>(); } void Ifc4x3_tc1::IfcAlignmentSegment::setDesignParameters(const ::Ifc4x3_tc1::IfcAlignmentParameterSegment& v) { set_attribute_value(7, v);if constexpr (false)unset_attribute_value(7); } @@ -8129,17 +8129,17 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcAnnotation::Class() { return *((ifcop Ifc4x3_tc1::IfcAnnotation Ifc4x3_tc1::IfcAnnotation::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, ::Ifc4x3_tc1::IfcObjectPlacement v6_ObjectPlacement, ::Ifc4x3_tc1::IfcProductRepresentation v7_Representation, std::optional< ::Ifc4x3_tc1::IfcAnnotationTypeEnum::Value > v8_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); }set_attribute_value(5, (v6_ObjectPlacement));set_attribute_value(6, (v7_Representation)); if (v8_PredefinedType) {set_attribute_value(7, (enumeration_reference(&::Ifc4x3_tc1::IfcAnnotationTypeEnum::Class(),(size_t)*v8_PredefinedType))); }; return *this; } // Function implementations for IfcAnnotationFillArea -::Ifc4x3_tc1::IfcCurve Ifc4x3_tc1::IfcAnnotationFillArea::OuterBoundary() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcCurve>(); } +::Ifc4x3_tc1::IfcCurve Ifc4x3_tc1::IfcAnnotationFillArea::OuterBoundary() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcCurve>(); } void Ifc4x3_tc1::IfcAnnotationFillArea::setOuterBoundary(const ::Ifc4x3_tc1::IfcCurve& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } -std::optional< std::vector< ::Ifc4x3_tc1::IfcCurve > > Ifc4x3_tc1::IfcAnnotationFillArea::InnerBoundaries() const { if(get_attribute_value(1).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3_tc1::IfcCurve>(es); } -void Ifc4x3_tc1::IfcAnnotationFillArea::setInnerBoundaries(const std::optional< std::vector< ::Ifc4x3_tc1::IfcCurve > >& v) { if (v) {set_attribute_value(1, cast_vector(*v));} else {unset_attribute_value(1);} } +std::optional< std::vector< ::Ifc4x3_tc1::IfcCurve > > Ifc4x3_tc1::IfcAnnotationFillArea::InnerBoundaries() const { if(get_attribute_value(1).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3_tc1::IfcCurve>(es); } +void Ifc4x3_tc1::IfcAnnotationFillArea::setInnerBoundaries(const std::optional< std::vector< ::Ifc4x3_tc1::IfcCurve > >& v) { if (v) {set_attribute_value(1, cast_vector(*v));} else {unset_attribute_value(1);} } const ifcopenshell::entity& Ifc4x3_tc1::IfcAnnotationFillArea::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[47]); } -Ifc4x3_tc1::IfcAnnotationFillArea Ifc4x3_tc1::IfcAnnotationFillArea::initialize(::Ifc4x3_tc1::IfcCurve v1_OuterBoundary, std::optional< std::vector< ::Ifc4x3_tc1::IfcCurve > > v2_InnerBoundaries) { set_attribute_value(0, (v1_OuterBoundary)); if (v2_InnerBoundaries) {set_attribute_value(1, cast_vector(*v2_InnerBoundaries)); }; return *this; } +Ifc4x3_tc1::IfcAnnotationFillArea Ifc4x3_tc1::IfcAnnotationFillArea::initialize(::Ifc4x3_tc1::IfcCurve v1_OuterBoundary, std::optional< std::vector< ::Ifc4x3_tc1::IfcCurve > > v2_InnerBoundaries) { set_attribute_value(0, (v1_OuterBoundary)); if (v2_InnerBoundaries) {set_attribute_value(1, cast_vector(*v2_InnerBoundaries)); }; return *this; } // Function implementations for IfcApplication -::Ifc4x3_tc1::IfcOrganization Ifc4x3_tc1::IfcApplication::ApplicationDeveloper() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcOrganization>(); } +::Ifc4x3_tc1::IfcOrganization Ifc4x3_tc1::IfcApplication::ApplicationDeveloper() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcOrganization>(); } void Ifc4x3_tc1::IfcApplication::setApplicationDeveloper(const ::Ifc4x3_tc1::IfcOrganization& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } std::string Ifc4x3_tc1::IfcApplication::Version() const { std::string v = get_attribute_value(1); return v; } void Ifc4x3_tc1::IfcApplication::setVersion(const std::string& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } @@ -8157,9 +8157,9 @@ std::optional< std::string > Ifc4x3_tc1::IfcAppliedValue::Name() const { if(get_ void Ifc4x3_tc1::IfcAppliedValue::setName(const std::optional< std::string >& v) { if (v) {set_attribute_value(0, *v);} else {unset_attribute_value(0);} } std::optional< std::string > Ifc4x3_tc1::IfcAppliedValue::Description() const { if(get_attribute_value(1).isNull()) { return std::nullopt; } std::string v = get_attribute_value(1); return v; } void Ifc4x3_tc1::IfcAppliedValue::setDescription(const std::optional< std::string >& v) { if (v) {set_attribute_value(1, *v);} else {unset_attribute_value(1);} } -::Ifc4x3_tc1::IfcAppliedValueSelect Ifc4x3_tc1::IfcAppliedValue::AppliedValue() const { if(get_attribute_value(2).isNull()) { return ::Ifc4x3_tc1::IfcAppliedValueSelect{}; } return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3_tc1::IfcAppliedValueSelect>(); } +::Ifc4x3_tc1::IfcAppliedValueSelect Ifc4x3_tc1::IfcAppliedValue::AppliedValue() const { if(get_attribute_value(2).isNull()) { return ::Ifc4x3_tc1::IfcAppliedValueSelect{}; } return ((express::base)(get_attribute_value(2))).as<::Ifc4x3_tc1::IfcAppliedValueSelect>(); } void Ifc4x3_tc1::IfcAppliedValue::setAppliedValue(const ::Ifc4x3_tc1::IfcAppliedValueSelect& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } -::Ifc4x3_tc1::IfcMeasureWithUnit Ifc4x3_tc1::IfcAppliedValue::UnitBasis() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3_tc1::IfcMeasureWithUnit{}; } return ((express::Base)(get_attribute_value(3))).as<::Ifc4x3_tc1::IfcMeasureWithUnit>(); } +::Ifc4x3_tc1::IfcMeasureWithUnit Ifc4x3_tc1::IfcAppliedValue::UnitBasis() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3_tc1::IfcMeasureWithUnit{}; } return ((express::base)(get_attribute_value(3))).as<::Ifc4x3_tc1::IfcMeasureWithUnit>(); } void Ifc4x3_tc1::IfcAppliedValue::setUnitBasis(const ::Ifc4x3_tc1::IfcMeasureWithUnit& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } std::optional< std::string > Ifc4x3_tc1::IfcAppliedValue::ApplicableDate() const { if(get_attribute_value(4).isNull()) { return std::nullopt; } std::string v = get_attribute_value(4); return v; } void Ifc4x3_tc1::IfcAppliedValue::setApplicableDate(const std::optional< std::string >& v) { if (v) {set_attribute_value(4, *v);} else {unset_attribute_value(4);} } @@ -8171,13 +8171,13 @@ std::optional< std::string > Ifc4x3_tc1::IfcAppliedValue::Condition() const { if void Ifc4x3_tc1::IfcAppliedValue::setCondition(const std::optional< std::string >& v) { if (v) {set_attribute_value(7, *v);} else {unset_attribute_value(7);} } std::optional< ::Ifc4x3_tc1::IfcArithmeticOperatorEnum::Value > Ifc4x3_tc1::IfcAppliedValue::ArithmeticOperator() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_tc1::IfcArithmeticOperatorEnum::FromString(get_attribute_value(8)); } void Ifc4x3_tc1::IfcAppliedValue::setArithmeticOperator(const std::optional< ::Ifc4x3_tc1::IfcArithmeticOperatorEnum::Value >& v) { if (v) {set_attribute_value(8, enumeration_reference(&::Ifc4x3_tc1::IfcArithmeticOperatorEnum::Class(), (size_t) *v));} else {unset_attribute_value(8);} } -std::optional< std::vector< ::Ifc4x3_tc1::IfcAppliedValue > > Ifc4x3_tc1::IfcAppliedValue::Components() const { if(get_attribute_value(9).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(9); return cast_vector<::Ifc4x3_tc1::IfcAppliedValue>(es); } -void Ifc4x3_tc1::IfcAppliedValue::setComponents(const std::optional< std::vector< ::Ifc4x3_tc1::IfcAppliedValue > >& v) { if (v) {set_attribute_value(9, cast_vector(*v));} else {unset_attribute_value(9);} } +std::optional< std::vector< ::Ifc4x3_tc1::IfcAppliedValue > > Ifc4x3_tc1::IfcAppliedValue::Components() const { if(get_attribute_value(9).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(9); return cast_vector<::Ifc4x3_tc1::IfcAppliedValue>(es); } +void Ifc4x3_tc1::IfcAppliedValue::setComponents(const std::optional< std::vector< ::Ifc4x3_tc1::IfcAppliedValue > >& v) { if (v) {set_attribute_value(9, cast_vector(*v));} else {unset_attribute_value(9);} } std::vector<::Ifc4x3_tc1::IfcExternalReferenceRelationship> Ifc4x3_tc1::IfcAppliedValue::HasExternalReference() const { return cast_vector(file()->get_inverse(data()->id(), IFC4X3_TC1_types[427], 3)); } const ifcopenshell::entity& Ifc4x3_tc1::IfcAppliedValue::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[50]); } -Ifc4x3_tc1::IfcAppliedValue Ifc4x3_tc1::IfcAppliedValue::initialize(std::optional< std::string > v1_Name, std::optional< std::string > v2_Description, ::Ifc4x3_tc1::IfcAppliedValueSelect v3_AppliedValue, ::Ifc4x3_tc1::IfcMeasureWithUnit v4_UnitBasis, std::optional< std::string > v5_ApplicableDate, std::optional< std::string > v6_FixedUntilDate, std::optional< std::string > v7_Category, std::optional< std::string > v8_Condition, std::optional< ::Ifc4x3_tc1::IfcArithmeticOperatorEnum::Value > v9_ArithmeticOperator, std::optional< std::vector< ::Ifc4x3_tc1::IfcAppliedValue > > v10_Components) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); } if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, (v3_AppliedValue));set_attribute_value(3, (v4_UnitBasis)); if (v5_ApplicableDate) {set_attribute_value(4, (*v5_ApplicableDate)); } if (v6_FixedUntilDate) {set_attribute_value(5, (*v6_FixedUntilDate)); } if (v7_Category) {set_attribute_value(6, (*v7_Category)); } if (v8_Condition) {set_attribute_value(7, (*v8_Condition)); } if (v9_ArithmeticOperator) {set_attribute_value(8, (enumeration_reference(&::Ifc4x3_tc1::IfcArithmeticOperatorEnum::Class(),(size_t)*v9_ArithmeticOperator))); } if (v10_Components) {set_attribute_value(9, cast_vector(*v10_Components)); }; return *this; } +Ifc4x3_tc1::IfcAppliedValue Ifc4x3_tc1::IfcAppliedValue::initialize(std::optional< std::string > v1_Name, std::optional< std::string > v2_Description, ::Ifc4x3_tc1::IfcAppliedValueSelect v3_AppliedValue, ::Ifc4x3_tc1::IfcMeasureWithUnit v4_UnitBasis, std::optional< std::string > v5_ApplicableDate, std::optional< std::string > v6_FixedUntilDate, std::optional< std::string > v7_Category, std::optional< std::string > v8_Condition, std::optional< ::Ifc4x3_tc1::IfcArithmeticOperatorEnum::Value > v9_ArithmeticOperator, std::optional< std::vector< ::Ifc4x3_tc1::IfcAppliedValue > > v10_Components) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); } if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, (v3_AppliedValue));set_attribute_value(3, (v4_UnitBasis)); if (v5_ApplicableDate) {set_attribute_value(4, (*v5_ApplicableDate)); } if (v6_FixedUntilDate) {set_attribute_value(5, (*v6_FixedUntilDate)); } if (v7_Category) {set_attribute_value(6, (*v7_Category)); } if (v8_Condition) {set_attribute_value(7, (*v8_Condition)); } if (v9_ArithmeticOperator) {set_attribute_value(8, (enumeration_reference(&::Ifc4x3_tc1::IfcArithmeticOperatorEnum::Class(),(size_t)*v9_ArithmeticOperator))); } if (v10_Components) {set_attribute_value(9, cast_vector(*v10_Components)); }; return *this; } // Function implementations for IfcApproval std::optional< std::string > Ifc4x3_tc1::IfcApproval::Identifier() const { if(get_attribute_value(0).isNull()) { return std::nullopt; } std::string v = get_attribute_value(0); return v; } @@ -8194,9 +8194,9 @@ std::optional< std::string > Ifc4x3_tc1::IfcApproval::Level() const { if(get_att void Ifc4x3_tc1::IfcApproval::setLevel(const std::optional< std::string >& v) { if (v) {set_attribute_value(5, *v);} else {unset_attribute_value(5);} } std::optional< std::string > Ifc4x3_tc1::IfcApproval::Qualifier() const { if(get_attribute_value(6).isNull()) { return std::nullopt; } std::string v = get_attribute_value(6); return v; } void Ifc4x3_tc1::IfcApproval::setQualifier(const std::optional< std::string >& v) { if (v) {set_attribute_value(6, *v);} else {unset_attribute_value(6);} } -::Ifc4x3_tc1::IfcActorSelect Ifc4x3_tc1::IfcApproval::RequestingApproval() const { if(get_attribute_value(7).isNull()) { return ::Ifc4x3_tc1::IfcActorSelect{}; } return ((express::Base)(get_attribute_value(7))).as<::Ifc4x3_tc1::IfcActorSelect>(); } +::Ifc4x3_tc1::IfcActorSelect Ifc4x3_tc1::IfcApproval::RequestingApproval() const { if(get_attribute_value(7).isNull()) { return ::Ifc4x3_tc1::IfcActorSelect{}; } return ((express::base)(get_attribute_value(7))).as<::Ifc4x3_tc1::IfcActorSelect>(); } void Ifc4x3_tc1::IfcApproval::setRequestingApproval(const ::Ifc4x3_tc1::IfcActorSelect& v) { set_attribute_value(7, v);if constexpr (false)unset_attribute_value(7); } -::Ifc4x3_tc1::IfcActorSelect Ifc4x3_tc1::IfcApproval::GivingApproval() const { if(get_attribute_value(8).isNull()) { return ::Ifc4x3_tc1::IfcActorSelect{}; } return ((express::Base)(get_attribute_value(8))).as<::Ifc4x3_tc1::IfcActorSelect>(); } +::Ifc4x3_tc1::IfcActorSelect Ifc4x3_tc1::IfcApproval::GivingApproval() const { if(get_attribute_value(8).isNull()) { return ::Ifc4x3_tc1::IfcActorSelect{}; } return ((express::base)(get_attribute_value(8))).as<::Ifc4x3_tc1::IfcActorSelect>(); } void Ifc4x3_tc1::IfcApproval::setGivingApproval(const ::Ifc4x3_tc1::IfcActorSelect& v) { set_attribute_value(8, v);if constexpr (false)unset_attribute_value(8); } std::vector<::Ifc4x3_tc1::IfcExternalReferenceRelationship> Ifc4x3_tc1::IfcApproval::HasExternalReferences() const { return cast_vector(file()->get_inverse(data()->id(), IFC4X3_TC1_types[427], 3)); } @@ -8209,17 +8209,17 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcApproval::Class() { return *((ifcopen Ifc4x3_tc1::IfcApproval Ifc4x3_tc1::IfcApproval::initialize(std::optional< std::string > v1_Identifier, std::optional< std::string > v2_Name, std::optional< std::string > v3_Description, std::optional< std::string > v4_TimeOfApproval, std::optional< std::string > v5_Status, std::optional< std::string > v6_Level, std::optional< std::string > v7_Qualifier, ::Ifc4x3_tc1::IfcActorSelect v8_RequestingApproval, ::Ifc4x3_tc1::IfcActorSelect v9_GivingApproval) { if (v1_Identifier) {set_attribute_value(0, (*v1_Identifier)); } if (v2_Name) {set_attribute_value(1, (*v2_Name)); } if (v3_Description) {set_attribute_value(2, (*v3_Description)); } if (v4_TimeOfApproval) {set_attribute_value(3, (*v4_TimeOfApproval)); } if (v5_Status) {set_attribute_value(4, (*v5_Status)); } if (v6_Level) {set_attribute_value(5, (*v6_Level)); } if (v7_Qualifier) {set_attribute_value(6, (*v7_Qualifier)); }set_attribute_value(7, (v8_RequestingApproval));set_attribute_value(8, (v9_GivingApproval));; return *this; } // Function implementations for IfcApprovalRelationship -::Ifc4x3_tc1::IfcApproval Ifc4x3_tc1::IfcApprovalRelationship::RelatingApproval() const { return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3_tc1::IfcApproval>(); } +::Ifc4x3_tc1::IfcApproval Ifc4x3_tc1::IfcApprovalRelationship::RelatingApproval() const { return ((express::base)(get_attribute_value(2))).as<::Ifc4x3_tc1::IfcApproval>(); } void Ifc4x3_tc1::IfcApprovalRelationship::setRelatingApproval(const ::Ifc4x3_tc1::IfcApproval& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } -std::vector< ::Ifc4x3_tc1::IfcApproval > Ifc4x3_tc1::IfcApprovalRelationship::RelatedApprovals() const { std::vector es = get_attribute_value(3); return cast_vector<::Ifc4x3_tc1::IfcApproval>(es); } -void Ifc4x3_tc1::IfcApprovalRelationship::setRelatedApprovals(const std::vector< ::Ifc4x3_tc1::IfcApproval >& v) { set_attribute_value(3, cast_vector(v));if constexpr (false)unset_attribute_value(3); } +std::vector< ::Ifc4x3_tc1::IfcApproval > Ifc4x3_tc1::IfcApprovalRelationship::RelatedApprovals() const { std::vector es = get_attribute_value(3); return cast_vector<::Ifc4x3_tc1::IfcApproval>(es); } +void Ifc4x3_tc1::IfcApprovalRelationship::setRelatedApprovals(const std::vector< ::Ifc4x3_tc1::IfcApproval >& v) { set_attribute_value(3, cast_vector(v));if constexpr (false)unset_attribute_value(3); } const ifcopenshell::entity& Ifc4x3_tc1::IfcApprovalRelationship::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[53]); } -Ifc4x3_tc1::IfcApprovalRelationship Ifc4x3_tc1::IfcApprovalRelationship::initialize(std::optional< std::string > v1_Name, std::optional< std::string > v2_Description, ::Ifc4x3_tc1::IfcApproval v3_RelatingApproval, std::vector< ::Ifc4x3_tc1::IfcApproval > v4_RelatedApprovals) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); } if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, (v3_RelatingApproval));set_attribute_value(3, cast_vector(v4_RelatedApprovals));; return *this; } +Ifc4x3_tc1::IfcApprovalRelationship Ifc4x3_tc1::IfcApprovalRelationship::initialize(std::optional< std::string > v1_Name, std::optional< std::string > v2_Description, ::Ifc4x3_tc1::IfcApproval v3_RelatingApproval, std::vector< ::Ifc4x3_tc1::IfcApproval > v4_RelatedApprovals) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); } if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, (v3_RelatingApproval));set_attribute_value(3, cast_vector(v4_RelatedApprovals));; return *this; } // Function implementations for IfcArbitraryClosedProfileDef -::Ifc4x3_tc1::IfcCurve Ifc4x3_tc1::IfcArbitraryClosedProfileDef::OuterCurve() const { return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3_tc1::IfcCurve>(); } +::Ifc4x3_tc1::IfcCurve Ifc4x3_tc1::IfcArbitraryClosedProfileDef::OuterCurve() const { return ((express::base)(get_attribute_value(2))).as<::Ifc4x3_tc1::IfcCurve>(); } void Ifc4x3_tc1::IfcArbitraryClosedProfileDef::setOuterCurve(const ::Ifc4x3_tc1::IfcCurve& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } @@ -8227,7 +8227,7 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcArbitraryClosedProfileDef::Class() { Ifc4x3_tc1::IfcArbitraryClosedProfileDef Ifc4x3_tc1::IfcArbitraryClosedProfileDef::initialize(::Ifc4x3_tc1::IfcProfileTypeEnum::Value v1_ProfileType, std::optional< std::string > v2_ProfileName, ::Ifc4x3_tc1::IfcCurve v3_OuterCurve) { set_attribute_value(0, (enumeration_reference(&::Ifc4x3_tc1::IfcProfileTypeEnum::Class(),(size_t)v1_ProfileType))); if (v2_ProfileName) {set_attribute_value(1, (*v2_ProfileName)); }set_attribute_value(2, (v3_OuterCurve));; return *this; } // Function implementations for IfcArbitraryOpenProfileDef -::Ifc4x3_tc1::IfcBoundedCurve Ifc4x3_tc1::IfcArbitraryOpenProfileDef::Curve() const { return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3_tc1::IfcBoundedCurve>(); } +::Ifc4x3_tc1::IfcBoundedCurve Ifc4x3_tc1::IfcArbitraryOpenProfileDef::Curve() const { return ((express::base)(get_attribute_value(2))).as<::Ifc4x3_tc1::IfcBoundedCurve>(); } void Ifc4x3_tc1::IfcArbitraryOpenProfileDef::setCurve(const ::Ifc4x3_tc1::IfcBoundedCurve& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } @@ -8235,31 +8235,31 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcArbitraryOpenProfileDef::Class() { re Ifc4x3_tc1::IfcArbitraryOpenProfileDef Ifc4x3_tc1::IfcArbitraryOpenProfileDef::initialize(::Ifc4x3_tc1::IfcProfileTypeEnum::Value v1_ProfileType, std::optional< std::string > v2_ProfileName, ::Ifc4x3_tc1::IfcBoundedCurve v3_Curve) { set_attribute_value(0, (enumeration_reference(&::Ifc4x3_tc1::IfcProfileTypeEnum::Class(),(size_t)v1_ProfileType))); if (v2_ProfileName) {set_attribute_value(1, (*v2_ProfileName)); }set_attribute_value(2, (v3_Curve));; return *this; } // Function implementations for IfcArbitraryProfileDefWithVoids -std::vector< ::Ifc4x3_tc1::IfcCurve > Ifc4x3_tc1::IfcArbitraryProfileDefWithVoids::InnerCurves() const { std::vector es = get_attribute_value(3); return cast_vector<::Ifc4x3_tc1::IfcCurve>(es); } -void Ifc4x3_tc1::IfcArbitraryProfileDefWithVoids::setInnerCurves(const std::vector< ::Ifc4x3_tc1::IfcCurve >& v) { set_attribute_value(3, cast_vector(v));if constexpr (false)unset_attribute_value(3); } +std::vector< ::Ifc4x3_tc1::IfcCurve > Ifc4x3_tc1::IfcArbitraryProfileDefWithVoids::InnerCurves() const { std::vector es = get_attribute_value(3); return cast_vector<::Ifc4x3_tc1::IfcCurve>(es); } +void Ifc4x3_tc1::IfcArbitraryProfileDefWithVoids::setInnerCurves(const std::vector< ::Ifc4x3_tc1::IfcCurve >& v) { set_attribute_value(3, cast_vector(v));if constexpr (false)unset_attribute_value(3); } const ifcopenshell::entity& Ifc4x3_tc1::IfcArbitraryProfileDefWithVoids::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[56]); } -Ifc4x3_tc1::IfcArbitraryProfileDefWithVoids Ifc4x3_tc1::IfcArbitraryProfileDefWithVoids::initialize(::Ifc4x3_tc1::IfcProfileTypeEnum::Value v1_ProfileType, std::optional< std::string > v2_ProfileName, ::Ifc4x3_tc1::IfcCurve v3_OuterCurve, std::vector< ::Ifc4x3_tc1::IfcCurve > v4_InnerCurves) { set_attribute_value(0, (enumeration_reference(&::Ifc4x3_tc1::IfcProfileTypeEnum::Class(),(size_t)v1_ProfileType))); if (v2_ProfileName) {set_attribute_value(1, (*v2_ProfileName)); }set_attribute_value(2, (v3_OuterCurve));set_attribute_value(3, cast_vector(v4_InnerCurves));; return *this; } +Ifc4x3_tc1::IfcArbitraryProfileDefWithVoids Ifc4x3_tc1::IfcArbitraryProfileDefWithVoids::initialize(::Ifc4x3_tc1::IfcProfileTypeEnum::Value v1_ProfileType, std::optional< std::string > v2_ProfileName, ::Ifc4x3_tc1::IfcCurve v3_OuterCurve, std::vector< ::Ifc4x3_tc1::IfcCurve > v4_InnerCurves) { set_attribute_value(0, (enumeration_reference(&::Ifc4x3_tc1::IfcProfileTypeEnum::Class(),(size_t)v1_ProfileType))); if (v2_ProfileName) {set_attribute_value(1, (*v2_ProfileName)); }set_attribute_value(2, (v3_OuterCurve));set_attribute_value(3, cast_vector(v4_InnerCurves));; return *this; } // Function implementations for IfcAsset std::optional< std::string > Ifc4x3_tc1::IfcAsset::Identification() const { if(get_attribute_value(5).isNull()) { return std::nullopt; } std::string v = get_attribute_value(5); return v; } void Ifc4x3_tc1::IfcAsset::setIdentification(const std::optional< std::string >& v) { if (v) {set_attribute_value(5, *v);} else {unset_attribute_value(5);} } -::Ifc4x3_tc1::IfcCostValue Ifc4x3_tc1::IfcAsset::OriginalValue() const { if(get_attribute_value(6).isNull()) { return ::Ifc4x3_tc1::IfcCostValue{}; } return ((express::Base)(get_attribute_value(6))).as<::Ifc4x3_tc1::IfcCostValue>(); } +::Ifc4x3_tc1::IfcCostValue Ifc4x3_tc1::IfcAsset::OriginalValue() const { if(get_attribute_value(6).isNull()) { return ::Ifc4x3_tc1::IfcCostValue{}; } return ((express::base)(get_attribute_value(6))).as<::Ifc4x3_tc1::IfcCostValue>(); } void Ifc4x3_tc1::IfcAsset::setOriginalValue(const ::Ifc4x3_tc1::IfcCostValue& v) { set_attribute_value(6, v);if constexpr (false)unset_attribute_value(6); } -::Ifc4x3_tc1::IfcCostValue Ifc4x3_tc1::IfcAsset::CurrentValue() const { if(get_attribute_value(7).isNull()) { return ::Ifc4x3_tc1::IfcCostValue{}; } return ((express::Base)(get_attribute_value(7))).as<::Ifc4x3_tc1::IfcCostValue>(); } +::Ifc4x3_tc1::IfcCostValue Ifc4x3_tc1::IfcAsset::CurrentValue() const { if(get_attribute_value(7).isNull()) { return ::Ifc4x3_tc1::IfcCostValue{}; } return ((express::base)(get_attribute_value(7))).as<::Ifc4x3_tc1::IfcCostValue>(); } void Ifc4x3_tc1::IfcAsset::setCurrentValue(const ::Ifc4x3_tc1::IfcCostValue& v) { set_attribute_value(7, v);if constexpr (false)unset_attribute_value(7); } -::Ifc4x3_tc1::IfcCostValue Ifc4x3_tc1::IfcAsset::TotalReplacementCost() const { if(get_attribute_value(8).isNull()) { return ::Ifc4x3_tc1::IfcCostValue{}; } return ((express::Base)(get_attribute_value(8))).as<::Ifc4x3_tc1::IfcCostValue>(); } +::Ifc4x3_tc1::IfcCostValue Ifc4x3_tc1::IfcAsset::TotalReplacementCost() const { if(get_attribute_value(8).isNull()) { return ::Ifc4x3_tc1::IfcCostValue{}; } return ((express::base)(get_attribute_value(8))).as<::Ifc4x3_tc1::IfcCostValue>(); } void Ifc4x3_tc1::IfcAsset::setTotalReplacementCost(const ::Ifc4x3_tc1::IfcCostValue& v) { set_attribute_value(8, v);if constexpr (false)unset_attribute_value(8); } -::Ifc4x3_tc1::IfcActorSelect Ifc4x3_tc1::IfcAsset::Owner() const { if(get_attribute_value(9).isNull()) { return ::Ifc4x3_tc1::IfcActorSelect{}; } return ((express::Base)(get_attribute_value(9))).as<::Ifc4x3_tc1::IfcActorSelect>(); } +::Ifc4x3_tc1::IfcActorSelect Ifc4x3_tc1::IfcAsset::Owner() const { if(get_attribute_value(9).isNull()) { return ::Ifc4x3_tc1::IfcActorSelect{}; } return ((express::base)(get_attribute_value(9))).as<::Ifc4x3_tc1::IfcActorSelect>(); } void Ifc4x3_tc1::IfcAsset::setOwner(const ::Ifc4x3_tc1::IfcActorSelect& v) { set_attribute_value(9, v);if constexpr (false)unset_attribute_value(9); } -::Ifc4x3_tc1::IfcActorSelect Ifc4x3_tc1::IfcAsset::User() const { if(get_attribute_value(10).isNull()) { return ::Ifc4x3_tc1::IfcActorSelect{}; } return ((express::Base)(get_attribute_value(10))).as<::Ifc4x3_tc1::IfcActorSelect>(); } +::Ifc4x3_tc1::IfcActorSelect Ifc4x3_tc1::IfcAsset::User() const { if(get_attribute_value(10).isNull()) { return ::Ifc4x3_tc1::IfcActorSelect{}; } return ((express::base)(get_attribute_value(10))).as<::Ifc4x3_tc1::IfcActorSelect>(); } void Ifc4x3_tc1::IfcAsset::setUser(const ::Ifc4x3_tc1::IfcActorSelect& v) { set_attribute_value(10, v);if constexpr (false)unset_attribute_value(10); } -::Ifc4x3_tc1::IfcPerson Ifc4x3_tc1::IfcAsset::ResponsiblePerson() const { if(get_attribute_value(11).isNull()) { return ::Ifc4x3_tc1::IfcPerson{}; } return ((express::Base)(get_attribute_value(11))).as<::Ifc4x3_tc1::IfcPerson>(); } +::Ifc4x3_tc1::IfcPerson Ifc4x3_tc1::IfcAsset::ResponsiblePerson() const { if(get_attribute_value(11).isNull()) { return ::Ifc4x3_tc1::IfcPerson{}; } return ((express::base)(get_attribute_value(11))).as<::Ifc4x3_tc1::IfcPerson>(); } void Ifc4x3_tc1::IfcAsset::setResponsiblePerson(const ::Ifc4x3_tc1::IfcPerson& v) { set_attribute_value(11, v);if constexpr (false)unset_attribute_value(11); } std::optional< std::string > Ifc4x3_tc1::IfcAsset::IncorporationDate() const { if(get_attribute_value(12).isNull()) { return std::nullopt; } std::string v = get_attribute_value(12); return v; } void Ifc4x3_tc1::IfcAsset::setIncorporationDate(const std::optional< std::string >& v) { if (v) {set_attribute_value(12, *v);} else {unset_attribute_value(12);} } -::Ifc4x3_tc1::IfcCostValue Ifc4x3_tc1::IfcAsset::DepreciatedValue() const { if(get_attribute_value(13).isNull()) { return ::Ifc4x3_tc1::IfcCostValue{}; } return ((express::Base)(get_attribute_value(13))).as<::Ifc4x3_tc1::IfcCostValue>(); } +::Ifc4x3_tc1::IfcCostValue Ifc4x3_tc1::IfcAsset::DepreciatedValue() const { if(get_attribute_value(13).isNull()) { return ::Ifc4x3_tc1::IfcCostValue{}; } return ((express::base)(get_attribute_value(13))).as<::Ifc4x3_tc1::IfcCostValue>(); } void Ifc4x3_tc1::IfcAsset::setDepreciatedValue(const ::Ifc4x3_tc1::IfcCostValue& v) { set_attribute_value(13, v);if constexpr (false)unset_attribute_value(13); } @@ -8310,10 +8310,10 @@ void Ifc4x3_tc1::IfcAudioVisualApplianceType::setPredefinedType(const ::Ifc4x3_t const ifcopenshell::entity& Ifc4x3_tc1::IfcAudioVisualApplianceType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[65]); } -Ifc4x3_tc1::IfcAudioVisualApplianceType Ifc4x3_tc1::IfcAudioVisualApplianceType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcAudioVisualApplianceTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcAudioVisualApplianceTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_tc1::IfcAudioVisualApplianceType Ifc4x3_tc1::IfcAudioVisualApplianceType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcAudioVisualApplianceTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcAudioVisualApplianceTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcAxis1Placement -::Ifc4x3_tc1::IfcDirection Ifc4x3_tc1::IfcAxis1Placement::Axis() const { if(get_attribute_value(1).isNull()) { return ::Ifc4x3_tc1::IfcDirection{}; } return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3_tc1::IfcDirection>(); } +::Ifc4x3_tc1::IfcDirection Ifc4x3_tc1::IfcAxis1Placement::Axis() const { if(get_attribute_value(1).isNull()) { return ::Ifc4x3_tc1::IfcDirection{}; } return ((express::base)(get_attribute_value(1))).as<::Ifc4x3_tc1::IfcDirection>(); } void Ifc4x3_tc1::IfcAxis1Placement::setAxis(const ::Ifc4x3_tc1::IfcDirection& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } @@ -8321,7 +8321,7 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcAxis1Placement::Class() { return *((i Ifc4x3_tc1::IfcAxis1Placement Ifc4x3_tc1::IfcAxis1Placement::initialize(::Ifc4x3_tc1::IfcPoint v1_Location, ::Ifc4x3_tc1::IfcDirection v2_Axis) { set_attribute_value(0, (v1_Location));set_attribute_value(1, (v2_Axis));; return *this; } // Function implementations for IfcAxis2Placement2D -::Ifc4x3_tc1::IfcDirection Ifc4x3_tc1::IfcAxis2Placement2D::RefDirection() const { if(get_attribute_value(1).isNull()) { return ::Ifc4x3_tc1::IfcDirection{}; } return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3_tc1::IfcDirection>(); } +::Ifc4x3_tc1::IfcDirection Ifc4x3_tc1::IfcAxis2Placement2D::RefDirection() const { if(get_attribute_value(1).isNull()) { return ::Ifc4x3_tc1::IfcDirection{}; } return ((express::base)(get_attribute_value(1))).as<::Ifc4x3_tc1::IfcDirection>(); } void Ifc4x3_tc1::IfcAxis2Placement2D::setRefDirection(const ::Ifc4x3_tc1::IfcDirection& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } @@ -8329,9 +8329,9 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcAxis2Placement2D::Class() { return *( Ifc4x3_tc1::IfcAxis2Placement2D Ifc4x3_tc1::IfcAxis2Placement2D::initialize(::Ifc4x3_tc1::IfcPoint v1_Location, ::Ifc4x3_tc1::IfcDirection v2_RefDirection) { set_attribute_value(0, (v1_Location));set_attribute_value(1, (v2_RefDirection));; return *this; } // Function implementations for IfcAxis2Placement3D -::Ifc4x3_tc1::IfcDirection Ifc4x3_tc1::IfcAxis2Placement3D::Axis() const { if(get_attribute_value(1).isNull()) { return ::Ifc4x3_tc1::IfcDirection{}; } return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3_tc1::IfcDirection>(); } +::Ifc4x3_tc1::IfcDirection Ifc4x3_tc1::IfcAxis2Placement3D::Axis() const { if(get_attribute_value(1).isNull()) { return ::Ifc4x3_tc1::IfcDirection{}; } return ((express::base)(get_attribute_value(1))).as<::Ifc4x3_tc1::IfcDirection>(); } void Ifc4x3_tc1::IfcAxis2Placement3D::setAxis(const ::Ifc4x3_tc1::IfcDirection& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } -::Ifc4x3_tc1::IfcDirection Ifc4x3_tc1::IfcAxis2Placement3D::RefDirection() const { if(get_attribute_value(2).isNull()) { return ::Ifc4x3_tc1::IfcDirection{}; } return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3_tc1::IfcDirection>(); } +::Ifc4x3_tc1::IfcDirection Ifc4x3_tc1::IfcAxis2Placement3D::RefDirection() const { if(get_attribute_value(2).isNull()) { return ::Ifc4x3_tc1::IfcDirection{}; } return ((express::base)(get_attribute_value(2))).as<::Ifc4x3_tc1::IfcDirection>(); } void Ifc4x3_tc1::IfcAxis2Placement3D::setRefDirection(const ::Ifc4x3_tc1::IfcDirection& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } @@ -8339,9 +8339,9 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcAxis2Placement3D::Class() { return *( Ifc4x3_tc1::IfcAxis2Placement3D Ifc4x3_tc1::IfcAxis2Placement3D::initialize(::Ifc4x3_tc1::IfcPoint v1_Location, ::Ifc4x3_tc1::IfcDirection v2_Axis, ::Ifc4x3_tc1::IfcDirection v3_RefDirection) { set_attribute_value(0, (v1_Location));set_attribute_value(1, (v2_Axis));set_attribute_value(2, (v3_RefDirection));; return *this; } // Function implementations for IfcAxis2PlacementLinear -::Ifc4x3_tc1::IfcDirection Ifc4x3_tc1::IfcAxis2PlacementLinear::Axis() const { if(get_attribute_value(1).isNull()) { return ::Ifc4x3_tc1::IfcDirection{}; } return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3_tc1::IfcDirection>(); } +::Ifc4x3_tc1::IfcDirection Ifc4x3_tc1::IfcAxis2PlacementLinear::Axis() const { if(get_attribute_value(1).isNull()) { return ::Ifc4x3_tc1::IfcDirection{}; } return ((express::base)(get_attribute_value(1))).as<::Ifc4x3_tc1::IfcDirection>(); } void Ifc4x3_tc1::IfcAxis2PlacementLinear::setAxis(const ::Ifc4x3_tc1::IfcDirection& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } -::Ifc4x3_tc1::IfcDirection Ifc4x3_tc1::IfcAxis2PlacementLinear::RefDirection() const { if(get_attribute_value(2).isNull()) { return ::Ifc4x3_tc1::IfcDirection{}; } return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3_tc1::IfcDirection>(); } +::Ifc4x3_tc1::IfcDirection Ifc4x3_tc1::IfcAxis2PlacementLinear::RefDirection() const { if(get_attribute_value(2).isNull()) { return ::Ifc4x3_tc1::IfcDirection{}; } return ((express::base)(get_attribute_value(2))).as<::Ifc4x3_tc1::IfcDirection>(); } void Ifc4x3_tc1::IfcAxis2PlacementLinear::setRefDirection(const ::Ifc4x3_tc1::IfcDirection& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } @@ -8351,8 +8351,8 @@ Ifc4x3_tc1::IfcAxis2PlacementLinear Ifc4x3_tc1::IfcAxis2PlacementLinear::initial // Function implementations for IfcBSplineCurve int64_t Ifc4x3_tc1::IfcBSplineCurve::Degree() const { int64_t v = get_attribute_value(0); return v; } void Ifc4x3_tc1::IfcBSplineCurve::setDegree(const int64_t& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } -std::vector< ::Ifc4x3_tc1::IfcCartesianPoint > Ifc4x3_tc1::IfcBSplineCurve::ControlPointsList() const { std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3_tc1::IfcCartesianPoint>(es); } -void Ifc4x3_tc1::IfcBSplineCurve::setControlPointsList(const std::vector< ::Ifc4x3_tc1::IfcCartesianPoint >& v) { set_attribute_value(1, cast_vector(v));if constexpr (false)unset_attribute_value(1); } +std::vector< ::Ifc4x3_tc1::IfcCartesianPoint > Ifc4x3_tc1::IfcBSplineCurve::ControlPointsList() const { std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3_tc1::IfcCartesianPoint>(es); } +void Ifc4x3_tc1::IfcBSplineCurve::setControlPointsList(const std::vector< ::Ifc4x3_tc1::IfcCartesianPoint >& v) { set_attribute_value(1, cast_vector(v));if constexpr (false)unset_attribute_value(1); } ::Ifc4x3_tc1::IfcBSplineCurveForm::Value Ifc4x3_tc1::IfcBSplineCurve::CurveForm() const { return ::Ifc4x3_tc1::IfcBSplineCurveForm::FromString(get_attribute_value(2)); } void Ifc4x3_tc1::IfcBSplineCurve::setCurveForm(const ::Ifc4x3_tc1::IfcBSplineCurveForm::Value& v) { set_attribute_value(2, enumeration_reference(&::Ifc4x3_tc1::IfcBSplineCurveForm::Class(), (size_t) v));if constexpr (false)unset_attribute_value(2); } boost::logic::tribool Ifc4x3_tc1::IfcBSplineCurve::ClosedCurve() const { boost::logic::tribool v = get_attribute_value(3); return v; } @@ -8362,7 +8362,7 @@ void Ifc4x3_tc1::IfcBSplineCurve::setSelfIntersect(const boost::logic::tribool& const ifcopenshell::entity& Ifc4x3_tc1::IfcBSplineCurve::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[107]); } -Ifc4x3_tc1::IfcBSplineCurve Ifc4x3_tc1::IfcBSplineCurve::initialize(int64_t v1_Degree, std::vector< ::Ifc4x3_tc1::IfcCartesianPoint > v2_ControlPointsList, ::Ifc4x3_tc1::IfcBSplineCurveForm::Value v3_CurveForm, boost::logic::tribool v4_ClosedCurve, boost::logic::tribool v5_SelfIntersect) { set_attribute_value(0, (v1_Degree));set_attribute_value(1, cast_vector(v2_ControlPointsList));set_attribute_value(2, (enumeration_reference(&::Ifc4x3_tc1::IfcBSplineCurveForm::Class(),(size_t)v3_CurveForm)));set_attribute_value(3, (v4_ClosedCurve));set_attribute_value(4, (v5_SelfIntersect));; return *this; } +Ifc4x3_tc1::IfcBSplineCurve Ifc4x3_tc1::IfcBSplineCurve::initialize(int64_t v1_Degree, std::vector< ::Ifc4x3_tc1::IfcCartesianPoint > v2_ControlPointsList, ::Ifc4x3_tc1::IfcBSplineCurveForm::Value v3_CurveForm, boost::logic::tribool v4_ClosedCurve, boost::logic::tribool v5_SelfIntersect) { set_attribute_value(0, (v1_Degree));set_attribute_value(1, cast_vector(v2_ControlPointsList));set_attribute_value(2, (enumeration_reference(&::Ifc4x3_tc1::IfcBSplineCurveForm::Class(),(size_t)v3_CurveForm)));set_attribute_value(3, (v4_ClosedCurve));set_attribute_value(4, (v5_SelfIntersect));; return *this; } // Function implementations for IfcBSplineCurveWithKnots std::vector< int64_t > /*[2:?]*/ Ifc4x3_tc1::IfcBSplineCurveWithKnots::KnotMultiplicities() const { std::vector< int64_t > /*[2:?]*/ v = get_attribute_value(5); return v; } @@ -8374,15 +8374,15 @@ void Ifc4x3_tc1::IfcBSplineCurveWithKnots::setKnotSpec(const ::Ifc4x3_tc1::IfcKn const ifcopenshell::entity& Ifc4x3_tc1::IfcBSplineCurveWithKnots::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[109]); } -Ifc4x3_tc1::IfcBSplineCurveWithKnots Ifc4x3_tc1::IfcBSplineCurveWithKnots::initialize(int64_t v1_Degree, std::vector< ::Ifc4x3_tc1::IfcCartesianPoint > v2_ControlPointsList, ::Ifc4x3_tc1::IfcBSplineCurveForm::Value v3_CurveForm, boost::logic::tribool v4_ClosedCurve, boost::logic::tribool v5_SelfIntersect, std::vector< int64_t > /*[2:?]*/ v6_KnotMultiplicities, std::vector< double > /*[2:?]*/ v7_Knots, ::Ifc4x3_tc1::IfcKnotType::Value v8_KnotSpec) { set_attribute_value(0, (v1_Degree));set_attribute_value(1, cast_vector(v2_ControlPointsList));set_attribute_value(2, (enumeration_reference(&::Ifc4x3_tc1::IfcBSplineCurveForm::Class(),(size_t)v3_CurveForm)));set_attribute_value(3, (v4_ClosedCurve));set_attribute_value(4, (v5_SelfIntersect));set_attribute_value(5, (v6_KnotMultiplicities));set_attribute_value(6, (v7_Knots));set_attribute_value(7, (enumeration_reference(&::Ifc4x3_tc1::IfcKnotType::Class(),(size_t)v8_KnotSpec)));; return *this; } +Ifc4x3_tc1::IfcBSplineCurveWithKnots Ifc4x3_tc1::IfcBSplineCurveWithKnots::initialize(int64_t v1_Degree, std::vector< ::Ifc4x3_tc1::IfcCartesianPoint > v2_ControlPointsList, ::Ifc4x3_tc1::IfcBSplineCurveForm::Value v3_CurveForm, boost::logic::tribool v4_ClosedCurve, boost::logic::tribool v5_SelfIntersect, std::vector< int64_t > /*[2:?]*/ v6_KnotMultiplicities, std::vector< double > /*[2:?]*/ v7_Knots, ::Ifc4x3_tc1::IfcKnotType::Value v8_KnotSpec) { set_attribute_value(0, (v1_Degree));set_attribute_value(1, cast_vector(v2_ControlPointsList));set_attribute_value(2, (enumeration_reference(&::Ifc4x3_tc1::IfcBSplineCurveForm::Class(),(size_t)v3_CurveForm)));set_attribute_value(3, (v4_ClosedCurve));set_attribute_value(4, (v5_SelfIntersect));set_attribute_value(5, (v6_KnotMultiplicities));set_attribute_value(6, (v7_Knots));set_attribute_value(7, (enumeration_reference(&::Ifc4x3_tc1::IfcKnotType::Class(),(size_t)v8_KnotSpec)));; return *this; } // Function implementations for IfcBSplineSurface int64_t Ifc4x3_tc1::IfcBSplineSurface::UDegree() const { int64_t v = get_attribute_value(0); return v; } void Ifc4x3_tc1::IfcBSplineSurface::setUDegree(const int64_t& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } int64_t Ifc4x3_tc1::IfcBSplineSurface::VDegree() const { int64_t v = get_attribute_value(1); return v; } void Ifc4x3_tc1::IfcBSplineSurface::setVDegree(const int64_t& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } -std::vector< std::vector< ::Ifc4x3_tc1::IfcCartesianPoint > > Ifc4x3_tc1::IfcBSplineSurface::ControlPointsList() const { std::vector> es = get_attribute_value(2); return cast_vector<::Ifc4x3_tc1::IfcCartesianPoint>(es); } -void Ifc4x3_tc1::IfcBSplineSurface::setControlPointsList(const std::vector< std::vector< ::Ifc4x3_tc1::IfcCartesianPoint > >& v) { set_attribute_value(2, cast_vector(v));if constexpr (false)unset_attribute_value(2); } +std::vector< std::vector< ::Ifc4x3_tc1::IfcCartesianPoint > > Ifc4x3_tc1::IfcBSplineSurface::ControlPointsList() const { std::vector> es = get_attribute_value(2); return cast_vector<::Ifc4x3_tc1::IfcCartesianPoint>(es); } +void Ifc4x3_tc1::IfcBSplineSurface::setControlPointsList(const std::vector< std::vector< ::Ifc4x3_tc1::IfcCartesianPoint > >& v) { set_attribute_value(2, cast_vector(v));if constexpr (false)unset_attribute_value(2); } ::Ifc4x3_tc1::IfcBSplineSurfaceForm::Value Ifc4x3_tc1::IfcBSplineSurface::SurfaceForm() const { return ::Ifc4x3_tc1::IfcBSplineSurfaceForm::FromString(get_attribute_value(3)); } void Ifc4x3_tc1::IfcBSplineSurface::setSurfaceForm(const ::Ifc4x3_tc1::IfcBSplineSurfaceForm::Value& v) { set_attribute_value(3, enumeration_reference(&::Ifc4x3_tc1::IfcBSplineSurfaceForm::Class(), (size_t) v));if constexpr (false)unset_attribute_value(3); } boost::logic::tribool Ifc4x3_tc1::IfcBSplineSurface::UClosed() const { boost::logic::tribool v = get_attribute_value(4); return v; } @@ -8394,7 +8394,7 @@ void Ifc4x3_tc1::IfcBSplineSurface::setSelfIntersect(const boost::logic::tribool const ifcopenshell::entity& Ifc4x3_tc1::IfcBSplineSurface::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[110]); } -Ifc4x3_tc1::IfcBSplineSurface Ifc4x3_tc1::IfcBSplineSurface::initialize(int64_t v1_UDegree, int64_t v2_VDegree, std::vector< std::vector< ::Ifc4x3_tc1::IfcCartesianPoint > > v3_ControlPointsList, ::Ifc4x3_tc1::IfcBSplineSurfaceForm::Value v4_SurfaceForm, boost::logic::tribool v5_UClosed, boost::logic::tribool v6_VClosed, boost::logic::tribool v7_SelfIntersect) { set_attribute_value(0, (v1_UDegree));set_attribute_value(1, (v2_VDegree));set_attribute_value(2, cast_vector(v3_ControlPointsList));set_attribute_value(3, (enumeration_reference(&::Ifc4x3_tc1::IfcBSplineSurfaceForm::Class(),(size_t)v4_SurfaceForm)));set_attribute_value(4, (v5_UClosed));set_attribute_value(5, (v6_VClosed));set_attribute_value(6, (v7_SelfIntersect));; return *this; } +Ifc4x3_tc1::IfcBSplineSurface Ifc4x3_tc1::IfcBSplineSurface::initialize(int64_t v1_UDegree, int64_t v2_VDegree, std::vector< std::vector< ::Ifc4x3_tc1::IfcCartesianPoint > > v3_ControlPointsList, ::Ifc4x3_tc1::IfcBSplineSurfaceForm::Value v4_SurfaceForm, boost::logic::tribool v5_UClosed, boost::logic::tribool v6_VClosed, boost::logic::tribool v7_SelfIntersect) { set_attribute_value(0, (v1_UDegree));set_attribute_value(1, (v2_VDegree));set_attribute_value(2, cast_vector(v3_ControlPointsList));set_attribute_value(3, (enumeration_reference(&::Ifc4x3_tc1::IfcBSplineSurfaceForm::Class(),(size_t)v4_SurfaceForm)));set_attribute_value(4, (v5_UClosed));set_attribute_value(5, (v6_VClosed));set_attribute_value(6, (v7_SelfIntersect));; return *this; } // Function implementations for IfcBSplineSurfaceWithKnots std::vector< int64_t > /*[2:?]*/ Ifc4x3_tc1::IfcBSplineSurfaceWithKnots::UMultiplicities() const { std::vector< int64_t > /*[2:?]*/ v = get_attribute_value(7); return v; } @@ -8410,7 +8410,7 @@ void Ifc4x3_tc1::IfcBSplineSurfaceWithKnots::setKnotSpec(const ::Ifc4x3_tc1::Ifc const ifcopenshell::entity& Ifc4x3_tc1::IfcBSplineSurfaceWithKnots::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[112]); } -Ifc4x3_tc1::IfcBSplineSurfaceWithKnots Ifc4x3_tc1::IfcBSplineSurfaceWithKnots::initialize(int64_t v1_UDegree, int64_t v2_VDegree, std::vector< std::vector< ::Ifc4x3_tc1::IfcCartesianPoint > > v3_ControlPointsList, ::Ifc4x3_tc1::IfcBSplineSurfaceForm::Value v4_SurfaceForm, boost::logic::tribool v5_UClosed, boost::logic::tribool v6_VClosed, boost::logic::tribool v7_SelfIntersect, std::vector< int64_t > /*[2:?]*/ v8_UMultiplicities, std::vector< int64_t > /*[2:?]*/ v9_VMultiplicities, std::vector< double > /*[2:?]*/ v10_UKnots, std::vector< double > /*[2:?]*/ v11_VKnots, ::Ifc4x3_tc1::IfcKnotType::Value v12_KnotSpec) { set_attribute_value(0, (v1_UDegree));set_attribute_value(1, (v2_VDegree));set_attribute_value(2, cast_vector(v3_ControlPointsList));set_attribute_value(3, (enumeration_reference(&::Ifc4x3_tc1::IfcBSplineSurfaceForm::Class(),(size_t)v4_SurfaceForm)));set_attribute_value(4, (v5_UClosed));set_attribute_value(5, (v6_VClosed));set_attribute_value(6, (v7_SelfIntersect));set_attribute_value(7, (v8_UMultiplicities));set_attribute_value(8, (v9_VMultiplicities));set_attribute_value(9, (v10_UKnots));set_attribute_value(10, (v11_VKnots));set_attribute_value(11, (enumeration_reference(&::Ifc4x3_tc1::IfcKnotType::Class(),(size_t)v12_KnotSpec)));; return *this; } +Ifc4x3_tc1::IfcBSplineSurfaceWithKnots Ifc4x3_tc1::IfcBSplineSurfaceWithKnots::initialize(int64_t v1_UDegree, int64_t v2_VDegree, std::vector< std::vector< ::Ifc4x3_tc1::IfcCartesianPoint > > v3_ControlPointsList, ::Ifc4x3_tc1::IfcBSplineSurfaceForm::Value v4_SurfaceForm, boost::logic::tribool v5_UClosed, boost::logic::tribool v6_VClosed, boost::logic::tribool v7_SelfIntersect, std::vector< int64_t > /*[2:?]*/ v8_UMultiplicities, std::vector< int64_t > /*[2:?]*/ v9_VMultiplicities, std::vector< double > /*[2:?]*/ v10_UKnots, std::vector< double > /*[2:?]*/ v11_VKnots, ::Ifc4x3_tc1::IfcKnotType::Value v12_KnotSpec) { set_attribute_value(0, (v1_UDegree));set_attribute_value(1, (v2_VDegree));set_attribute_value(2, cast_vector(v3_ControlPointsList));set_attribute_value(3, (enumeration_reference(&::Ifc4x3_tc1::IfcBSplineSurfaceForm::Class(),(size_t)v4_SurfaceForm)));set_attribute_value(4, (v5_UClosed));set_attribute_value(5, (v6_VClosed));set_attribute_value(6, (v7_SelfIntersect));set_attribute_value(7, (v8_UMultiplicities));set_attribute_value(8, (v9_VMultiplicities));set_attribute_value(9, (v10_UKnots));set_attribute_value(10, (v11_VKnots));set_attribute_value(11, (enumeration_reference(&::Ifc4x3_tc1::IfcKnotType::Class(),(size_t)v12_KnotSpec)));; return *this; } // Function implementations for IfcBeam std::optional< ::Ifc4x3_tc1::IfcBeamTypeEnum::Value > Ifc4x3_tc1::IfcBeam::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_tc1::IfcBeamTypeEnum::FromString(get_attribute_value(8)); } @@ -8426,7 +8426,7 @@ void Ifc4x3_tc1::IfcBeamType::setPredefinedType(const ::Ifc4x3_tc1::IfcBeamTypeE const ifcopenshell::entity& Ifc4x3_tc1::IfcBeamType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[73]); } -Ifc4x3_tc1::IfcBeamType Ifc4x3_tc1::IfcBeamType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcBeamTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcBeamTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_tc1::IfcBeamType Ifc4x3_tc1::IfcBeamType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcBeamTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcBeamTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcBearing std::optional< ::Ifc4x3_tc1::IfcBearingTypeEnum::Value > Ifc4x3_tc1::IfcBearing::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_tc1::IfcBearingTypeEnum::FromString(get_attribute_value(8)); } @@ -8442,7 +8442,7 @@ void Ifc4x3_tc1::IfcBearingType::setPredefinedType(const ::Ifc4x3_tc1::IfcBearin const ifcopenshell::entity& Ifc4x3_tc1::IfcBearingType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[76]); } -Ifc4x3_tc1::IfcBearingType Ifc4x3_tc1::IfcBearingType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcBearingTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcBearingTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_tc1::IfcBearingType Ifc4x3_tc1::IfcBearingType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcBearingTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcBearingTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcBlobTexture std::string Ifc4x3_tc1::IfcBlobTexture::RasterFormat() const { std::string v = get_attribute_value(5); return v; } @@ -8480,7 +8480,7 @@ void Ifc4x3_tc1::IfcBoilerType::setPredefinedType(const ::Ifc4x3_tc1::IfcBoilerT const ifcopenshell::entity& Ifc4x3_tc1::IfcBoilerType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[84]); } -Ifc4x3_tc1::IfcBoilerType Ifc4x3_tc1::IfcBoilerType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcBoilerTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcBoilerTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_tc1::IfcBoilerType Ifc4x3_tc1::IfcBoilerType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcBoilerTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcBoilerTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcBooleanClippingResult @@ -8491,9 +8491,9 @@ Ifc4x3_tc1::IfcBooleanClippingResult Ifc4x3_tc1::IfcBooleanClippingResult::initi // Function implementations for IfcBooleanResult ::Ifc4x3_tc1::IfcBooleanOperator::Value Ifc4x3_tc1::IfcBooleanResult::Operator() const { return ::Ifc4x3_tc1::IfcBooleanOperator::FromString(get_attribute_value(0)); } void Ifc4x3_tc1::IfcBooleanResult::setOperator(const ::Ifc4x3_tc1::IfcBooleanOperator::Value& v) { set_attribute_value(0, enumeration_reference(&::Ifc4x3_tc1::IfcBooleanOperator::Class(), (size_t) v));if constexpr (false)unset_attribute_value(0); } -::Ifc4x3_tc1::IfcBooleanOperand Ifc4x3_tc1::IfcBooleanResult::FirstOperand() const { return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3_tc1::IfcBooleanOperand>(); } +::Ifc4x3_tc1::IfcBooleanOperand Ifc4x3_tc1::IfcBooleanResult::FirstOperand() const { return ((express::base)(get_attribute_value(1))).as<::Ifc4x3_tc1::IfcBooleanOperand>(); } void Ifc4x3_tc1::IfcBooleanResult::setFirstOperand(const ::Ifc4x3_tc1::IfcBooleanOperand& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } -::Ifc4x3_tc1::IfcBooleanOperand Ifc4x3_tc1::IfcBooleanResult::SecondOperand() const { return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3_tc1::IfcBooleanOperand>(); } +::Ifc4x3_tc1::IfcBooleanOperand Ifc4x3_tc1::IfcBooleanResult::SecondOperand() const { return ((express::base)(get_attribute_value(2))).as<::Ifc4x3_tc1::IfcBooleanOperand>(); } void Ifc4x3_tc1::IfcBooleanResult::setSecondOperand(const ::Ifc4x3_tc1::IfcBooleanOperand& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } @@ -8518,20 +8518,20 @@ Ifc4x3_tc1::IfcBoundaryCondition Ifc4x3_tc1::IfcBoundaryCondition::initialize(st const ifcopenshell::entity& Ifc4x3_tc1::IfcBoundaryCurve::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[93]); } -Ifc4x3_tc1::IfcBoundaryCurve Ifc4x3_tc1::IfcBoundaryCurve::initialize(std::vector< ::Ifc4x3_tc1::IfcSegment > v1_Segments, boost::logic::tribool v2_SelfIntersect) { set_attribute_value(0, cast_vector(v1_Segments));set_attribute_value(1, (v2_SelfIntersect));; return *this; } +Ifc4x3_tc1::IfcBoundaryCurve Ifc4x3_tc1::IfcBoundaryCurve::initialize(std::vector< ::Ifc4x3_tc1::IfcSegment > v1_Segments, boost::logic::tribool v2_SelfIntersect) { set_attribute_value(0, cast_vector(v1_Segments));set_attribute_value(1, (v2_SelfIntersect));; return *this; } // Function implementations for IfcBoundaryEdgeCondition -::Ifc4x3_tc1::IfcModulusOfTranslationalSubgradeReactionSelect Ifc4x3_tc1::IfcBoundaryEdgeCondition::TranslationalStiffnessByLengthX() const { if(get_attribute_value(1).isNull()) { return ::Ifc4x3_tc1::IfcModulusOfTranslationalSubgradeReactionSelect{}; } return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3_tc1::IfcModulusOfTranslationalSubgradeReactionSelect>(); } +::Ifc4x3_tc1::IfcModulusOfTranslationalSubgradeReactionSelect Ifc4x3_tc1::IfcBoundaryEdgeCondition::TranslationalStiffnessByLengthX() const { if(get_attribute_value(1).isNull()) { return ::Ifc4x3_tc1::IfcModulusOfTranslationalSubgradeReactionSelect{}; } return ((express::base)(get_attribute_value(1))).as<::Ifc4x3_tc1::IfcModulusOfTranslationalSubgradeReactionSelect>(); } void Ifc4x3_tc1::IfcBoundaryEdgeCondition::setTranslationalStiffnessByLengthX(const ::Ifc4x3_tc1::IfcModulusOfTranslationalSubgradeReactionSelect& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } -::Ifc4x3_tc1::IfcModulusOfTranslationalSubgradeReactionSelect Ifc4x3_tc1::IfcBoundaryEdgeCondition::TranslationalStiffnessByLengthY() const { if(get_attribute_value(2).isNull()) { return ::Ifc4x3_tc1::IfcModulusOfTranslationalSubgradeReactionSelect{}; } return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3_tc1::IfcModulusOfTranslationalSubgradeReactionSelect>(); } +::Ifc4x3_tc1::IfcModulusOfTranslationalSubgradeReactionSelect Ifc4x3_tc1::IfcBoundaryEdgeCondition::TranslationalStiffnessByLengthY() const { if(get_attribute_value(2).isNull()) { return ::Ifc4x3_tc1::IfcModulusOfTranslationalSubgradeReactionSelect{}; } return ((express::base)(get_attribute_value(2))).as<::Ifc4x3_tc1::IfcModulusOfTranslationalSubgradeReactionSelect>(); } void Ifc4x3_tc1::IfcBoundaryEdgeCondition::setTranslationalStiffnessByLengthY(const ::Ifc4x3_tc1::IfcModulusOfTranslationalSubgradeReactionSelect& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } -::Ifc4x3_tc1::IfcModulusOfTranslationalSubgradeReactionSelect Ifc4x3_tc1::IfcBoundaryEdgeCondition::TranslationalStiffnessByLengthZ() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3_tc1::IfcModulusOfTranslationalSubgradeReactionSelect{}; } return ((express::Base)(get_attribute_value(3))).as<::Ifc4x3_tc1::IfcModulusOfTranslationalSubgradeReactionSelect>(); } +::Ifc4x3_tc1::IfcModulusOfTranslationalSubgradeReactionSelect Ifc4x3_tc1::IfcBoundaryEdgeCondition::TranslationalStiffnessByLengthZ() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3_tc1::IfcModulusOfTranslationalSubgradeReactionSelect{}; } return ((express::base)(get_attribute_value(3))).as<::Ifc4x3_tc1::IfcModulusOfTranslationalSubgradeReactionSelect>(); } void Ifc4x3_tc1::IfcBoundaryEdgeCondition::setTranslationalStiffnessByLengthZ(const ::Ifc4x3_tc1::IfcModulusOfTranslationalSubgradeReactionSelect& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } -::Ifc4x3_tc1::IfcModulusOfRotationalSubgradeReactionSelect Ifc4x3_tc1::IfcBoundaryEdgeCondition::RotationalStiffnessByLengthX() const { if(get_attribute_value(4).isNull()) { return ::Ifc4x3_tc1::IfcModulusOfRotationalSubgradeReactionSelect{}; } return ((express::Base)(get_attribute_value(4))).as<::Ifc4x3_tc1::IfcModulusOfRotationalSubgradeReactionSelect>(); } +::Ifc4x3_tc1::IfcModulusOfRotationalSubgradeReactionSelect Ifc4x3_tc1::IfcBoundaryEdgeCondition::RotationalStiffnessByLengthX() const { if(get_attribute_value(4).isNull()) { return ::Ifc4x3_tc1::IfcModulusOfRotationalSubgradeReactionSelect{}; } return ((express::base)(get_attribute_value(4))).as<::Ifc4x3_tc1::IfcModulusOfRotationalSubgradeReactionSelect>(); } void Ifc4x3_tc1::IfcBoundaryEdgeCondition::setRotationalStiffnessByLengthX(const ::Ifc4x3_tc1::IfcModulusOfRotationalSubgradeReactionSelect& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } -::Ifc4x3_tc1::IfcModulusOfRotationalSubgradeReactionSelect Ifc4x3_tc1::IfcBoundaryEdgeCondition::RotationalStiffnessByLengthY() const { if(get_attribute_value(5).isNull()) { return ::Ifc4x3_tc1::IfcModulusOfRotationalSubgradeReactionSelect{}; } return ((express::Base)(get_attribute_value(5))).as<::Ifc4x3_tc1::IfcModulusOfRotationalSubgradeReactionSelect>(); } +::Ifc4x3_tc1::IfcModulusOfRotationalSubgradeReactionSelect Ifc4x3_tc1::IfcBoundaryEdgeCondition::RotationalStiffnessByLengthY() const { if(get_attribute_value(5).isNull()) { return ::Ifc4x3_tc1::IfcModulusOfRotationalSubgradeReactionSelect{}; } return ((express::base)(get_attribute_value(5))).as<::Ifc4x3_tc1::IfcModulusOfRotationalSubgradeReactionSelect>(); } void Ifc4x3_tc1::IfcBoundaryEdgeCondition::setRotationalStiffnessByLengthY(const ::Ifc4x3_tc1::IfcModulusOfRotationalSubgradeReactionSelect& v) { set_attribute_value(5, v);if constexpr (false)unset_attribute_value(5); } -::Ifc4x3_tc1::IfcModulusOfRotationalSubgradeReactionSelect Ifc4x3_tc1::IfcBoundaryEdgeCondition::RotationalStiffnessByLengthZ() const { if(get_attribute_value(6).isNull()) { return ::Ifc4x3_tc1::IfcModulusOfRotationalSubgradeReactionSelect{}; } return ((express::Base)(get_attribute_value(6))).as<::Ifc4x3_tc1::IfcModulusOfRotationalSubgradeReactionSelect>(); } +::Ifc4x3_tc1::IfcModulusOfRotationalSubgradeReactionSelect Ifc4x3_tc1::IfcBoundaryEdgeCondition::RotationalStiffnessByLengthZ() const { if(get_attribute_value(6).isNull()) { return ::Ifc4x3_tc1::IfcModulusOfRotationalSubgradeReactionSelect{}; } return ((express::base)(get_attribute_value(6))).as<::Ifc4x3_tc1::IfcModulusOfRotationalSubgradeReactionSelect>(); } void Ifc4x3_tc1::IfcBoundaryEdgeCondition::setRotationalStiffnessByLengthZ(const ::Ifc4x3_tc1::IfcModulusOfRotationalSubgradeReactionSelect& v) { set_attribute_value(6, v);if constexpr (false)unset_attribute_value(6); } @@ -8539,11 +8539,11 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcBoundaryEdgeCondition::Class() { retu Ifc4x3_tc1::IfcBoundaryEdgeCondition Ifc4x3_tc1::IfcBoundaryEdgeCondition::initialize(std::optional< std::string > v1_Name, ::Ifc4x3_tc1::IfcModulusOfTranslationalSubgradeReactionSelect v2_TranslationalStiffnessByLengthX, ::Ifc4x3_tc1::IfcModulusOfTranslationalSubgradeReactionSelect v3_TranslationalStiffnessByLengthY, ::Ifc4x3_tc1::IfcModulusOfTranslationalSubgradeReactionSelect v4_TranslationalStiffnessByLengthZ, ::Ifc4x3_tc1::IfcModulusOfRotationalSubgradeReactionSelect v5_RotationalStiffnessByLengthX, ::Ifc4x3_tc1::IfcModulusOfRotationalSubgradeReactionSelect v6_RotationalStiffnessByLengthY, ::Ifc4x3_tc1::IfcModulusOfRotationalSubgradeReactionSelect v7_RotationalStiffnessByLengthZ) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); }set_attribute_value(1, (v2_TranslationalStiffnessByLengthX));set_attribute_value(2, (v3_TranslationalStiffnessByLengthY));set_attribute_value(3, (v4_TranslationalStiffnessByLengthZ));set_attribute_value(4, (v5_RotationalStiffnessByLengthX));set_attribute_value(5, (v6_RotationalStiffnessByLengthY));set_attribute_value(6, (v7_RotationalStiffnessByLengthZ));; return *this; } // Function implementations for IfcBoundaryFaceCondition -::Ifc4x3_tc1::IfcModulusOfSubgradeReactionSelect Ifc4x3_tc1::IfcBoundaryFaceCondition::TranslationalStiffnessByAreaX() const { if(get_attribute_value(1).isNull()) { return ::Ifc4x3_tc1::IfcModulusOfSubgradeReactionSelect{}; } return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3_tc1::IfcModulusOfSubgradeReactionSelect>(); } +::Ifc4x3_tc1::IfcModulusOfSubgradeReactionSelect Ifc4x3_tc1::IfcBoundaryFaceCondition::TranslationalStiffnessByAreaX() const { if(get_attribute_value(1).isNull()) { return ::Ifc4x3_tc1::IfcModulusOfSubgradeReactionSelect{}; } return ((express::base)(get_attribute_value(1))).as<::Ifc4x3_tc1::IfcModulusOfSubgradeReactionSelect>(); } void Ifc4x3_tc1::IfcBoundaryFaceCondition::setTranslationalStiffnessByAreaX(const ::Ifc4x3_tc1::IfcModulusOfSubgradeReactionSelect& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } -::Ifc4x3_tc1::IfcModulusOfSubgradeReactionSelect Ifc4x3_tc1::IfcBoundaryFaceCondition::TranslationalStiffnessByAreaY() const { if(get_attribute_value(2).isNull()) { return ::Ifc4x3_tc1::IfcModulusOfSubgradeReactionSelect{}; } return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3_tc1::IfcModulusOfSubgradeReactionSelect>(); } +::Ifc4x3_tc1::IfcModulusOfSubgradeReactionSelect Ifc4x3_tc1::IfcBoundaryFaceCondition::TranslationalStiffnessByAreaY() const { if(get_attribute_value(2).isNull()) { return ::Ifc4x3_tc1::IfcModulusOfSubgradeReactionSelect{}; } return ((express::base)(get_attribute_value(2))).as<::Ifc4x3_tc1::IfcModulusOfSubgradeReactionSelect>(); } void Ifc4x3_tc1::IfcBoundaryFaceCondition::setTranslationalStiffnessByAreaY(const ::Ifc4x3_tc1::IfcModulusOfSubgradeReactionSelect& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } -::Ifc4x3_tc1::IfcModulusOfSubgradeReactionSelect Ifc4x3_tc1::IfcBoundaryFaceCondition::TranslationalStiffnessByAreaZ() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3_tc1::IfcModulusOfSubgradeReactionSelect{}; } return ((express::Base)(get_attribute_value(3))).as<::Ifc4x3_tc1::IfcModulusOfSubgradeReactionSelect>(); } +::Ifc4x3_tc1::IfcModulusOfSubgradeReactionSelect Ifc4x3_tc1::IfcBoundaryFaceCondition::TranslationalStiffnessByAreaZ() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3_tc1::IfcModulusOfSubgradeReactionSelect{}; } return ((express::base)(get_attribute_value(3))).as<::Ifc4x3_tc1::IfcModulusOfSubgradeReactionSelect>(); } void Ifc4x3_tc1::IfcBoundaryFaceCondition::setTranslationalStiffnessByAreaZ(const ::Ifc4x3_tc1::IfcModulusOfSubgradeReactionSelect& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } @@ -8551,17 +8551,17 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcBoundaryFaceCondition::Class() { retu Ifc4x3_tc1::IfcBoundaryFaceCondition Ifc4x3_tc1::IfcBoundaryFaceCondition::initialize(std::optional< std::string > v1_Name, ::Ifc4x3_tc1::IfcModulusOfSubgradeReactionSelect v2_TranslationalStiffnessByAreaX, ::Ifc4x3_tc1::IfcModulusOfSubgradeReactionSelect v3_TranslationalStiffnessByAreaY, ::Ifc4x3_tc1::IfcModulusOfSubgradeReactionSelect v4_TranslationalStiffnessByAreaZ) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); }set_attribute_value(1, (v2_TranslationalStiffnessByAreaX));set_attribute_value(2, (v3_TranslationalStiffnessByAreaY));set_attribute_value(3, (v4_TranslationalStiffnessByAreaZ));; return *this; } // Function implementations for IfcBoundaryNodeCondition -::Ifc4x3_tc1::IfcTranslationalStiffnessSelect Ifc4x3_tc1::IfcBoundaryNodeCondition::TranslationalStiffnessX() const { if(get_attribute_value(1).isNull()) { return ::Ifc4x3_tc1::IfcTranslationalStiffnessSelect{}; } return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3_tc1::IfcTranslationalStiffnessSelect>(); } +::Ifc4x3_tc1::IfcTranslationalStiffnessSelect Ifc4x3_tc1::IfcBoundaryNodeCondition::TranslationalStiffnessX() const { if(get_attribute_value(1).isNull()) { return ::Ifc4x3_tc1::IfcTranslationalStiffnessSelect{}; } return ((express::base)(get_attribute_value(1))).as<::Ifc4x3_tc1::IfcTranslationalStiffnessSelect>(); } void Ifc4x3_tc1::IfcBoundaryNodeCondition::setTranslationalStiffnessX(const ::Ifc4x3_tc1::IfcTranslationalStiffnessSelect& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } -::Ifc4x3_tc1::IfcTranslationalStiffnessSelect Ifc4x3_tc1::IfcBoundaryNodeCondition::TranslationalStiffnessY() const { if(get_attribute_value(2).isNull()) { return ::Ifc4x3_tc1::IfcTranslationalStiffnessSelect{}; } return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3_tc1::IfcTranslationalStiffnessSelect>(); } +::Ifc4x3_tc1::IfcTranslationalStiffnessSelect Ifc4x3_tc1::IfcBoundaryNodeCondition::TranslationalStiffnessY() const { if(get_attribute_value(2).isNull()) { return ::Ifc4x3_tc1::IfcTranslationalStiffnessSelect{}; } return ((express::base)(get_attribute_value(2))).as<::Ifc4x3_tc1::IfcTranslationalStiffnessSelect>(); } void Ifc4x3_tc1::IfcBoundaryNodeCondition::setTranslationalStiffnessY(const ::Ifc4x3_tc1::IfcTranslationalStiffnessSelect& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } -::Ifc4x3_tc1::IfcTranslationalStiffnessSelect Ifc4x3_tc1::IfcBoundaryNodeCondition::TranslationalStiffnessZ() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3_tc1::IfcTranslationalStiffnessSelect{}; } return ((express::Base)(get_attribute_value(3))).as<::Ifc4x3_tc1::IfcTranslationalStiffnessSelect>(); } +::Ifc4x3_tc1::IfcTranslationalStiffnessSelect Ifc4x3_tc1::IfcBoundaryNodeCondition::TranslationalStiffnessZ() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3_tc1::IfcTranslationalStiffnessSelect{}; } return ((express::base)(get_attribute_value(3))).as<::Ifc4x3_tc1::IfcTranslationalStiffnessSelect>(); } void Ifc4x3_tc1::IfcBoundaryNodeCondition::setTranslationalStiffnessZ(const ::Ifc4x3_tc1::IfcTranslationalStiffnessSelect& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } -::Ifc4x3_tc1::IfcRotationalStiffnessSelect Ifc4x3_tc1::IfcBoundaryNodeCondition::RotationalStiffnessX() const { if(get_attribute_value(4).isNull()) { return ::Ifc4x3_tc1::IfcRotationalStiffnessSelect{}; } return ((express::Base)(get_attribute_value(4))).as<::Ifc4x3_tc1::IfcRotationalStiffnessSelect>(); } +::Ifc4x3_tc1::IfcRotationalStiffnessSelect Ifc4x3_tc1::IfcBoundaryNodeCondition::RotationalStiffnessX() const { if(get_attribute_value(4).isNull()) { return ::Ifc4x3_tc1::IfcRotationalStiffnessSelect{}; } return ((express::base)(get_attribute_value(4))).as<::Ifc4x3_tc1::IfcRotationalStiffnessSelect>(); } void Ifc4x3_tc1::IfcBoundaryNodeCondition::setRotationalStiffnessX(const ::Ifc4x3_tc1::IfcRotationalStiffnessSelect& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } -::Ifc4x3_tc1::IfcRotationalStiffnessSelect Ifc4x3_tc1::IfcBoundaryNodeCondition::RotationalStiffnessY() const { if(get_attribute_value(5).isNull()) { return ::Ifc4x3_tc1::IfcRotationalStiffnessSelect{}; } return ((express::Base)(get_attribute_value(5))).as<::Ifc4x3_tc1::IfcRotationalStiffnessSelect>(); } +::Ifc4x3_tc1::IfcRotationalStiffnessSelect Ifc4x3_tc1::IfcBoundaryNodeCondition::RotationalStiffnessY() const { if(get_attribute_value(5).isNull()) { return ::Ifc4x3_tc1::IfcRotationalStiffnessSelect{}; } return ((express::base)(get_attribute_value(5))).as<::Ifc4x3_tc1::IfcRotationalStiffnessSelect>(); } void Ifc4x3_tc1::IfcBoundaryNodeCondition::setRotationalStiffnessY(const ::Ifc4x3_tc1::IfcRotationalStiffnessSelect& v) { set_attribute_value(5, v);if constexpr (false)unset_attribute_value(5); } -::Ifc4x3_tc1::IfcRotationalStiffnessSelect Ifc4x3_tc1::IfcBoundaryNodeCondition::RotationalStiffnessZ() const { if(get_attribute_value(6).isNull()) { return ::Ifc4x3_tc1::IfcRotationalStiffnessSelect{}; } return ((express::Base)(get_attribute_value(6))).as<::Ifc4x3_tc1::IfcRotationalStiffnessSelect>(); } +::Ifc4x3_tc1::IfcRotationalStiffnessSelect Ifc4x3_tc1::IfcBoundaryNodeCondition::RotationalStiffnessZ() const { if(get_attribute_value(6).isNull()) { return ::Ifc4x3_tc1::IfcRotationalStiffnessSelect{}; } return ((express::base)(get_attribute_value(6))).as<::Ifc4x3_tc1::IfcRotationalStiffnessSelect>(); } void Ifc4x3_tc1::IfcBoundaryNodeCondition::setRotationalStiffnessZ(const ::Ifc4x3_tc1::IfcRotationalStiffnessSelect& v) { set_attribute_value(6, v);if constexpr (false)unset_attribute_value(6); } @@ -8569,7 +8569,7 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcBoundaryNodeCondition::Class() { retu Ifc4x3_tc1::IfcBoundaryNodeCondition Ifc4x3_tc1::IfcBoundaryNodeCondition::initialize(std::optional< std::string > v1_Name, ::Ifc4x3_tc1::IfcTranslationalStiffnessSelect v2_TranslationalStiffnessX, ::Ifc4x3_tc1::IfcTranslationalStiffnessSelect v3_TranslationalStiffnessY, ::Ifc4x3_tc1::IfcTranslationalStiffnessSelect v4_TranslationalStiffnessZ, ::Ifc4x3_tc1::IfcRotationalStiffnessSelect v5_RotationalStiffnessX, ::Ifc4x3_tc1::IfcRotationalStiffnessSelect v6_RotationalStiffnessY, ::Ifc4x3_tc1::IfcRotationalStiffnessSelect v7_RotationalStiffnessZ) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); }set_attribute_value(1, (v2_TranslationalStiffnessX));set_attribute_value(2, (v3_TranslationalStiffnessY));set_attribute_value(3, (v4_TranslationalStiffnessZ));set_attribute_value(4, (v5_RotationalStiffnessX));set_attribute_value(5, (v6_RotationalStiffnessY));set_attribute_value(6, (v7_RotationalStiffnessZ));; return *this; } // Function implementations for IfcBoundaryNodeConditionWarping -::Ifc4x3_tc1::IfcWarpingStiffnessSelect Ifc4x3_tc1::IfcBoundaryNodeConditionWarping::WarpingStiffness() const { if(get_attribute_value(7).isNull()) { return ::Ifc4x3_tc1::IfcWarpingStiffnessSelect{}; } return ((express::Base)(get_attribute_value(7))).as<::Ifc4x3_tc1::IfcWarpingStiffnessSelect>(); } +::Ifc4x3_tc1::IfcWarpingStiffnessSelect Ifc4x3_tc1::IfcBoundaryNodeConditionWarping::WarpingStiffness() const { if(get_attribute_value(7).isNull()) { return ::Ifc4x3_tc1::IfcWarpingStiffnessSelect{}; } return ((express::base)(get_attribute_value(7))).as<::Ifc4x3_tc1::IfcWarpingStiffnessSelect>(); } void Ifc4x3_tc1::IfcBoundaryNodeConditionWarping::setWarpingStiffness(const ::Ifc4x3_tc1::IfcWarpingStiffnessSelect& v) { set_attribute_value(7, v);if constexpr (false)unset_attribute_value(7); } @@ -8589,7 +8589,7 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcBoundedSurface::Class() { return *((i Ifc4x3_tc1::IfcBoundedSurface Ifc4x3_tc1::IfcBoundedSurface::initialize() { ; return *this; } // Function implementations for IfcBoundingBox -::Ifc4x3_tc1::IfcCartesianPoint Ifc4x3_tc1::IfcBoundingBox::Corner() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcCartesianPoint>(); } +::Ifc4x3_tc1::IfcCartesianPoint Ifc4x3_tc1::IfcBoundingBox::Corner() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcCartesianPoint>(); } void Ifc4x3_tc1::IfcBoundingBox::setCorner(const ::Ifc4x3_tc1::IfcCartesianPoint& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } double Ifc4x3_tc1::IfcBoundingBox::XDim() const { double v = get_attribute_value(1); return v; } void Ifc4x3_tc1::IfcBoundingBox::setXDim(const double& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } @@ -8603,7 +8603,7 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcBoundingBox::Class() { return *((ifco Ifc4x3_tc1::IfcBoundingBox Ifc4x3_tc1::IfcBoundingBox::initialize(::Ifc4x3_tc1::IfcCartesianPoint v1_Corner, double v2_XDim, double v3_YDim, double v4_ZDim) { set_attribute_value(0, (v1_Corner));set_attribute_value(1, (v2_XDim));set_attribute_value(2, (v3_YDim));set_attribute_value(3, (v4_ZDim));; return *this; } // Function implementations for IfcBoxedHalfSpace -::Ifc4x3_tc1::IfcBoundingBox Ifc4x3_tc1::IfcBoxedHalfSpace::Enclosure() const { return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3_tc1::IfcBoundingBox>(); } +::Ifc4x3_tc1::IfcBoundingBox Ifc4x3_tc1::IfcBoxedHalfSpace::Enclosure() const { return ((express::base)(get_attribute_value(2))).as<::Ifc4x3_tc1::IfcBoundingBox>(); } void Ifc4x3_tc1::IfcBoxedHalfSpace::setEnclosure(const ::Ifc4x3_tc1::IfcBoundingBox& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } @@ -8631,7 +8631,7 @@ std::optional< double > Ifc4x3_tc1::IfcBuilding::ElevationOfRefHeight() const { void Ifc4x3_tc1::IfcBuilding::setElevationOfRefHeight(const std::optional< double >& v) { if (v) {set_attribute_value(9, *v);} else {unset_attribute_value(9);} } std::optional< double > Ifc4x3_tc1::IfcBuilding::ElevationOfTerrain() const { if(get_attribute_value(10).isNull()) { return std::nullopt; } double v = get_attribute_value(10); return v; } void Ifc4x3_tc1::IfcBuilding::setElevationOfTerrain(const std::optional< double >& v) { if (v) {set_attribute_value(10, *v);} else {unset_attribute_value(10);} } -::Ifc4x3_tc1::IfcPostalAddress Ifc4x3_tc1::IfcBuilding::BuildingAddress() const { if(get_attribute_value(11).isNull()) { return ::Ifc4x3_tc1::IfcPostalAddress{}; } return ((express::Base)(get_attribute_value(11))).as<::Ifc4x3_tc1::IfcPostalAddress>(); } +::Ifc4x3_tc1::IfcPostalAddress Ifc4x3_tc1::IfcBuilding::BuildingAddress() const { if(get_attribute_value(11).isNull()) { return ::Ifc4x3_tc1::IfcPostalAddress{}; } return ((express::base)(get_attribute_value(11))).as<::Ifc4x3_tc1::IfcPostalAddress>(); } void Ifc4x3_tc1::IfcBuilding::setBuildingAddress(const ::Ifc4x3_tc1::IfcPostalAddress& v) { set_attribute_value(11, v);if constexpr (false)unset_attribute_value(11); } @@ -8652,7 +8652,7 @@ void Ifc4x3_tc1::IfcBuildingElementPartType::setPredefinedType(const ::Ifc4x3_tc const ifcopenshell::entity& Ifc4x3_tc1::IfcBuildingElementPartType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[115]); } -Ifc4x3_tc1::IfcBuildingElementPartType Ifc4x3_tc1::IfcBuildingElementPartType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcBuildingElementPartTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcBuildingElementPartTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_tc1::IfcBuildingElementPartType Ifc4x3_tc1::IfcBuildingElementPartType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcBuildingElementPartTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcBuildingElementPartTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcBuildingElementProxy std::optional< ::Ifc4x3_tc1::IfcBuildingElementProxyTypeEnum::Value > Ifc4x3_tc1::IfcBuildingElementProxy::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_tc1::IfcBuildingElementProxyTypeEnum::FromString(get_attribute_value(8)); } @@ -8668,7 +8668,7 @@ void Ifc4x3_tc1::IfcBuildingElementProxyType::setPredefinedType(const ::Ifc4x3_t const ifcopenshell::entity& Ifc4x3_tc1::IfcBuildingElementProxyType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[118]); } -Ifc4x3_tc1::IfcBuildingElementProxyType Ifc4x3_tc1::IfcBuildingElementProxyType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcBuildingElementProxyTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcBuildingElementProxyTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_tc1::IfcBuildingElementProxyType Ifc4x3_tc1::IfcBuildingElementProxyType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcBuildingElementProxyTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcBuildingElementProxyTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcBuildingStorey std::optional< double > Ifc4x3_tc1::IfcBuildingStorey::Elevation() const { if(get_attribute_value(9).isNull()) { return std::nullopt; } double v = get_attribute_value(9); return v; } @@ -8698,7 +8698,7 @@ Ifc4x3_tc1::IfcBuiltElement Ifc4x3_tc1::IfcBuiltElement::initialize(std::string const ifcopenshell::entity& Ifc4x3_tc1::IfcBuiltElementType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[124]); } -Ifc4x3_tc1::IfcBuiltElementType Ifc4x3_tc1::IfcBuiltElementType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } +Ifc4x3_tc1::IfcBuiltElementType Ifc4x3_tc1::IfcBuiltElementType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } // Function implementations for IfcBuiltSystem std::optional< ::Ifc4x3_tc1::IfcBuiltSystemTypeEnum::Value > Ifc4x3_tc1::IfcBuiltSystem::PredefinedType() const { if(get_attribute_value(5).isNull()) { return std::nullopt; } return ::Ifc4x3_tc1::IfcBuiltSystemTypeEnum::FromString(get_attribute_value(5)); } @@ -8724,7 +8724,7 @@ void Ifc4x3_tc1::IfcBurnerType::setPredefinedType(const ::Ifc4x3_tc1::IfcBurnerT const ifcopenshell::entity& Ifc4x3_tc1::IfcBurnerType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[128]); } -Ifc4x3_tc1::IfcBurnerType Ifc4x3_tc1::IfcBurnerType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcBurnerTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcBurnerTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_tc1::IfcBurnerType Ifc4x3_tc1::IfcBurnerType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcBurnerTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcBurnerTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcCShapeProfileDef double Ifc4x3_tc1::IfcCShapeProfileDef::Depth() const { double v = get_attribute_value(3); return v; } @@ -8756,7 +8756,7 @@ void Ifc4x3_tc1::IfcCableCarrierFittingType::setPredefinedType(const ::Ifc4x3_tc const ifcopenshell::entity& Ifc4x3_tc1::IfcCableCarrierFittingType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[131]); } -Ifc4x3_tc1::IfcCableCarrierFittingType Ifc4x3_tc1::IfcCableCarrierFittingType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcCableCarrierFittingTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcCableCarrierFittingTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_tc1::IfcCableCarrierFittingType Ifc4x3_tc1::IfcCableCarrierFittingType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcCableCarrierFittingTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcCableCarrierFittingTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcCableCarrierSegment std::optional< ::Ifc4x3_tc1::IfcCableCarrierSegmentTypeEnum::Value > Ifc4x3_tc1::IfcCableCarrierSegment::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_tc1::IfcCableCarrierSegmentTypeEnum::FromString(get_attribute_value(8)); } @@ -8772,7 +8772,7 @@ void Ifc4x3_tc1::IfcCableCarrierSegmentType::setPredefinedType(const ::Ifc4x3_tc const ifcopenshell::entity& Ifc4x3_tc1::IfcCableCarrierSegmentType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[134]); } -Ifc4x3_tc1::IfcCableCarrierSegmentType Ifc4x3_tc1::IfcCableCarrierSegmentType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcCableCarrierSegmentTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcCableCarrierSegmentTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_tc1::IfcCableCarrierSegmentType Ifc4x3_tc1::IfcCableCarrierSegmentType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcCableCarrierSegmentTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcCableCarrierSegmentTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcCableFitting std::optional< ::Ifc4x3_tc1::IfcCableFittingTypeEnum::Value > Ifc4x3_tc1::IfcCableFitting::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_tc1::IfcCableFittingTypeEnum::FromString(get_attribute_value(8)); } @@ -8788,7 +8788,7 @@ void Ifc4x3_tc1::IfcCableFittingType::setPredefinedType(const ::Ifc4x3_tc1::IfcC const ifcopenshell::entity& Ifc4x3_tc1::IfcCableFittingType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[137]); } -Ifc4x3_tc1::IfcCableFittingType Ifc4x3_tc1::IfcCableFittingType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcCableFittingTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcCableFittingTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_tc1::IfcCableFittingType Ifc4x3_tc1::IfcCableFittingType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcCableFittingTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcCableFittingTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcCableSegment std::optional< ::Ifc4x3_tc1::IfcCableSegmentTypeEnum::Value > Ifc4x3_tc1::IfcCableSegment::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_tc1::IfcCableSegmentTypeEnum::FromString(get_attribute_value(8)); } @@ -8804,7 +8804,7 @@ void Ifc4x3_tc1::IfcCableSegmentType::setPredefinedType(const ::Ifc4x3_tc1::IfcC const ifcopenshell::entity& Ifc4x3_tc1::IfcCableSegmentType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[140]); } -Ifc4x3_tc1::IfcCableSegmentType Ifc4x3_tc1::IfcCableSegmentType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcCableSegmentTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcCableSegmentTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_tc1::IfcCableSegmentType Ifc4x3_tc1::IfcCableSegmentType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcCableSegmentTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcCableSegmentTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcCaissonFoundation std::optional< ::Ifc4x3_tc1::IfcCaissonFoundationTypeEnum::Value > Ifc4x3_tc1::IfcCaissonFoundation::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_tc1::IfcCaissonFoundationTypeEnum::FromString(get_attribute_value(8)); } @@ -8820,7 +8820,7 @@ void Ifc4x3_tc1::IfcCaissonFoundationType::setPredefinedType(const ::Ifc4x3_tc1: const ifcopenshell::entity& Ifc4x3_tc1::IfcCaissonFoundationType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[143]); } -Ifc4x3_tc1::IfcCaissonFoundationType Ifc4x3_tc1::IfcCaissonFoundationType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcCaissonFoundationTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcCaissonFoundationTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_tc1::IfcCaissonFoundationType Ifc4x3_tc1::IfcCaissonFoundationType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcCaissonFoundationTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcCaissonFoundationTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcCartesianPoint std::vector< double > /*[1:3]*/ Ifc4x3_tc1::IfcCartesianPoint::Coordinates() const { std::vector< double > /*[1:3]*/ v = get_attribute_value(0); return v; } @@ -8857,11 +8857,11 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcCartesianPointList3D::Class() { retur Ifc4x3_tc1::IfcCartesianPointList3D Ifc4x3_tc1::IfcCartesianPointList3D::initialize(std::vector< std::vector< double > > v1_CoordList, std::optional< std::vector< std::string > /*[1:?]*/ > v2_TagList) { set_attribute_value(0, (v1_CoordList)); if (v2_TagList) {set_attribute_value(1, (*v2_TagList)); }; return *this; } // Function implementations for IfcCartesianTransformationOperator -::Ifc4x3_tc1::IfcDirection Ifc4x3_tc1::IfcCartesianTransformationOperator::Axis1() const { if(get_attribute_value(0).isNull()) { return ::Ifc4x3_tc1::IfcDirection{}; } return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcDirection>(); } +::Ifc4x3_tc1::IfcDirection Ifc4x3_tc1::IfcCartesianTransformationOperator::Axis1() const { if(get_attribute_value(0).isNull()) { return ::Ifc4x3_tc1::IfcDirection{}; } return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcDirection>(); } void Ifc4x3_tc1::IfcCartesianTransformationOperator::setAxis1(const ::Ifc4x3_tc1::IfcDirection& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } -::Ifc4x3_tc1::IfcDirection Ifc4x3_tc1::IfcCartesianTransformationOperator::Axis2() const { if(get_attribute_value(1).isNull()) { return ::Ifc4x3_tc1::IfcDirection{}; } return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3_tc1::IfcDirection>(); } +::Ifc4x3_tc1::IfcDirection Ifc4x3_tc1::IfcCartesianTransformationOperator::Axis2() const { if(get_attribute_value(1).isNull()) { return ::Ifc4x3_tc1::IfcDirection{}; } return ((express::base)(get_attribute_value(1))).as<::Ifc4x3_tc1::IfcDirection>(); } void Ifc4x3_tc1::IfcCartesianTransformationOperator::setAxis2(const ::Ifc4x3_tc1::IfcDirection& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } -::Ifc4x3_tc1::IfcCartesianPoint Ifc4x3_tc1::IfcCartesianTransformationOperator::LocalOrigin() const { return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3_tc1::IfcCartesianPoint>(); } +::Ifc4x3_tc1::IfcCartesianPoint Ifc4x3_tc1::IfcCartesianTransformationOperator::LocalOrigin() const { return ((express::base)(get_attribute_value(2))).as<::Ifc4x3_tc1::IfcCartesianPoint>(); } void Ifc4x3_tc1::IfcCartesianTransformationOperator::setLocalOrigin(const ::Ifc4x3_tc1::IfcCartesianPoint& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } std::optional< double > Ifc4x3_tc1::IfcCartesianTransformationOperator::Scale() const { if(get_attribute_value(3).isNull()) { return std::nullopt; } double v = get_attribute_value(3); return v; } void Ifc4x3_tc1::IfcCartesianTransformationOperator::setScale(const std::optional< double >& v) { if (v) {set_attribute_value(3, *v);} else {unset_attribute_value(3);} } @@ -8885,7 +8885,7 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcCartesianTransformationOperator2DnonU Ifc4x3_tc1::IfcCartesianTransformationOperator2DnonUniform Ifc4x3_tc1::IfcCartesianTransformationOperator2DnonUniform::initialize(::Ifc4x3_tc1::IfcDirection v1_Axis1, ::Ifc4x3_tc1::IfcDirection v2_Axis2, ::Ifc4x3_tc1::IfcCartesianPoint v3_LocalOrigin, std::optional< double > v4_Scale, std::optional< double > v5_Scale2) { set_attribute_value(0, (v1_Axis1));set_attribute_value(1, (v2_Axis2));set_attribute_value(2, (v3_LocalOrigin)); if (v4_Scale) {set_attribute_value(3, (*v4_Scale)); } if (v5_Scale2) {set_attribute_value(4, (*v5_Scale2)); }; return *this; } // Function implementations for IfcCartesianTransformationOperator3D -::Ifc4x3_tc1::IfcDirection Ifc4x3_tc1::IfcCartesianTransformationOperator3D::Axis3() const { if(get_attribute_value(4).isNull()) { return ::Ifc4x3_tc1::IfcDirection{}; } return ((express::Base)(get_attribute_value(4))).as<::Ifc4x3_tc1::IfcDirection>(); } +::Ifc4x3_tc1::IfcDirection Ifc4x3_tc1::IfcCartesianTransformationOperator3D::Axis3() const { if(get_attribute_value(4).isNull()) { return ::Ifc4x3_tc1::IfcDirection{}; } return ((express::base)(get_attribute_value(4))).as<::Ifc4x3_tc1::IfcDirection>(); } void Ifc4x3_tc1::IfcCartesianTransformationOperator3D::setAxis3(const ::Ifc4x3_tc1::IfcDirection& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } @@ -8924,7 +8924,7 @@ void Ifc4x3_tc1::IfcChillerType::setPredefinedType(const ::Ifc4x3_tc1::IfcChille const ifcopenshell::entity& Ifc4x3_tc1::IfcChillerType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[158]); } -Ifc4x3_tc1::IfcChillerType Ifc4x3_tc1::IfcChillerType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcChillerTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcChillerTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_tc1::IfcChillerType Ifc4x3_tc1::IfcChillerType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcChillerTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcChillerTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcChimney std::optional< ::Ifc4x3_tc1::IfcChimneyTypeEnum::Value > Ifc4x3_tc1::IfcChimney::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_tc1::IfcChimneyTypeEnum::FromString(get_attribute_value(8)); } @@ -8940,7 +8940,7 @@ void Ifc4x3_tc1::IfcChimneyType::setPredefinedType(const ::Ifc4x3_tc1::IfcChimne const ifcopenshell::entity& Ifc4x3_tc1::IfcChimneyType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[161]); } -Ifc4x3_tc1::IfcChimneyType Ifc4x3_tc1::IfcChimneyType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcChimneyTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcChimneyTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_tc1::IfcChimneyType Ifc4x3_tc1::IfcChimneyType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcChimneyTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcChimneyTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcCircle double Ifc4x3_tc1::IfcCircle::Radius() const { double v = get_attribute_value(1); return v; } @@ -8976,7 +8976,7 @@ Ifc4x3_tc1::IfcCivilElement Ifc4x3_tc1::IfcCivilElement::initialize(std::string const ifcopenshell::entity& Ifc4x3_tc1::IfcCivilElementType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[167]); } -Ifc4x3_tc1::IfcCivilElementType Ifc4x3_tc1::IfcCivilElementType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } +Ifc4x3_tc1::IfcCivilElementType Ifc4x3_tc1::IfcCivilElementType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } // Function implementations for IfcClassification std::optional< std::string > Ifc4x3_tc1::IfcClassification::Source() const { if(get_attribute_value(0).isNull()) { return std::nullopt; } std::string v = get_attribute_value(0); return v; } @@ -9001,7 +9001,7 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcClassification::Class() { return *((i Ifc4x3_tc1::IfcClassification Ifc4x3_tc1::IfcClassification::initialize(std::optional< std::string > v1_Source, std::optional< std::string > v2_Edition, std::optional< std::string > v3_EditionDate, std::string v4_Name, std::optional< std::string > v5_Description, std::optional< std::string > v6_Specification, std::optional< std::vector< std::string > /*[1:?]*/ > v7_ReferenceTokens) { if (v1_Source) {set_attribute_value(0, (*v1_Source)); } if (v2_Edition) {set_attribute_value(1, (*v2_Edition)); } if (v3_EditionDate) {set_attribute_value(2, (*v3_EditionDate)); }set_attribute_value(3, (v4_Name)); if (v5_Description) {set_attribute_value(4, (*v5_Description)); } if (v6_Specification) {set_attribute_value(5, (*v6_Specification)); } if (v7_ReferenceTokens) {set_attribute_value(6, (*v7_ReferenceTokens)); }; return *this; } // Function implementations for IfcClassificationReference -::Ifc4x3_tc1::IfcClassificationReferenceSelect Ifc4x3_tc1::IfcClassificationReference::ReferencedSource() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3_tc1::IfcClassificationReferenceSelect{}; } return ((express::Base)(get_attribute_value(3))).as<::Ifc4x3_tc1::IfcClassificationReferenceSelect>(); } +::Ifc4x3_tc1::IfcClassificationReferenceSelect Ifc4x3_tc1::IfcClassificationReference::ReferencedSource() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3_tc1::IfcClassificationReferenceSelect{}; } return ((express::base)(get_attribute_value(3))).as<::Ifc4x3_tc1::IfcClassificationReferenceSelect>(); } void Ifc4x3_tc1::IfcClassificationReference::setReferencedSource(const ::Ifc4x3_tc1::IfcClassificationReferenceSelect& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } std::optional< std::string > Ifc4x3_tc1::IfcClassificationReference::Description() const { if(get_attribute_value(4).isNull()) { return std::nullopt; } std::string v = get_attribute_value(4); return v; } void Ifc4x3_tc1::IfcClassificationReference::setDescription(const std::optional< std::string >& v) { if (v) {set_attribute_value(4, *v);} else {unset_attribute_value(4);} } @@ -9018,7 +9018,7 @@ Ifc4x3_tc1::IfcClassificationReference Ifc4x3_tc1::IfcClassificationReference::i const ifcopenshell::entity& Ifc4x3_tc1::IfcClosedShell::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[172]); } -Ifc4x3_tc1::IfcClosedShell Ifc4x3_tc1::IfcClosedShell::initialize(std::vector< ::Ifc4x3_tc1::IfcFace > v1_CfsFaces) { set_attribute_value(0, cast_vector(v1_CfsFaces));; return *this; } +Ifc4x3_tc1::IfcClosedShell Ifc4x3_tc1::IfcClosedShell::initialize(std::vector< ::Ifc4x3_tc1::IfcFace > v1_CfsFaces) { set_attribute_value(0, cast_vector(v1_CfsFaces));; return *this; } // Function implementations for IfcClothoid double Ifc4x3_tc1::IfcClothoid::ClothoidConstant() const { double v = get_attribute_value(1); return v; } @@ -9042,7 +9042,7 @@ void Ifc4x3_tc1::IfcCoilType::setPredefinedType(const ::Ifc4x3_tc1::IfcCoilTypeE const ifcopenshell::entity& Ifc4x3_tc1::IfcCoilType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[175]); } -Ifc4x3_tc1::IfcCoilType Ifc4x3_tc1::IfcCoilType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcCoilTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcCoilTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_tc1::IfcCoilType Ifc4x3_tc1::IfcCoilType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcCoilTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcCoilTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcColourRgb double Ifc4x3_tc1::IfcColourRgb::Red() const { double v = get_attribute_value(1); return v; } @@ -9086,7 +9086,7 @@ void Ifc4x3_tc1::IfcColumnType::setPredefinedType(const ::Ifc4x3_tc1::IfcColumnT const ifcopenshell::entity& Ifc4x3_tc1::IfcColumnType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[183]); } -Ifc4x3_tc1::IfcColumnType Ifc4x3_tc1::IfcColumnType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcColumnTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcColumnTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_tc1::IfcColumnType Ifc4x3_tc1::IfcColumnType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcColumnTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcColumnTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcCommunicationsAppliance std::optional< ::Ifc4x3_tc1::IfcCommunicationsApplianceTypeEnum::Value > Ifc4x3_tc1::IfcCommunicationsAppliance::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_tc1::IfcCommunicationsApplianceTypeEnum::FromString(get_attribute_value(8)); } @@ -9102,50 +9102,50 @@ void Ifc4x3_tc1::IfcCommunicationsApplianceType::setPredefinedType(const ::Ifc4x const ifcopenshell::entity& Ifc4x3_tc1::IfcCommunicationsApplianceType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[186]); } -Ifc4x3_tc1::IfcCommunicationsApplianceType Ifc4x3_tc1::IfcCommunicationsApplianceType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcCommunicationsApplianceTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcCommunicationsApplianceTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_tc1::IfcCommunicationsApplianceType Ifc4x3_tc1::IfcCommunicationsApplianceType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcCommunicationsApplianceTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcCommunicationsApplianceTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcComplexProperty std::string Ifc4x3_tc1::IfcComplexProperty::UsageName() const { std::string v = get_attribute_value(2); return v; } void Ifc4x3_tc1::IfcComplexProperty::setUsageName(const std::string& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } -std::vector< ::Ifc4x3_tc1::IfcProperty > Ifc4x3_tc1::IfcComplexProperty::HasProperties() const { std::vector es = get_attribute_value(3); return cast_vector<::Ifc4x3_tc1::IfcProperty>(es); } -void Ifc4x3_tc1::IfcComplexProperty::setHasProperties(const std::vector< ::Ifc4x3_tc1::IfcProperty >& v) { set_attribute_value(3, cast_vector(v));if constexpr (false)unset_attribute_value(3); } +std::vector< ::Ifc4x3_tc1::IfcProperty > Ifc4x3_tc1::IfcComplexProperty::HasProperties() const { std::vector es = get_attribute_value(3); return cast_vector<::Ifc4x3_tc1::IfcProperty>(es); } +void Ifc4x3_tc1::IfcComplexProperty::setHasProperties(const std::vector< ::Ifc4x3_tc1::IfcProperty >& v) { set_attribute_value(3, cast_vector(v));if constexpr (false)unset_attribute_value(3); } const ifcopenshell::entity& Ifc4x3_tc1::IfcComplexProperty::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[189]); } -Ifc4x3_tc1::IfcComplexProperty Ifc4x3_tc1::IfcComplexProperty::initialize(std::string v1_Name, std::optional< std::string > v2_Specification, std::string v3_UsageName, std::vector< ::Ifc4x3_tc1::IfcProperty > v4_HasProperties) { set_attribute_value(0, (v1_Name)); if (v2_Specification) {set_attribute_value(1, (*v2_Specification)); }set_attribute_value(2, (v3_UsageName));set_attribute_value(3, cast_vector(v4_HasProperties));; return *this; } +Ifc4x3_tc1::IfcComplexProperty Ifc4x3_tc1::IfcComplexProperty::initialize(std::string v1_Name, std::optional< std::string > v2_Specification, std::string v3_UsageName, std::vector< ::Ifc4x3_tc1::IfcProperty > v4_HasProperties) { set_attribute_value(0, (v1_Name)); if (v2_Specification) {set_attribute_value(1, (*v2_Specification)); }set_attribute_value(2, (v3_UsageName));set_attribute_value(3, cast_vector(v4_HasProperties));; return *this; } // Function implementations for IfcComplexPropertyTemplate std::optional< std::string > Ifc4x3_tc1::IfcComplexPropertyTemplate::UsageName() const { if(get_attribute_value(4).isNull()) { return std::nullopt; } std::string v = get_attribute_value(4); return v; } void Ifc4x3_tc1::IfcComplexPropertyTemplate::setUsageName(const std::optional< std::string >& v) { if (v) {set_attribute_value(4, *v);} else {unset_attribute_value(4);} } std::optional< ::Ifc4x3_tc1::IfcComplexPropertyTemplateTypeEnum::Value > Ifc4x3_tc1::IfcComplexPropertyTemplate::TemplateType() const { if(get_attribute_value(5).isNull()) { return std::nullopt; } return ::Ifc4x3_tc1::IfcComplexPropertyTemplateTypeEnum::FromString(get_attribute_value(5)); } void Ifc4x3_tc1::IfcComplexPropertyTemplate::setTemplateType(const std::optional< ::Ifc4x3_tc1::IfcComplexPropertyTemplateTypeEnum::Value >& v) { if (v) {set_attribute_value(5, enumeration_reference(&::Ifc4x3_tc1::IfcComplexPropertyTemplateTypeEnum::Class(), (size_t) *v));} else {unset_attribute_value(5);} } -std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertyTemplate > > Ifc4x3_tc1::IfcComplexPropertyTemplate::HasPropertyTemplates() const { if(get_attribute_value(6).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(6); return cast_vector<::Ifc4x3_tc1::IfcPropertyTemplate>(es); } -void Ifc4x3_tc1::IfcComplexPropertyTemplate::setHasPropertyTemplates(const std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertyTemplate > >& v) { if (v) {set_attribute_value(6, cast_vector(*v));} else {unset_attribute_value(6);} } +std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertyTemplate > > Ifc4x3_tc1::IfcComplexPropertyTemplate::HasPropertyTemplates() const { if(get_attribute_value(6).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(6); return cast_vector<::Ifc4x3_tc1::IfcPropertyTemplate>(es); } +void Ifc4x3_tc1::IfcComplexPropertyTemplate::setHasPropertyTemplates(const std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertyTemplate > >& v) { if (v) {set_attribute_value(6, cast_vector(*v));} else {unset_attribute_value(6);} } const ifcopenshell::entity& Ifc4x3_tc1::IfcComplexPropertyTemplate::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[190]); } -Ifc4x3_tc1::IfcComplexPropertyTemplate Ifc4x3_tc1::IfcComplexPropertyTemplate::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_UsageName, std::optional< ::Ifc4x3_tc1::IfcComplexPropertyTemplateTypeEnum::Value > v6_TemplateType, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertyTemplate > > v7_HasPropertyTemplates) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_UsageName) {set_attribute_value(4, (*v5_UsageName)); } if (v6_TemplateType) {set_attribute_value(5, (enumeration_reference(&::Ifc4x3_tc1::IfcComplexPropertyTemplateTypeEnum::Class(),(size_t)*v6_TemplateType))); } if (v7_HasPropertyTemplates) {set_attribute_value(6, cast_vector(*v7_HasPropertyTemplates)); }; return *this; } +Ifc4x3_tc1::IfcComplexPropertyTemplate Ifc4x3_tc1::IfcComplexPropertyTemplate::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_UsageName, std::optional< ::Ifc4x3_tc1::IfcComplexPropertyTemplateTypeEnum::Value > v6_TemplateType, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertyTemplate > > v7_HasPropertyTemplates) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_UsageName) {set_attribute_value(4, (*v5_UsageName)); } if (v6_TemplateType) {set_attribute_value(5, (enumeration_reference(&::Ifc4x3_tc1::IfcComplexPropertyTemplateTypeEnum::Class(),(size_t)*v6_TemplateType))); } if (v7_HasPropertyTemplates) {set_attribute_value(6, cast_vector(*v7_HasPropertyTemplates)); }; return *this; } // Function implementations for IfcCompositeCurve -std::vector< ::Ifc4x3_tc1::IfcSegment > Ifc4x3_tc1::IfcCompositeCurve::Segments() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3_tc1::IfcSegment>(es); } -void Ifc4x3_tc1::IfcCompositeCurve::setSegments(const std::vector< ::Ifc4x3_tc1::IfcSegment >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } +std::vector< ::Ifc4x3_tc1::IfcSegment > Ifc4x3_tc1::IfcCompositeCurve::Segments() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3_tc1::IfcSegment>(es); } +void Ifc4x3_tc1::IfcCompositeCurve::setSegments(const std::vector< ::Ifc4x3_tc1::IfcSegment >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } boost::logic::tribool Ifc4x3_tc1::IfcCompositeCurve::SelfIntersect() const { boost::logic::tribool v = get_attribute_value(1); return v; } void Ifc4x3_tc1::IfcCompositeCurve::setSelfIntersect(const boost::logic::tribool& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } const ifcopenshell::entity& Ifc4x3_tc1::IfcCompositeCurve::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[192]); } -Ifc4x3_tc1::IfcCompositeCurve Ifc4x3_tc1::IfcCompositeCurve::initialize(std::vector< ::Ifc4x3_tc1::IfcSegment > v1_Segments, boost::logic::tribool v2_SelfIntersect) { set_attribute_value(0, cast_vector(v1_Segments));set_attribute_value(1, (v2_SelfIntersect));; return *this; } +Ifc4x3_tc1::IfcCompositeCurve Ifc4x3_tc1::IfcCompositeCurve::initialize(std::vector< ::Ifc4x3_tc1::IfcSegment > v1_Segments, boost::logic::tribool v2_SelfIntersect) { set_attribute_value(0, cast_vector(v1_Segments));set_attribute_value(1, (v2_SelfIntersect));; return *this; } // Function implementations for IfcCompositeCurveOnSurface const ifcopenshell::entity& Ifc4x3_tc1::IfcCompositeCurveOnSurface::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[193]); } -Ifc4x3_tc1::IfcCompositeCurveOnSurface Ifc4x3_tc1::IfcCompositeCurveOnSurface::initialize(std::vector< ::Ifc4x3_tc1::IfcSegment > v1_Segments, boost::logic::tribool v2_SelfIntersect) { set_attribute_value(0, cast_vector(v1_Segments));set_attribute_value(1, (v2_SelfIntersect));; return *this; } +Ifc4x3_tc1::IfcCompositeCurveOnSurface Ifc4x3_tc1::IfcCompositeCurveOnSurface::initialize(std::vector< ::Ifc4x3_tc1::IfcSegment > v1_Segments, boost::logic::tribool v2_SelfIntersect) { set_attribute_value(0, cast_vector(v1_Segments));set_attribute_value(1, (v2_SelfIntersect));; return *this; } // Function implementations for IfcCompositeCurveSegment bool Ifc4x3_tc1::IfcCompositeCurveSegment::SameSense() const { bool v = get_attribute_value(1); return v; } void Ifc4x3_tc1::IfcCompositeCurveSegment::setSameSense(const bool& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } -::Ifc4x3_tc1::IfcCurve Ifc4x3_tc1::IfcCompositeCurveSegment::ParentCurve() const { return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3_tc1::IfcCurve>(); } +::Ifc4x3_tc1::IfcCurve Ifc4x3_tc1::IfcCompositeCurveSegment::ParentCurve() const { return ((express::base)(get_attribute_value(2))).as<::Ifc4x3_tc1::IfcCurve>(); } void Ifc4x3_tc1::IfcCompositeCurveSegment::setParentCurve(const ::Ifc4x3_tc1::IfcCurve& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } @@ -9153,14 +9153,14 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcCompositeCurveSegment::Class() { retu Ifc4x3_tc1::IfcCompositeCurveSegment Ifc4x3_tc1::IfcCompositeCurveSegment::initialize(::Ifc4x3_tc1::IfcTransitionCode::Value v1_Transition, bool v2_SameSense, ::Ifc4x3_tc1::IfcCurve v3_ParentCurve) { set_attribute_value(0, (enumeration_reference(&::Ifc4x3_tc1::IfcTransitionCode::Class(),(size_t)v1_Transition)));set_attribute_value(1, (v2_SameSense));set_attribute_value(2, (v3_ParentCurve));; return *this; } // Function implementations for IfcCompositeProfileDef -std::vector< ::Ifc4x3_tc1::IfcProfileDef > Ifc4x3_tc1::IfcCompositeProfileDef::Profiles() const { std::vector es = get_attribute_value(2); return cast_vector<::Ifc4x3_tc1::IfcProfileDef>(es); } -void Ifc4x3_tc1::IfcCompositeProfileDef::setProfiles(const std::vector< ::Ifc4x3_tc1::IfcProfileDef >& v) { set_attribute_value(2, cast_vector(v));if constexpr (false)unset_attribute_value(2); } +std::vector< ::Ifc4x3_tc1::IfcProfileDef > Ifc4x3_tc1::IfcCompositeProfileDef::Profiles() const { std::vector es = get_attribute_value(2); return cast_vector<::Ifc4x3_tc1::IfcProfileDef>(es); } +void Ifc4x3_tc1::IfcCompositeProfileDef::setProfiles(const std::vector< ::Ifc4x3_tc1::IfcProfileDef >& v) { set_attribute_value(2, cast_vector(v));if constexpr (false)unset_attribute_value(2); } std::optional< std::string > Ifc4x3_tc1::IfcCompositeProfileDef::Label() const { if(get_attribute_value(3).isNull()) { return std::nullopt; } std::string v = get_attribute_value(3); return v; } void Ifc4x3_tc1::IfcCompositeProfileDef::setLabel(const std::optional< std::string >& v) { if (v) {set_attribute_value(3, *v);} else {unset_attribute_value(3);} } const ifcopenshell::entity& Ifc4x3_tc1::IfcCompositeProfileDef::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[195]); } -Ifc4x3_tc1::IfcCompositeProfileDef Ifc4x3_tc1::IfcCompositeProfileDef::initialize(::Ifc4x3_tc1::IfcProfileTypeEnum::Value v1_ProfileType, std::optional< std::string > v2_ProfileName, std::vector< ::Ifc4x3_tc1::IfcProfileDef > v3_Profiles, std::optional< std::string > v4_Label) { set_attribute_value(0, (enumeration_reference(&::Ifc4x3_tc1::IfcProfileTypeEnum::Class(),(size_t)v1_ProfileType))); if (v2_ProfileName) {set_attribute_value(1, (*v2_ProfileName)); }set_attribute_value(2, cast_vector(v3_Profiles)); if (v4_Label) {set_attribute_value(3, (*v4_Label)); }; return *this; } +Ifc4x3_tc1::IfcCompositeProfileDef Ifc4x3_tc1::IfcCompositeProfileDef::initialize(::Ifc4x3_tc1::IfcProfileTypeEnum::Value v1_ProfileType, std::optional< std::string > v2_ProfileName, std::vector< ::Ifc4x3_tc1::IfcProfileDef > v3_Profiles, std::optional< std::string > v4_Label) { set_attribute_value(0, (enumeration_reference(&::Ifc4x3_tc1::IfcProfileTypeEnum::Class(),(size_t)v1_ProfileType))); if (v2_ProfileName) {set_attribute_value(1, (*v2_ProfileName)); }set_attribute_value(2, cast_vector(v3_Profiles)); if (v4_Label) {set_attribute_value(3, (*v4_Label)); }; return *this; } // Function implementations for IfcCompressor std::optional< ::Ifc4x3_tc1::IfcCompressorTypeEnum::Value > Ifc4x3_tc1::IfcCompressor::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_tc1::IfcCompressorTypeEnum::FromString(get_attribute_value(8)); } @@ -9176,7 +9176,7 @@ void Ifc4x3_tc1::IfcCompressorType::setPredefinedType(const ::Ifc4x3_tc1::IfcCom const ifcopenshell::entity& Ifc4x3_tc1::IfcCompressorType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[198]); } -Ifc4x3_tc1::IfcCompressorType Ifc4x3_tc1::IfcCompressorType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcCompressorTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcCompressorTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_tc1::IfcCompressorType Ifc4x3_tc1::IfcCompressorType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcCompressorTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcCompressorTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcCondenser std::optional< ::Ifc4x3_tc1::IfcCondenserTypeEnum::Value > Ifc4x3_tc1::IfcCondenser::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_tc1::IfcCondenserTypeEnum::FromString(get_attribute_value(8)); } @@ -9192,10 +9192,10 @@ void Ifc4x3_tc1::IfcCondenserType::setPredefinedType(const ::Ifc4x3_tc1::IfcCond const ifcopenshell::entity& Ifc4x3_tc1::IfcCondenserType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[201]); } -Ifc4x3_tc1::IfcCondenserType Ifc4x3_tc1::IfcCondenserType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcCondenserTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcCondenserTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_tc1::IfcCondenserType Ifc4x3_tc1::IfcCondenserType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcCondenserTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcCondenserTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcConic -::Ifc4x3_tc1::IfcAxis2Placement Ifc4x3_tc1::IfcConic::Position() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcAxis2Placement>(); } +::Ifc4x3_tc1::IfcAxis2Placement Ifc4x3_tc1::IfcConic::Position() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcAxis2Placement>(); } void Ifc4x3_tc1::IfcConic::setPosition(const ::Ifc4x3_tc1::IfcAxis2Placement& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } @@ -9203,17 +9203,17 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcConic::Class() { return *((ifcopenshe Ifc4x3_tc1::IfcConic Ifc4x3_tc1::IfcConic::initialize(::Ifc4x3_tc1::IfcAxis2Placement v1_Position) { set_attribute_value(0, (v1_Position));; return *this; } // Function implementations for IfcConnectedFaceSet -std::vector< ::Ifc4x3_tc1::IfcFace > Ifc4x3_tc1::IfcConnectedFaceSet::CfsFaces() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3_tc1::IfcFace>(es); } -void Ifc4x3_tc1::IfcConnectedFaceSet::setCfsFaces(const std::vector< ::Ifc4x3_tc1::IfcFace >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } +std::vector< ::Ifc4x3_tc1::IfcFace > Ifc4x3_tc1::IfcConnectedFaceSet::CfsFaces() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3_tc1::IfcFace>(es); } +void Ifc4x3_tc1::IfcConnectedFaceSet::setCfsFaces(const std::vector< ::Ifc4x3_tc1::IfcFace >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } const ifcopenshell::entity& Ifc4x3_tc1::IfcConnectedFaceSet::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[204]); } -Ifc4x3_tc1::IfcConnectedFaceSet Ifc4x3_tc1::IfcConnectedFaceSet::initialize(std::vector< ::Ifc4x3_tc1::IfcFace > v1_CfsFaces) { set_attribute_value(0, cast_vector(v1_CfsFaces));; return *this; } +Ifc4x3_tc1::IfcConnectedFaceSet Ifc4x3_tc1::IfcConnectedFaceSet::initialize(std::vector< ::Ifc4x3_tc1::IfcFace > v1_CfsFaces) { set_attribute_value(0, cast_vector(v1_CfsFaces));; return *this; } // Function implementations for IfcConnectionCurveGeometry -::Ifc4x3_tc1::IfcCurveOrEdgeCurve Ifc4x3_tc1::IfcConnectionCurveGeometry::CurveOnRelatingElement() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcCurveOrEdgeCurve>(); } +::Ifc4x3_tc1::IfcCurveOrEdgeCurve Ifc4x3_tc1::IfcConnectionCurveGeometry::CurveOnRelatingElement() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcCurveOrEdgeCurve>(); } void Ifc4x3_tc1::IfcConnectionCurveGeometry::setCurveOnRelatingElement(const ::Ifc4x3_tc1::IfcCurveOrEdgeCurve& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } -::Ifc4x3_tc1::IfcCurveOrEdgeCurve Ifc4x3_tc1::IfcConnectionCurveGeometry::CurveOnRelatedElement() const { if(get_attribute_value(1).isNull()) { return ::Ifc4x3_tc1::IfcCurveOrEdgeCurve{}; } return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3_tc1::IfcCurveOrEdgeCurve>(); } +::Ifc4x3_tc1::IfcCurveOrEdgeCurve Ifc4x3_tc1::IfcConnectionCurveGeometry::CurveOnRelatedElement() const { if(get_attribute_value(1).isNull()) { return ::Ifc4x3_tc1::IfcCurveOrEdgeCurve{}; } return ((express::base)(get_attribute_value(1))).as<::Ifc4x3_tc1::IfcCurveOrEdgeCurve>(); } void Ifc4x3_tc1::IfcConnectionCurveGeometry::setCurveOnRelatedElement(const ::Ifc4x3_tc1::IfcCurveOrEdgeCurve& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } @@ -9239,9 +9239,9 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcConnectionPointEccentricity::Class() Ifc4x3_tc1::IfcConnectionPointEccentricity Ifc4x3_tc1::IfcConnectionPointEccentricity::initialize(::Ifc4x3_tc1::IfcPointOrVertexPoint v1_PointOnRelatingElement, ::Ifc4x3_tc1::IfcPointOrVertexPoint v2_PointOnRelatedElement, std::optional< double > v3_EccentricityInX, std::optional< double > v4_EccentricityInY, std::optional< double > v5_EccentricityInZ) { set_attribute_value(0, (v1_PointOnRelatingElement));set_attribute_value(1, (v2_PointOnRelatedElement)); if (v3_EccentricityInX) {set_attribute_value(2, (*v3_EccentricityInX)); } if (v4_EccentricityInY) {set_attribute_value(3, (*v4_EccentricityInY)); } if (v5_EccentricityInZ) {set_attribute_value(4, (*v5_EccentricityInZ)); }; return *this; } // Function implementations for IfcConnectionPointGeometry -::Ifc4x3_tc1::IfcPointOrVertexPoint Ifc4x3_tc1::IfcConnectionPointGeometry::PointOnRelatingElement() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcPointOrVertexPoint>(); } +::Ifc4x3_tc1::IfcPointOrVertexPoint Ifc4x3_tc1::IfcConnectionPointGeometry::PointOnRelatingElement() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcPointOrVertexPoint>(); } void Ifc4x3_tc1::IfcConnectionPointGeometry::setPointOnRelatingElement(const ::Ifc4x3_tc1::IfcPointOrVertexPoint& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } -::Ifc4x3_tc1::IfcPointOrVertexPoint Ifc4x3_tc1::IfcConnectionPointGeometry::PointOnRelatedElement() const { if(get_attribute_value(1).isNull()) { return ::Ifc4x3_tc1::IfcPointOrVertexPoint{}; } return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3_tc1::IfcPointOrVertexPoint>(); } +::Ifc4x3_tc1::IfcPointOrVertexPoint Ifc4x3_tc1::IfcConnectionPointGeometry::PointOnRelatedElement() const { if(get_attribute_value(1).isNull()) { return ::Ifc4x3_tc1::IfcPointOrVertexPoint{}; } return ((express::base)(get_attribute_value(1))).as<::Ifc4x3_tc1::IfcPointOrVertexPoint>(); } void Ifc4x3_tc1::IfcConnectionPointGeometry::setPointOnRelatedElement(const ::Ifc4x3_tc1::IfcPointOrVertexPoint& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } @@ -9249,9 +9249,9 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcConnectionPointGeometry::Class() { re Ifc4x3_tc1::IfcConnectionPointGeometry Ifc4x3_tc1::IfcConnectionPointGeometry::initialize(::Ifc4x3_tc1::IfcPointOrVertexPoint v1_PointOnRelatingElement, ::Ifc4x3_tc1::IfcPointOrVertexPoint v2_PointOnRelatedElement) { set_attribute_value(0, (v1_PointOnRelatingElement));set_attribute_value(1, (v2_PointOnRelatedElement));; return *this; } // Function implementations for IfcConnectionSurfaceGeometry -::Ifc4x3_tc1::IfcSurfaceOrFaceSurface Ifc4x3_tc1::IfcConnectionSurfaceGeometry::SurfaceOnRelatingElement() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcSurfaceOrFaceSurface>(); } +::Ifc4x3_tc1::IfcSurfaceOrFaceSurface Ifc4x3_tc1::IfcConnectionSurfaceGeometry::SurfaceOnRelatingElement() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcSurfaceOrFaceSurface>(); } void Ifc4x3_tc1::IfcConnectionSurfaceGeometry::setSurfaceOnRelatingElement(const ::Ifc4x3_tc1::IfcSurfaceOrFaceSurface& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } -::Ifc4x3_tc1::IfcSurfaceOrFaceSurface Ifc4x3_tc1::IfcConnectionSurfaceGeometry::SurfaceOnRelatedElement() const { if(get_attribute_value(1).isNull()) { return ::Ifc4x3_tc1::IfcSurfaceOrFaceSurface{}; } return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3_tc1::IfcSurfaceOrFaceSurface>(); } +::Ifc4x3_tc1::IfcSurfaceOrFaceSurface Ifc4x3_tc1::IfcConnectionSurfaceGeometry::SurfaceOnRelatedElement() const { if(get_attribute_value(1).isNull()) { return ::Ifc4x3_tc1::IfcSurfaceOrFaceSurface{}; } return ((express::base)(get_attribute_value(1))).as<::Ifc4x3_tc1::IfcSurfaceOrFaceSurface>(); } void Ifc4x3_tc1::IfcConnectionSurfaceGeometry::setSurfaceOnRelatedElement(const ::Ifc4x3_tc1::IfcSurfaceOrFaceSurface& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } @@ -9259,9 +9259,9 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcConnectionSurfaceGeometry::Class() { Ifc4x3_tc1::IfcConnectionSurfaceGeometry Ifc4x3_tc1::IfcConnectionSurfaceGeometry::initialize(::Ifc4x3_tc1::IfcSurfaceOrFaceSurface v1_SurfaceOnRelatingElement, ::Ifc4x3_tc1::IfcSurfaceOrFaceSurface v2_SurfaceOnRelatedElement) { set_attribute_value(0, (v1_SurfaceOnRelatingElement));set_attribute_value(1, (v2_SurfaceOnRelatedElement));; return *this; } // Function implementations for IfcConnectionVolumeGeometry -::Ifc4x3_tc1::IfcSolidOrShell Ifc4x3_tc1::IfcConnectionVolumeGeometry::VolumeOnRelatingElement() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcSolidOrShell>(); } +::Ifc4x3_tc1::IfcSolidOrShell Ifc4x3_tc1::IfcConnectionVolumeGeometry::VolumeOnRelatingElement() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcSolidOrShell>(); } void Ifc4x3_tc1::IfcConnectionVolumeGeometry::setVolumeOnRelatingElement(const ::Ifc4x3_tc1::IfcSolidOrShell& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } -::Ifc4x3_tc1::IfcSolidOrShell Ifc4x3_tc1::IfcConnectionVolumeGeometry::VolumeOnRelatedElement() const { if(get_attribute_value(1).isNull()) { return ::Ifc4x3_tc1::IfcSolidOrShell{}; } return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3_tc1::IfcSolidOrShell>(); } +::Ifc4x3_tc1::IfcSolidOrShell Ifc4x3_tc1::IfcConnectionVolumeGeometry::VolumeOnRelatedElement() const { if(get_attribute_value(1).isNull()) { return ::Ifc4x3_tc1::IfcSolidOrShell{}; } return ((express::base)(get_attribute_value(1))).as<::Ifc4x3_tc1::IfcSolidOrShell>(); } void Ifc4x3_tc1::IfcConnectionVolumeGeometry::setVolumeOnRelatedElement(const ::Ifc4x3_tc1::IfcSolidOrShell& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } @@ -9277,7 +9277,7 @@ void Ifc4x3_tc1::IfcConstraint::setDescription(const std::optional< std::string void Ifc4x3_tc1::IfcConstraint::setConstraintGrade(const ::Ifc4x3_tc1::IfcConstraintEnum::Value& v) { set_attribute_value(2, enumeration_reference(&::Ifc4x3_tc1::IfcConstraintEnum::Class(), (size_t) v));if constexpr (false)unset_attribute_value(2); } std::optional< std::string > Ifc4x3_tc1::IfcConstraint::ConstraintSource() const { if(get_attribute_value(3).isNull()) { return std::nullopt; } std::string v = get_attribute_value(3); return v; } void Ifc4x3_tc1::IfcConstraint::setConstraintSource(const std::optional< std::string >& v) { if (v) {set_attribute_value(3, *v);} else {unset_attribute_value(3);} } -::Ifc4x3_tc1::IfcActorSelect Ifc4x3_tc1::IfcConstraint::CreatingActor() const { if(get_attribute_value(4).isNull()) { return ::Ifc4x3_tc1::IfcActorSelect{}; } return ((express::Base)(get_attribute_value(4))).as<::Ifc4x3_tc1::IfcActorSelect>(); } +::Ifc4x3_tc1::IfcActorSelect Ifc4x3_tc1::IfcConstraint::CreatingActor() const { if(get_attribute_value(4).isNull()) { return ::Ifc4x3_tc1::IfcActorSelect{}; } return ((express::base)(get_attribute_value(4))).as<::Ifc4x3_tc1::IfcActorSelect>(); } void Ifc4x3_tc1::IfcConstraint::setCreatingActor(const ::Ifc4x3_tc1::IfcActorSelect& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } std::optional< std::string > Ifc4x3_tc1::IfcConstraint::CreationTime() const { if(get_attribute_value(5).isNull()) { return std::nullopt; } std::string v = get_attribute_value(5); return v; } void Ifc4x3_tc1::IfcConstraint::setCreationTime(const std::optional< std::string >& v) { if (v) {set_attribute_value(5, *v);} else {unset_attribute_value(5);} } @@ -9296,7 +9296,7 @@ void Ifc4x3_tc1::IfcConstructionEquipmentResource::setPredefinedType(const std:: const ifcopenshell::entity& Ifc4x3_tc1::IfcConstructionEquipmentResource::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[214]); } -Ifc4x3_tc1::IfcConstructionEquipmentResource Ifc4x3_tc1::IfcConstructionEquipmentResource::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, std::optional< std::string > v6_Identification, std::optional< std::string > v7_LongDescription, ::Ifc4x3_tc1::IfcResourceTime v8_Usage, std::optional< std::vector< ::Ifc4x3_tc1::IfcAppliedValue > > v9_BaseCosts, ::Ifc4x3_tc1::IfcPhysicalQuantity v10_BaseQuantity, std::optional< ::Ifc4x3_tc1::IfcConstructionEquipmentResourceTypeEnum::Value > v11_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); } if (v6_Identification) {set_attribute_value(5, (*v6_Identification)); } if (v7_LongDescription) {set_attribute_value(6, (*v7_LongDescription)); }set_attribute_value(7, (v8_Usage)); if (v9_BaseCosts) {set_attribute_value(8, cast_vector(*v9_BaseCosts)); }set_attribute_value(9, (v10_BaseQuantity)); if (v11_PredefinedType) {set_attribute_value(10, (enumeration_reference(&::Ifc4x3_tc1::IfcConstructionEquipmentResourceTypeEnum::Class(),(size_t)*v11_PredefinedType))); }; return *this; } +Ifc4x3_tc1::IfcConstructionEquipmentResource Ifc4x3_tc1::IfcConstructionEquipmentResource::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, std::optional< std::string > v6_Identification, std::optional< std::string > v7_LongDescription, ::Ifc4x3_tc1::IfcResourceTime v8_Usage, std::optional< std::vector< ::Ifc4x3_tc1::IfcAppliedValue > > v9_BaseCosts, ::Ifc4x3_tc1::IfcPhysicalQuantity v10_BaseQuantity, std::optional< ::Ifc4x3_tc1::IfcConstructionEquipmentResourceTypeEnum::Value > v11_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); } if (v6_Identification) {set_attribute_value(5, (*v6_Identification)); } if (v7_LongDescription) {set_attribute_value(6, (*v7_LongDescription)); }set_attribute_value(7, (v8_Usage)); if (v9_BaseCosts) {set_attribute_value(8, cast_vector(*v9_BaseCosts)); }set_attribute_value(9, (v10_BaseQuantity)); if (v11_PredefinedType) {set_attribute_value(10, (enumeration_reference(&::Ifc4x3_tc1::IfcConstructionEquipmentResourceTypeEnum::Class(),(size_t)*v11_PredefinedType))); }; return *this; } // Function implementations for IfcConstructionEquipmentResourceType ::Ifc4x3_tc1::IfcConstructionEquipmentResourceTypeEnum::Value Ifc4x3_tc1::IfcConstructionEquipmentResourceType::PredefinedType() const { return ::Ifc4x3_tc1::IfcConstructionEquipmentResourceTypeEnum::FromString(get_attribute_value(11)); } @@ -9304,7 +9304,7 @@ void Ifc4x3_tc1::IfcConstructionEquipmentResourceType::setPredefinedType(const : const ifcopenshell::entity& Ifc4x3_tc1::IfcConstructionEquipmentResourceType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[215]); } -Ifc4x3_tc1::IfcConstructionEquipmentResourceType Ifc4x3_tc1::IfcConstructionEquipmentResourceType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::string > v7_Identification, std::optional< std::string > v8_LongDescription, std::optional< std::string > v9_ResourceType, std::optional< std::vector< ::Ifc4x3_tc1::IfcAppliedValue > > v10_BaseCosts, ::Ifc4x3_tc1::IfcPhysicalQuantity v11_BaseQuantity, ::Ifc4x3_tc1::IfcConstructionEquipmentResourceTypeEnum::Value v12_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_Identification) {set_attribute_value(6, (*v7_Identification)); } if (v8_LongDescription) {set_attribute_value(7, (*v8_LongDescription)); } if (v9_ResourceType) {set_attribute_value(8, (*v9_ResourceType)); } if (v10_BaseCosts) {set_attribute_value(9, cast_vector(*v10_BaseCosts)); }set_attribute_value(10, (v11_BaseQuantity));set_attribute_value(11, (enumeration_reference(&::Ifc4x3_tc1::IfcConstructionEquipmentResourceTypeEnum::Class(),(size_t)v12_PredefinedType)));; return *this; } +Ifc4x3_tc1::IfcConstructionEquipmentResourceType Ifc4x3_tc1::IfcConstructionEquipmentResourceType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::string > v7_Identification, std::optional< std::string > v8_LongDescription, std::optional< std::string > v9_ResourceType, std::optional< std::vector< ::Ifc4x3_tc1::IfcAppliedValue > > v10_BaseCosts, ::Ifc4x3_tc1::IfcPhysicalQuantity v11_BaseQuantity, ::Ifc4x3_tc1::IfcConstructionEquipmentResourceTypeEnum::Value v12_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_Identification) {set_attribute_value(6, (*v7_Identification)); } if (v8_LongDescription) {set_attribute_value(7, (*v8_LongDescription)); } if (v9_ResourceType) {set_attribute_value(8, (*v9_ResourceType)); } if (v10_BaseCosts) {set_attribute_value(9, cast_vector(*v10_BaseCosts)); }set_attribute_value(10, (v11_BaseQuantity));set_attribute_value(11, (enumeration_reference(&::Ifc4x3_tc1::IfcConstructionEquipmentResourceTypeEnum::Class(),(size_t)v12_PredefinedType)));; return *this; } // Function implementations for IfcConstructionMaterialResource std::optional< ::Ifc4x3_tc1::IfcConstructionMaterialResourceTypeEnum::Value > Ifc4x3_tc1::IfcConstructionMaterialResource::PredefinedType() const { if(get_attribute_value(10).isNull()) { return std::nullopt; } return ::Ifc4x3_tc1::IfcConstructionMaterialResourceTypeEnum::FromString(get_attribute_value(10)); } @@ -9312,7 +9312,7 @@ void Ifc4x3_tc1::IfcConstructionMaterialResource::setPredefinedType(const std::o const ifcopenshell::entity& Ifc4x3_tc1::IfcConstructionMaterialResource::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[217]); } -Ifc4x3_tc1::IfcConstructionMaterialResource Ifc4x3_tc1::IfcConstructionMaterialResource::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, std::optional< std::string > v6_Identification, std::optional< std::string > v7_LongDescription, ::Ifc4x3_tc1::IfcResourceTime v8_Usage, std::optional< std::vector< ::Ifc4x3_tc1::IfcAppliedValue > > v9_BaseCosts, ::Ifc4x3_tc1::IfcPhysicalQuantity v10_BaseQuantity, std::optional< ::Ifc4x3_tc1::IfcConstructionMaterialResourceTypeEnum::Value > v11_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); } if (v6_Identification) {set_attribute_value(5, (*v6_Identification)); } if (v7_LongDescription) {set_attribute_value(6, (*v7_LongDescription)); }set_attribute_value(7, (v8_Usage)); if (v9_BaseCosts) {set_attribute_value(8, cast_vector(*v9_BaseCosts)); }set_attribute_value(9, (v10_BaseQuantity)); if (v11_PredefinedType) {set_attribute_value(10, (enumeration_reference(&::Ifc4x3_tc1::IfcConstructionMaterialResourceTypeEnum::Class(),(size_t)*v11_PredefinedType))); }; return *this; } +Ifc4x3_tc1::IfcConstructionMaterialResource Ifc4x3_tc1::IfcConstructionMaterialResource::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, std::optional< std::string > v6_Identification, std::optional< std::string > v7_LongDescription, ::Ifc4x3_tc1::IfcResourceTime v8_Usage, std::optional< std::vector< ::Ifc4x3_tc1::IfcAppliedValue > > v9_BaseCosts, ::Ifc4x3_tc1::IfcPhysicalQuantity v10_BaseQuantity, std::optional< ::Ifc4x3_tc1::IfcConstructionMaterialResourceTypeEnum::Value > v11_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); } if (v6_Identification) {set_attribute_value(5, (*v6_Identification)); } if (v7_LongDescription) {set_attribute_value(6, (*v7_LongDescription)); }set_attribute_value(7, (v8_Usage)); if (v9_BaseCosts) {set_attribute_value(8, cast_vector(*v9_BaseCosts)); }set_attribute_value(9, (v10_BaseQuantity)); if (v11_PredefinedType) {set_attribute_value(10, (enumeration_reference(&::Ifc4x3_tc1::IfcConstructionMaterialResourceTypeEnum::Class(),(size_t)*v11_PredefinedType))); }; return *this; } // Function implementations for IfcConstructionMaterialResourceType ::Ifc4x3_tc1::IfcConstructionMaterialResourceTypeEnum::Value Ifc4x3_tc1::IfcConstructionMaterialResourceType::PredefinedType() const { return ::Ifc4x3_tc1::IfcConstructionMaterialResourceTypeEnum::FromString(get_attribute_value(11)); } @@ -9320,7 +9320,7 @@ void Ifc4x3_tc1::IfcConstructionMaterialResourceType::setPredefinedType(const :: const ifcopenshell::entity& Ifc4x3_tc1::IfcConstructionMaterialResourceType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[218]); } -Ifc4x3_tc1::IfcConstructionMaterialResourceType Ifc4x3_tc1::IfcConstructionMaterialResourceType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::string > v7_Identification, std::optional< std::string > v8_LongDescription, std::optional< std::string > v9_ResourceType, std::optional< std::vector< ::Ifc4x3_tc1::IfcAppliedValue > > v10_BaseCosts, ::Ifc4x3_tc1::IfcPhysicalQuantity v11_BaseQuantity, ::Ifc4x3_tc1::IfcConstructionMaterialResourceTypeEnum::Value v12_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_Identification) {set_attribute_value(6, (*v7_Identification)); } if (v8_LongDescription) {set_attribute_value(7, (*v8_LongDescription)); } if (v9_ResourceType) {set_attribute_value(8, (*v9_ResourceType)); } if (v10_BaseCosts) {set_attribute_value(9, cast_vector(*v10_BaseCosts)); }set_attribute_value(10, (v11_BaseQuantity));set_attribute_value(11, (enumeration_reference(&::Ifc4x3_tc1::IfcConstructionMaterialResourceTypeEnum::Class(),(size_t)v12_PredefinedType)));; return *this; } +Ifc4x3_tc1::IfcConstructionMaterialResourceType Ifc4x3_tc1::IfcConstructionMaterialResourceType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::string > v7_Identification, std::optional< std::string > v8_LongDescription, std::optional< std::string > v9_ResourceType, std::optional< std::vector< ::Ifc4x3_tc1::IfcAppliedValue > > v10_BaseCosts, ::Ifc4x3_tc1::IfcPhysicalQuantity v11_BaseQuantity, ::Ifc4x3_tc1::IfcConstructionMaterialResourceTypeEnum::Value v12_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_Identification) {set_attribute_value(6, (*v7_Identification)); } if (v8_LongDescription) {set_attribute_value(7, (*v8_LongDescription)); } if (v9_ResourceType) {set_attribute_value(8, (*v9_ResourceType)); } if (v10_BaseCosts) {set_attribute_value(9, cast_vector(*v10_BaseCosts)); }set_attribute_value(10, (v11_BaseQuantity));set_attribute_value(11, (enumeration_reference(&::Ifc4x3_tc1::IfcConstructionMaterialResourceTypeEnum::Class(),(size_t)v12_PredefinedType)));; return *this; } // Function implementations for IfcConstructionProductResource std::optional< ::Ifc4x3_tc1::IfcConstructionProductResourceTypeEnum::Value > Ifc4x3_tc1::IfcConstructionProductResource::PredefinedType() const { if(get_attribute_value(10).isNull()) { return std::nullopt; } return ::Ifc4x3_tc1::IfcConstructionProductResourceTypeEnum::FromString(get_attribute_value(10)); } @@ -9328,7 +9328,7 @@ void Ifc4x3_tc1::IfcConstructionProductResource::setPredefinedType(const std::op const ifcopenshell::entity& Ifc4x3_tc1::IfcConstructionProductResource::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[220]); } -Ifc4x3_tc1::IfcConstructionProductResource Ifc4x3_tc1::IfcConstructionProductResource::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, std::optional< std::string > v6_Identification, std::optional< std::string > v7_LongDescription, ::Ifc4x3_tc1::IfcResourceTime v8_Usage, std::optional< std::vector< ::Ifc4x3_tc1::IfcAppliedValue > > v9_BaseCosts, ::Ifc4x3_tc1::IfcPhysicalQuantity v10_BaseQuantity, std::optional< ::Ifc4x3_tc1::IfcConstructionProductResourceTypeEnum::Value > v11_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); } if (v6_Identification) {set_attribute_value(5, (*v6_Identification)); } if (v7_LongDescription) {set_attribute_value(6, (*v7_LongDescription)); }set_attribute_value(7, (v8_Usage)); if (v9_BaseCosts) {set_attribute_value(8, cast_vector(*v9_BaseCosts)); }set_attribute_value(9, (v10_BaseQuantity)); if (v11_PredefinedType) {set_attribute_value(10, (enumeration_reference(&::Ifc4x3_tc1::IfcConstructionProductResourceTypeEnum::Class(),(size_t)*v11_PredefinedType))); }; return *this; } +Ifc4x3_tc1::IfcConstructionProductResource Ifc4x3_tc1::IfcConstructionProductResource::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, std::optional< std::string > v6_Identification, std::optional< std::string > v7_LongDescription, ::Ifc4x3_tc1::IfcResourceTime v8_Usage, std::optional< std::vector< ::Ifc4x3_tc1::IfcAppliedValue > > v9_BaseCosts, ::Ifc4x3_tc1::IfcPhysicalQuantity v10_BaseQuantity, std::optional< ::Ifc4x3_tc1::IfcConstructionProductResourceTypeEnum::Value > v11_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); } if (v6_Identification) {set_attribute_value(5, (*v6_Identification)); } if (v7_LongDescription) {set_attribute_value(6, (*v7_LongDescription)); }set_attribute_value(7, (v8_Usage)); if (v9_BaseCosts) {set_attribute_value(8, cast_vector(*v9_BaseCosts)); }set_attribute_value(9, (v10_BaseQuantity)); if (v11_PredefinedType) {set_attribute_value(10, (enumeration_reference(&::Ifc4x3_tc1::IfcConstructionProductResourceTypeEnum::Class(),(size_t)*v11_PredefinedType))); }; return *this; } // Function implementations for IfcConstructionProductResourceType ::Ifc4x3_tc1::IfcConstructionProductResourceTypeEnum::Value Ifc4x3_tc1::IfcConstructionProductResourceType::PredefinedType() const { return ::Ifc4x3_tc1::IfcConstructionProductResourceTypeEnum::FromString(get_attribute_value(11)); } @@ -9336,29 +9336,29 @@ void Ifc4x3_tc1::IfcConstructionProductResourceType::setPredefinedType(const ::I const ifcopenshell::entity& Ifc4x3_tc1::IfcConstructionProductResourceType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[221]); } -Ifc4x3_tc1::IfcConstructionProductResourceType Ifc4x3_tc1::IfcConstructionProductResourceType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::string > v7_Identification, std::optional< std::string > v8_LongDescription, std::optional< std::string > v9_ResourceType, std::optional< std::vector< ::Ifc4x3_tc1::IfcAppliedValue > > v10_BaseCosts, ::Ifc4x3_tc1::IfcPhysicalQuantity v11_BaseQuantity, ::Ifc4x3_tc1::IfcConstructionProductResourceTypeEnum::Value v12_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_Identification) {set_attribute_value(6, (*v7_Identification)); } if (v8_LongDescription) {set_attribute_value(7, (*v8_LongDescription)); } if (v9_ResourceType) {set_attribute_value(8, (*v9_ResourceType)); } if (v10_BaseCosts) {set_attribute_value(9, cast_vector(*v10_BaseCosts)); }set_attribute_value(10, (v11_BaseQuantity));set_attribute_value(11, (enumeration_reference(&::Ifc4x3_tc1::IfcConstructionProductResourceTypeEnum::Class(),(size_t)v12_PredefinedType)));; return *this; } +Ifc4x3_tc1::IfcConstructionProductResourceType Ifc4x3_tc1::IfcConstructionProductResourceType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::string > v7_Identification, std::optional< std::string > v8_LongDescription, std::optional< std::string > v9_ResourceType, std::optional< std::vector< ::Ifc4x3_tc1::IfcAppliedValue > > v10_BaseCosts, ::Ifc4x3_tc1::IfcPhysicalQuantity v11_BaseQuantity, ::Ifc4x3_tc1::IfcConstructionProductResourceTypeEnum::Value v12_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_Identification) {set_attribute_value(6, (*v7_Identification)); } if (v8_LongDescription) {set_attribute_value(7, (*v8_LongDescription)); } if (v9_ResourceType) {set_attribute_value(8, (*v9_ResourceType)); } if (v10_BaseCosts) {set_attribute_value(9, cast_vector(*v10_BaseCosts)); }set_attribute_value(10, (v11_BaseQuantity));set_attribute_value(11, (enumeration_reference(&::Ifc4x3_tc1::IfcConstructionProductResourceTypeEnum::Class(),(size_t)v12_PredefinedType)));; return *this; } // Function implementations for IfcConstructionResource -::Ifc4x3_tc1::IfcResourceTime Ifc4x3_tc1::IfcConstructionResource::Usage() const { if(get_attribute_value(7).isNull()) { return ::Ifc4x3_tc1::IfcResourceTime{}; } return ((express::Base)(get_attribute_value(7))).as<::Ifc4x3_tc1::IfcResourceTime>(); } +::Ifc4x3_tc1::IfcResourceTime Ifc4x3_tc1::IfcConstructionResource::Usage() const { if(get_attribute_value(7).isNull()) { return ::Ifc4x3_tc1::IfcResourceTime{}; } return ((express::base)(get_attribute_value(7))).as<::Ifc4x3_tc1::IfcResourceTime>(); } void Ifc4x3_tc1::IfcConstructionResource::setUsage(const ::Ifc4x3_tc1::IfcResourceTime& v) { set_attribute_value(7, v);if constexpr (false)unset_attribute_value(7); } -std::optional< std::vector< ::Ifc4x3_tc1::IfcAppliedValue > > Ifc4x3_tc1::IfcConstructionResource::BaseCosts() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(8); return cast_vector<::Ifc4x3_tc1::IfcAppliedValue>(es); } -void Ifc4x3_tc1::IfcConstructionResource::setBaseCosts(const std::optional< std::vector< ::Ifc4x3_tc1::IfcAppliedValue > >& v) { if (v) {set_attribute_value(8, cast_vector(*v));} else {unset_attribute_value(8);} } -::Ifc4x3_tc1::IfcPhysicalQuantity Ifc4x3_tc1::IfcConstructionResource::BaseQuantity() const { if(get_attribute_value(9).isNull()) { return ::Ifc4x3_tc1::IfcPhysicalQuantity{}; } return ((express::Base)(get_attribute_value(9))).as<::Ifc4x3_tc1::IfcPhysicalQuantity>(); } +std::optional< std::vector< ::Ifc4x3_tc1::IfcAppliedValue > > Ifc4x3_tc1::IfcConstructionResource::BaseCosts() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(8); return cast_vector<::Ifc4x3_tc1::IfcAppliedValue>(es); } +void Ifc4x3_tc1::IfcConstructionResource::setBaseCosts(const std::optional< std::vector< ::Ifc4x3_tc1::IfcAppliedValue > >& v) { if (v) {set_attribute_value(8, cast_vector(*v));} else {unset_attribute_value(8);} } +::Ifc4x3_tc1::IfcPhysicalQuantity Ifc4x3_tc1::IfcConstructionResource::BaseQuantity() const { if(get_attribute_value(9).isNull()) { return ::Ifc4x3_tc1::IfcPhysicalQuantity{}; } return ((express::base)(get_attribute_value(9))).as<::Ifc4x3_tc1::IfcPhysicalQuantity>(); } void Ifc4x3_tc1::IfcConstructionResource::setBaseQuantity(const ::Ifc4x3_tc1::IfcPhysicalQuantity& v) { set_attribute_value(9, v);if constexpr (false)unset_attribute_value(9); } const ifcopenshell::entity& Ifc4x3_tc1::IfcConstructionResource::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[223]); } -Ifc4x3_tc1::IfcConstructionResource Ifc4x3_tc1::IfcConstructionResource::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, std::optional< std::string > v6_Identification, std::optional< std::string > v7_LongDescription, ::Ifc4x3_tc1::IfcResourceTime v8_Usage, std::optional< std::vector< ::Ifc4x3_tc1::IfcAppliedValue > > v9_BaseCosts, ::Ifc4x3_tc1::IfcPhysicalQuantity v10_BaseQuantity) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); } if (v6_Identification) {set_attribute_value(5, (*v6_Identification)); } if (v7_LongDescription) {set_attribute_value(6, (*v7_LongDescription)); }set_attribute_value(7, (v8_Usage)); if (v9_BaseCosts) {set_attribute_value(8, cast_vector(*v9_BaseCosts)); }set_attribute_value(9, (v10_BaseQuantity));; return *this; } +Ifc4x3_tc1::IfcConstructionResource Ifc4x3_tc1::IfcConstructionResource::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, std::optional< std::string > v6_Identification, std::optional< std::string > v7_LongDescription, ::Ifc4x3_tc1::IfcResourceTime v8_Usage, std::optional< std::vector< ::Ifc4x3_tc1::IfcAppliedValue > > v9_BaseCosts, ::Ifc4x3_tc1::IfcPhysicalQuantity v10_BaseQuantity) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); } if (v6_Identification) {set_attribute_value(5, (*v6_Identification)); } if (v7_LongDescription) {set_attribute_value(6, (*v7_LongDescription)); }set_attribute_value(7, (v8_Usage)); if (v9_BaseCosts) {set_attribute_value(8, cast_vector(*v9_BaseCosts)); }set_attribute_value(9, (v10_BaseQuantity));; return *this; } // Function implementations for IfcConstructionResourceType -std::optional< std::vector< ::Ifc4x3_tc1::IfcAppliedValue > > Ifc4x3_tc1::IfcConstructionResourceType::BaseCosts() const { if(get_attribute_value(9).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(9); return cast_vector<::Ifc4x3_tc1::IfcAppliedValue>(es); } -void Ifc4x3_tc1::IfcConstructionResourceType::setBaseCosts(const std::optional< std::vector< ::Ifc4x3_tc1::IfcAppliedValue > >& v) { if (v) {set_attribute_value(9, cast_vector(*v));} else {unset_attribute_value(9);} } -::Ifc4x3_tc1::IfcPhysicalQuantity Ifc4x3_tc1::IfcConstructionResourceType::BaseQuantity() const { if(get_attribute_value(10).isNull()) { return ::Ifc4x3_tc1::IfcPhysicalQuantity{}; } return ((express::Base)(get_attribute_value(10))).as<::Ifc4x3_tc1::IfcPhysicalQuantity>(); } +std::optional< std::vector< ::Ifc4x3_tc1::IfcAppliedValue > > Ifc4x3_tc1::IfcConstructionResourceType::BaseCosts() const { if(get_attribute_value(9).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(9); return cast_vector<::Ifc4x3_tc1::IfcAppliedValue>(es); } +void Ifc4x3_tc1::IfcConstructionResourceType::setBaseCosts(const std::optional< std::vector< ::Ifc4x3_tc1::IfcAppliedValue > >& v) { if (v) {set_attribute_value(9, cast_vector(*v));} else {unset_attribute_value(9);} } +::Ifc4x3_tc1::IfcPhysicalQuantity Ifc4x3_tc1::IfcConstructionResourceType::BaseQuantity() const { if(get_attribute_value(10).isNull()) { return ::Ifc4x3_tc1::IfcPhysicalQuantity{}; } return ((express::base)(get_attribute_value(10))).as<::Ifc4x3_tc1::IfcPhysicalQuantity>(); } void Ifc4x3_tc1::IfcConstructionResourceType::setBaseQuantity(const ::Ifc4x3_tc1::IfcPhysicalQuantity& v) { set_attribute_value(10, v);if constexpr (false)unset_attribute_value(10); } const ifcopenshell::entity& Ifc4x3_tc1::IfcConstructionResourceType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[224]); } -Ifc4x3_tc1::IfcConstructionResourceType Ifc4x3_tc1::IfcConstructionResourceType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::string > v7_Identification, std::optional< std::string > v8_LongDescription, std::optional< std::string > v9_ResourceType, std::optional< std::vector< ::Ifc4x3_tc1::IfcAppliedValue > > v10_BaseCosts, ::Ifc4x3_tc1::IfcPhysicalQuantity v11_BaseQuantity) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_Identification) {set_attribute_value(6, (*v7_Identification)); } if (v8_LongDescription) {set_attribute_value(7, (*v8_LongDescription)); } if (v9_ResourceType) {set_attribute_value(8, (*v9_ResourceType)); } if (v10_BaseCosts) {set_attribute_value(9, cast_vector(*v10_BaseCosts)); }set_attribute_value(10, (v11_BaseQuantity));; return *this; } +Ifc4x3_tc1::IfcConstructionResourceType Ifc4x3_tc1::IfcConstructionResourceType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::string > v7_Identification, std::optional< std::string > v8_LongDescription, std::optional< std::string > v9_ResourceType, std::optional< std::vector< ::Ifc4x3_tc1::IfcAppliedValue > > v10_BaseCosts, ::Ifc4x3_tc1::IfcPhysicalQuantity v11_BaseQuantity) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_Identification) {set_attribute_value(6, (*v7_Identification)); } if (v8_LongDescription) {set_attribute_value(7, (*v8_LongDescription)); } if (v9_ResourceType) {set_attribute_value(8, (*v9_ResourceType)); } if (v10_BaseCosts) {set_attribute_value(9, cast_vector(*v10_BaseCosts)); }set_attribute_value(10, (v11_BaseQuantity));; return *this; } // Function implementations for IfcContext std::optional< std::string > Ifc4x3_tc1::IfcContext::ObjectType() const { if(get_attribute_value(4).isNull()) { return std::nullopt; } std::string v = get_attribute_value(4); return v; } @@ -9367,16 +9367,16 @@ std::optional< std::string > Ifc4x3_tc1::IfcContext::LongName() const { if(get_a void Ifc4x3_tc1::IfcContext::setLongName(const std::optional< std::string >& v) { if (v) {set_attribute_value(5, *v);} else {unset_attribute_value(5);} } std::optional< std::string > Ifc4x3_tc1::IfcContext::Phase() const { if(get_attribute_value(6).isNull()) { return std::nullopt; } std::string v = get_attribute_value(6); return v; } void Ifc4x3_tc1::IfcContext::setPhase(const std::optional< std::string >& v) { if (v) {set_attribute_value(6, *v);} else {unset_attribute_value(6);} } -std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationContext > > Ifc4x3_tc1::IfcContext::RepresentationContexts() const { if(get_attribute_value(7).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(7); return cast_vector<::Ifc4x3_tc1::IfcRepresentationContext>(es); } -void Ifc4x3_tc1::IfcContext::setRepresentationContexts(const std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationContext > >& v) { if (v) {set_attribute_value(7, cast_vector(*v));} else {unset_attribute_value(7);} } -::Ifc4x3_tc1::IfcUnitAssignment Ifc4x3_tc1::IfcContext::UnitsInContext() const { if(get_attribute_value(8).isNull()) { return ::Ifc4x3_tc1::IfcUnitAssignment{}; } return ((express::Base)(get_attribute_value(8))).as<::Ifc4x3_tc1::IfcUnitAssignment>(); } +std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationContext > > Ifc4x3_tc1::IfcContext::RepresentationContexts() const { if(get_attribute_value(7).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(7); return cast_vector<::Ifc4x3_tc1::IfcRepresentationContext>(es); } +void Ifc4x3_tc1::IfcContext::setRepresentationContexts(const std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationContext > >& v) { if (v) {set_attribute_value(7, cast_vector(*v));} else {unset_attribute_value(7);} } +::Ifc4x3_tc1::IfcUnitAssignment Ifc4x3_tc1::IfcContext::UnitsInContext() const { if(get_attribute_value(8).isNull()) { return ::Ifc4x3_tc1::IfcUnitAssignment{}; } return ((express::base)(get_attribute_value(8))).as<::Ifc4x3_tc1::IfcUnitAssignment>(); } void Ifc4x3_tc1::IfcContext::setUnitsInContext(const ::Ifc4x3_tc1::IfcUnitAssignment& v) { set_attribute_value(8, v);if constexpr (false)unset_attribute_value(8); } std::vector<::Ifc4x3_tc1::IfcRelDefinesByProperties> Ifc4x3_tc1::IfcContext::IsDefinedBy() const { return cast_vector(file()->get_inverse(data()->id(), IFC4X3_TC1_types[931], 4)); } std::vector<::Ifc4x3_tc1::IfcRelDeclares> Ifc4x3_tc1::IfcContext::Declares() const { return cast_vector(file()->get_inverse(data()->id(), IFC4X3_TC1_types[927], 4)); } const ifcopenshell::entity& Ifc4x3_tc1::IfcContext::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[225]); } -Ifc4x3_tc1::IfcContext Ifc4x3_tc1::IfcContext::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, std::optional< std::string > v6_LongName, std::optional< std::string > v7_Phase, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationContext > > v8_RepresentationContexts, ::Ifc4x3_tc1::IfcUnitAssignment v9_UnitsInContext) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); } if (v6_LongName) {set_attribute_value(5, (*v6_LongName)); } if (v7_Phase) {set_attribute_value(6, (*v7_Phase)); } if (v8_RepresentationContexts) {set_attribute_value(7, cast_vector(*v8_RepresentationContexts)); }set_attribute_value(8, (v9_UnitsInContext));; return *this; } +Ifc4x3_tc1::IfcContext Ifc4x3_tc1::IfcContext::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, std::optional< std::string > v6_LongName, std::optional< std::string > v7_Phase, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationContext > > v8_RepresentationContexts, ::Ifc4x3_tc1::IfcUnitAssignment v9_UnitsInContext) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); } if (v6_LongName) {set_attribute_value(5, (*v6_LongName)); } if (v7_Phase) {set_attribute_value(6, (*v7_Phase)); } if (v8_RepresentationContexts) {set_attribute_value(7, cast_vector(*v8_RepresentationContexts)); }set_attribute_value(8, (v9_UnitsInContext));; return *this; } // Function implementations for IfcContextDependentUnit std::string Ifc4x3_tc1::IfcContextDependentUnit::Name() const { std::string v = get_attribute_value(2); return v; } @@ -9410,12 +9410,12 @@ void Ifc4x3_tc1::IfcControllerType::setPredefinedType(const ::Ifc4x3_tc1::IfcCon const ifcopenshell::entity& Ifc4x3_tc1::IfcControllerType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[230]); } -Ifc4x3_tc1::IfcControllerType Ifc4x3_tc1::IfcControllerType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcControllerTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcControllerTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_tc1::IfcControllerType Ifc4x3_tc1::IfcControllerType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcControllerTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcControllerTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcConversionBasedUnit std::string Ifc4x3_tc1::IfcConversionBasedUnit::Name() const { std::string v = get_attribute_value(2); return v; } void Ifc4x3_tc1::IfcConversionBasedUnit::setName(const std::string& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } -::Ifc4x3_tc1::IfcMeasureWithUnit Ifc4x3_tc1::IfcConversionBasedUnit::ConversionFactor() const { return ((express::Base)(get_attribute_value(3))).as<::Ifc4x3_tc1::IfcMeasureWithUnit>(); } +::Ifc4x3_tc1::IfcMeasureWithUnit Ifc4x3_tc1::IfcConversionBasedUnit::ConversionFactor() const { return ((express::base)(get_attribute_value(3))).as<::Ifc4x3_tc1::IfcMeasureWithUnit>(); } void Ifc4x3_tc1::IfcConversionBasedUnit::setConversionFactor(const ::Ifc4x3_tc1::IfcMeasureWithUnit& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } std::vector<::Ifc4x3_tc1::IfcExternalReferenceRelationship> Ifc4x3_tc1::IfcConversionBasedUnit::HasExternalReference() const { return cast_vector(file()->get_inverse(data()->id(), IFC4X3_TC1_types[427], 3)); } @@ -9445,7 +9445,7 @@ void Ifc4x3_tc1::IfcConveyorSegmentType::setPredefinedType(const ::Ifc4x3_tc1::I const ifcopenshell::entity& Ifc4x3_tc1::IfcConveyorSegmentType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[235]); } -Ifc4x3_tc1::IfcConveyorSegmentType Ifc4x3_tc1::IfcConveyorSegmentType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcConveyorSegmentTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcConveyorSegmentTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_tc1::IfcConveyorSegmentType Ifc4x3_tc1::IfcConveyorSegmentType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcConveyorSegmentTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcConveyorSegmentTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcCooledBeam std::optional< ::Ifc4x3_tc1::IfcCooledBeamTypeEnum::Value > Ifc4x3_tc1::IfcCooledBeam::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_tc1::IfcCooledBeamTypeEnum::FromString(get_attribute_value(8)); } @@ -9461,7 +9461,7 @@ void Ifc4x3_tc1::IfcCooledBeamType::setPredefinedType(const ::Ifc4x3_tc1::IfcCoo const ifcopenshell::entity& Ifc4x3_tc1::IfcCooledBeamType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[238]); } -Ifc4x3_tc1::IfcCooledBeamType Ifc4x3_tc1::IfcCooledBeamType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcCooledBeamTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcCooledBeamTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_tc1::IfcCooledBeamType Ifc4x3_tc1::IfcCooledBeamType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcCooledBeamTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcCooledBeamTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcCoolingTower std::optional< ::Ifc4x3_tc1::IfcCoolingTowerTypeEnum::Value > Ifc4x3_tc1::IfcCoolingTower::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_tc1::IfcCoolingTowerTypeEnum::FromString(get_attribute_value(8)); } @@ -9477,12 +9477,12 @@ void Ifc4x3_tc1::IfcCoolingTowerType::setPredefinedType(const ::Ifc4x3_tc1::IfcC const ifcopenshell::entity& Ifc4x3_tc1::IfcCoolingTowerType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[241]); } -Ifc4x3_tc1::IfcCoolingTowerType Ifc4x3_tc1::IfcCoolingTowerType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcCoolingTowerTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcCoolingTowerTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_tc1::IfcCoolingTowerType Ifc4x3_tc1::IfcCoolingTowerType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcCoolingTowerTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcCoolingTowerTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcCoordinateOperation -::Ifc4x3_tc1::IfcCoordinateReferenceSystemSelect Ifc4x3_tc1::IfcCoordinateOperation::SourceCRS() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcCoordinateReferenceSystemSelect>(); } +::Ifc4x3_tc1::IfcCoordinateReferenceSystemSelect Ifc4x3_tc1::IfcCoordinateOperation::SourceCRS() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcCoordinateReferenceSystemSelect>(); } void Ifc4x3_tc1::IfcCoordinateOperation::setSourceCRS(const ::Ifc4x3_tc1::IfcCoordinateReferenceSystemSelect& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } -::Ifc4x3_tc1::IfcCoordinateReferenceSystem Ifc4x3_tc1::IfcCoordinateOperation::TargetCRS() const { return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3_tc1::IfcCoordinateReferenceSystem>(); } +::Ifc4x3_tc1::IfcCoordinateReferenceSystem Ifc4x3_tc1::IfcCoordinateOperation::TargetCRS() const { return ((express::base)(get_attribute_value(1))).as<::Ifc4x3_tc1::IfcCoordinateReferenceSystem>(); } void Ifc4x3_tc1::IfcCoordinateOperation::setTargetCRS(const ::Ifc4x3_tc1::IfcCoordinateReferenceSystem& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } @@ -9517,14 +9517,14 @@ Ifc4x3_tc1::IfcCosineSpiral Ifc4x3_tc1::IfcCosineSpiral::initialize(::Ifc4x3_tc1 // Function implementations for IfcCostItem std::optional< ::Ifc4x3_tc1::IfcCostItemTypeEnum::Value > Ifc4x3_tc1::IfcCostItem::PredefinedType() const { if(get_attribute_value(6).isNull()) { return std::nullopt; } return ::Ifc4x3_tc1::IfcCostItemTypeEnum::FromString(get_attribute_value(6)); } void Ifc4x3_tc1::IfcCostItem::setPredefinedType(const std::optional< ::Ifc4x3_tc1::IfcCostItemTypeEnum::Value >& v) { if (v) {set_attribute_value(6, enumeration_reference(&::Ifc4x3_tc1::IfcCostItemTypeEnum::Class(), (size_t) *v));} else {unset_attribute_value(6);} } -std::optional< std::vector< ::Ifc4x3_tc1::IfcCostValue > > Ifc4x3_tc1::IfcCostItem::CostValues() const { if(get_attribute_value(7).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(7); return cast_vector<::Ifc4x3_tc1::IfcCostValue>(es); } -void Ifc4x3_tc1::IfcCostItem::setCostValues(const std::optional< std::vector< ::Ifc4x3_tc1::IfcCostValue > >& v) { if (v) {set_attribute_value(7, cast_vector(*v));} else {unset_attribute_value(7);} } -std::optional< std::vector< ::Ifc4x3_tc1::IfcPhysicalQuantity > > Ifc4x3_tc1::IfcCostItem::CostQuantities() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(8); return cast_vector<::Ifc4x3_tc1::IfcPhysicalQuantity>(es); } -void Ifc4x3_tc1::IfcCostItem::setCostQuantities(const std::optional< std::vector< ::Ifc4x3_tc1::IfcPhysicalQuantity > >& v) { if (v) {set_attribute_value(8, cast_vector(*v));} else {unset_attribute_value(8);} } +std::optional< std::vector< ::Ifc4x3_tc1::IfcCostValue > > Ifc4x3_tc1::IfcCostItem::CostValues() const { if(get_attribute_value(7).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(7); return cast_vector<::Ifc4x3_tc1::IfcCostValue>(es); } +void Ifc4x3_tc1::IfcCostItem::setCostValues(const std::optional< std::vector< ::Ifc4x3_tc1::IfcCostValue > >& v) { if (v) {set_attribute_value(7, cast_vector(*v));} else {unset_attribute_value(7);} } +std::optional< std::vector< ::Ifc4x3_tc1::IfcPhysicalQuantity > > Ifc4x3_tc1::IfcCostItem::CostQuantities() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(8); return cast_vector<::Ifc4x3_tc1::IfcPhysicalQuantity>(es); } +void Ifc4x3_tc1::IfcCostItem::setCostQuantities(const std::optional< std::vector< ::Ifc4x3_tc1::IfcPhysicalQuantity > >& v) { if (v) {set_attribute_value(8, cast_vector(*v));} else {unset_attribute_value(8);} } const ifcopenshell::entity& Ifc4x3_tc1::IfcCostItem::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[247]); } -Ifc4x3_tc1::IfcCostItem Ifc4x3_tc1::IfcCostItem::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, std::optional< std::string > v6_Identification, std::optional< ::Ifc4x3_tc1::IfcCostItemTypeEnum::Value > v7_PredefinedType, std::optional< std::vector< ::Ifc4x3_tc1::IfcCostValue > > v8_CostValues, std::optional< std::vector< ::Ifc4x3_tc1::IfcPhysicalQuantity > > v9_CostQuantities) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); } if (v6_Identification) {set_attribute_value(5, (*v6_Identification)); } if (v7_PredefinedType) {set_attribute_value(6, (enumeration_reference(&::Ifc4x3_tc1::IfcCostItemTypeEnum::Class(),(size_t)*v7_PredefinedType))); } if (v8_CostValues) {set_attribute_value(7, cast_vector(*v8_CostValues)); } if (v9_CostQuantities) {set_attribute_value(8, cast_vector(*v9_CostQuantities)); }; return *this; } +Ifc4x3_tc1::IfcCostItem Ifc4x3_tc1::IfcCostItem::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, std::optional< std::string > v6_Identification, std::optional< ::Ifc4x3_tc1::IfcCostItemTypeEnum::Value > v7_PredefinedType, std::optional< std::vector< ::Ifc4x3_tc1::IfcCostValue > > v8_CostValues, std::optional< std::vector< ::Ifc4x3_tc1::IfcPhysicalQuantity > > v9_CostQuantities) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); } if (v6_Identification) {set_attribute_value(5, (*v6_Identification)); } if (v7_PredefinedType) {set_attribute_value(6, (enumeration_reference(&::Ifc4x3_tc1::IfcCostItemTypeEnum::Class(),(size_t)*v7_PredefinedType))); } if (v8_CostValues) {set_attribute_value(7, cast_vector(*v8_CostValues)); } if (v9_CostQuantities) {set_attribute_value(8, cast_vector(*v9_CostQuantities)); }; return *this; } // Function implementations for IfcCostSchedule std::optional< ::Ifc4x3_tc1::IfcCostScheduleTypeEnum::Value > Ifc4x3_tc1::IfcCostSchedule::PredefinedType() const { if(get_attribute_value(6).isNull()) { return std::nullopt; } return ::Ifc4x3_tc1::IfcCostScheduleTypeEnum::FromString(get_attribute_value(6)); } @@ -9544,7 +9544,7 @@ Ifc4x3_tc1::IfcCostSchedule Ifc4x3_tc1::IfcCostSchedule::initialize(std::string const ifcopenshell::entity& Ifc4x3_tc1::IfcCostValue::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[251]); } -Ifc4x3_tc1::IfcCostValue Ifc4x3_tc1::IfcCostValue::initialize(std::optional< std::string > v1_Name, std::optional< std::string > v2_Description, ::Ifc4x3_tc1::IfcAppliedValueSelect v3_AppliedValue, ::Ifc4x3_tc1::IfcMeasureWithUnit v4_UnitBasis, std::optional< std::string > v5_ApplicableDate, std::optional< std::string > v6_FixedUntilDate, std::optional< std::string > v7_Category, std::optional< std::string > v8_Condition, std::optional< ::Ifc4x3_tc1::IfcArithmeticOperatorEnum::Value > v9_ArithmeticOperator, std::optional< std::vector< ::Ifc4x3_tc1::IfcAppliedValue > > v10_Components) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); } if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, (v3_AppliedValue));set_attribute_value(3, (v4_UnitBasis)); if (v5_ApplicableDate) {set_attribute_value(4, (*v5_ApplicableDate)); } if (v6_FixedUntilDate) {set_attribute_value(5, (*v6_FixedUntilDate)); } if (v7_Category) {set_attribute_value(6, (*v7_Category)); } if (v8_Condition) {set_attribute_value(7, (*v8_Condition)); } if (v9_ArithmeticOperator) {set_attribute_value(8, (enumeration_reference(&::Ifc4x3_tc1::IfcArithmeticOperatorEnum::Class(),(size_t)*v9_ArithmeticOperator))); } if (v10_Components) {set_attribute_value(9, cast_vector(*v10_Components)); }; return *this; } +Ifc4x3_tc1::IfcCostValue Ifc4x3_tc1::IfcCostValue::initialize(std::optional< std::string > v1_Name, std::optional< std::string > v2_Description, ::Ifc4x3_tc1::IfcAppliedValueSelect v3_AppliedValue, ::Ifc4x3_tc1::IfcMeasureWithUnit v4_UnitBasis, std::optional< std::string > v5_ApplicableDate, std::optional< std::string > v6_FixedUntilDate, std::optional< std::string > v7_Category, std::optional< std::string > v8_Condition, std::optional< ::Ifc4x3_tc1::IfcArithmeticOperatorEnum::Value > v9_ArithmeticOperator, std::optional< std::vector< ::Ifc4x3_tc1::IfcAppliedValue > > v10_Components) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); } if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, (v3_AppliedValue));set_attribute_value(3, (v4_UnitBasis)); if (v5_ApplicableDate) {set_attribute_value(4, (*v5_ApplicableDate)); } if (v6_FixedUntilDate) {set_attribute_value(5, (*v6_FixedUntilDate)); } if (v7_Category) {set_attribute_value(6, (*v7_Category)); } if (v8_Condition) {set_attribute_value(7, (*v8_Condition)); } if (v9_ArithmeticOperator) {set_attribute_value(8, (enumeration_reference(&::Ifc4x3_tc1::IfcArithmeticOperatorEnum::Class(),(size_t)*v9_ArithmeticOperator))); } if (v10_Components) {set_attribute_value(9, cast_vector(*v10_Components)); }; return *this; } // Function implementations for IfcCourse std::optional< ::Ifc4x3_tc1::IfcCourseTypeEnum::Value > Ifc4x3_tc1::IfcCourse::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_tc1::IfcCourseTypeEnum::FromString(get_attribute_value(8)); } @@ -9560,7 +9560,7 @@ void Ifc4x3_tc1::IfcCourseType::setPredefinedType(const ::Ifc4x3_tc1::IfcCourseT const ifcopenshell::entity& Ifc4x3_tc1::IfcCourseType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[254]); } -Ifc4x3_tc1::IfcCourseType Ifc4x3_tc1::IfcCourseType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcCourseTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcCourseTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_tc1::IfcCourseType Ifc4x3_tc1::IfcCourseType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcCourseTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcCourseTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcCovering std::optional< ::Ifc4x3_tc1::IfcCoveringTypeEnum::Value > Ifc4x3_tc1::IfcCovering::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_tc1::IfcCoveringTypeEnum::FromString(get_attribute_value(8)); } @@ -9578,7 +9578,7 @@ void Ifc4x3_tc1::IfcCoveringType::setPredefinedType(const ::Ifc4x3_tc1::IfcCover const ifcopenshell::entity& Ifc4x3_tc1::IfcCoveringType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[257]); } -Ifc4x3_tc1::IfcCoveringType Ifc4x3_tc1::IfcCoveringType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcCoveringTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcCoveringTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_tc1::IfcCoveringType Ifc4x3_tc1::IfcCoveringType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcCoveringTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcCoveringTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcCrewResource std::optional< ::Ifc4x3_tc1::IfcCrewResourceTypeEnum::Value > Ifc4x3_tc1::IfcCrewResource::PredefinedType() const { if(get_attribute_value(10).isNull()) { return std::nullopt; } return ::Ifc4x3_tc1::IfcCrewResourceTypeEnum::FromString(get_attribute_value(10)); } @@ -9586,7 +9586,7 @@ void Ifc4x3_tc1::IfcCrewResource::setPredefinedType(const std::optional< ::Ifc4x const ifcopenshell::entity& Ifc4x3_tc1::IfcCrewResource::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[259]); } -Ifc4x3_tc1::IfcCrewResource Ifc4x3_tc1::IfcCrewResource::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, std::optional< std::string > v6_Identification, std::optional< std::string > v7_LongDescription, ::Ifc4x3_tc1::IfcResourceTime v8_Usage, std::optional< std::vector< ::Ifc4x3_tc1::IfcAppliedValue > > v9_BaseCosts, ::Ifc4x3_tc1::IfcPhysicalQuantity v10_BaseQuantity, std::optional< ::Ifc4x3_tc1::IfcCrewResourceTypeEnum::Value > v11_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); } if (v6_Identification) {set_attribute_value(5, (*v6_Identification)); } if (v7_LongDescription) {set_attribute_value(6, (*v7_LongDescription)); }set_attribute_value(7, (v8_Usage)); if (v9_BaseCosts) {set_attribute_value(8, cast_vector(*v9_BaseCosts)); }set_attribute_value(9, (v10_BaseQuantity)); if (v11_PredefinedType) {set_attribute_value(10, (enumeration_reference(&::Ifc4x3_tc1::IfcCrewResourceTypeEnum::Class(),(size_t)*v11_PredefinedType))); }; return *this; } +Ifc4x3_tc1::IfcCrewResource Ifc4x3_tc1::IfcCrewResource::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, std::optional< std::string > v6_Identification, std::optional< std::string > v7_LongDescription, ::Ifc4x3_tc1::IfcResourceTime v8_Usage, std::optional< std::vector< ::Ifc4x3_tc1::IfcAppliedValue > > v9_BaseCosts, ::Ifc4x3_tc1::IfcPhysicalQuantity v10_BaseQuantity, std::optional< ::Ifc4x3_tc1::IfcCrewResourceTypeEnum::Value > v11_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); } if (v6_Identification) {set_attribute_value(5, (*v6_Identification)); } if (v7_LongDescription) {set_attribute_value(6, (*v7_LongDescription)); }set_attribute_value(7, (v8_Usage)); if (v9_BaseCosts) {set_attribute_value(8, cast_vector(*v9_BaseCosts)); }set_attribute_value(9, (v10_BaseQuantity)); if (v11_PredefinedType) {set_attribute_value(10, (enumeration_reference(&::Ifc4x3_tc1::IfcCrewResourceTypeEnum::Class(),(size_t)*v11_PredefinedType))); }; return *this; } // Function implementations for IfcCrewResourceType ::Ifc4x3_tc1::IfcCrewResourceTypeEnum::Value Ifc4x3_tc1::IfcCrewResourceType::PredefinedType() const { return ::Ifc4x3_tc1::IfcCrewResourceTypeEnum::FromString(get_attribute_value(11)); } @@ -9594,10 +9594,10 @@ void Ifc4x3_tc1::IfcCrewResourceType::setPredefinedType(const ::Ifc4x3_tc1::IfcC const ifcopenshell::entity& Ifc4x3_tc1::IfcCrewResourceType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[260]); } -Ifc4x3_tc1::IfcCrewResourceType Ifc4x3_tc1::IfcCrewResourceType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::string > v7_Identification, std::optional< std::string > v8_LongDescription, std::optional< std::string > v9_ResourceType, std::optional< std::vector< ::Ifc4x3_tc1::IfcAppliedValue > > v10_BaseCosts, ::Ifc4x3_tc1::IfcPhysicalQuantity v11_BaseQuantity, ::Ifc4x3_tc1::IfcCrewResourceTypeEnum::Value v12_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_Identification) {set_attribute_value(6, (*v7_Identification)); } if (v8_LongDescription) {set_attribute_value(7, (*v8_LongDescription)); } if (v9_ResourceType) {set_attribute_value(8, (*v9_ResourceType)); } if (v10_BaseCosts) {set_attribute_value(9, cast_vector(*v10_BaseCosts)); }set_attribute_value(10, (v11_BaseQuantity));set_attribute_value(11, (enumeration_reference(&::Ifc4x3_tc1::IfcCrewResourceTypeEnum::Class(),(size_t)v12_PredefinedType)));; return *this; } +Ifc4x3_tc1::IfcCrewResourceType Ifc4x3_tc1::IfcCrewResourceType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::string > v7_Identification, std::optional< std::string > v8_LongDescription, std::optional< std::string > v9_ResourceType, std::optional< std::vector< ::Ifc4x3_tc1::IfcAppliedValue > > v10_BaseCosts, ::Ifc4x3_tc1::IfcPhysicalQuantity v11_BaseQuantity, ::Ifc4x3_tc1::IfcCrewResourceTypeEnum::Value v12_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_Identification) {set_attribute_value(6, (*v7_Identification)); } if (v8_LongDescription) {set_attribute_value(7, (*v8_LongDescription)); } if (v9_ResourceType) {set_attribute_value(8, (*v9_ResourceType)); } if (v10_BaseCosts) {set_attribute_value(9, cast_vector(*v10_BaseCosts)); }set_attribute_value(10, (v11_BaseQuantity));set_attribute_value(11, (enumeration_reference(&::Ifc4x3_tc1::IfcCrewResourceTypeEnum::Class(),(size_t)v12_PredefinedType)));; return *this; } // Function implementations for IfcCsgPrimitive3D -::Ifc4x3_tc1::IfcAxis2Placement3D Ifc4x3_tc1::IfcCsgPrimitive3D::Position() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcAxis2Placement3D>(); } +::Ifc4x3_tc1::IfcAxis2Placement3D Ifc4x3_tc1::IfcCsgPrimitive3D::Position() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcAxis2Placement3D>(); } void Ifc4x3_tc1::IfcCsgPrimitive3D::setPosition(const ::Ifc4x3_tc1::IfcAxis2Placement3D& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } @@ -9605,7 +9605,7 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcCsgPrimitive3D::Class() { return *((i Ifc4x3_tc1::IfcCsgPrimitive3D Ifc4x3_tc1::IfcCsgPrimitive3D::initialize(::Ifc4x3_tc1::IfcAxis2Placement3D v1_Position) { set_attribute_value(0, (v1_Position));; return *this; } // Function implementations for IfcCsgSolid -::Ifc4x3_tc1::IfcCsgSelect Ifc4x3_tc1::IfcCsgSolid::TreeRootExpression() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcCsgSelect>(); } +::Ifc4x3_tc1::IfcCsgSelect Ifc4x3_tc1::IfcCsgSolid::TreeRootExpression() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcCsgSelect>(); } void Ifc4x3_tc1::IfcCsgSolid::setTreeRootExpression(const ::Ifc4x3_tc1::IfcCsgSelect& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } @@ -9613,15 +9613,15 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcCsgSolid::Class() { return *((ifcopen Ifc4x3_tc1::IfcCsgSolid Ifc4x3_tc1::IfcCsgSolid::initialize(::Ifc4x3_tc1::IfcCsgSelect v1_TreeRootExpression) { set_attribute_value(0, (v1_TreeRootExpression));; return *this; } // Function implementations for IfcCurrencyRelationship -::Ifc4x3_tc1::IfcMonetaryUnit Ifc4x3_tc1::IfcCurrencyRelationship::RelatingMonetaryUnit() const { return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3_tc1::IfcMonetaryUnit>(); } +::Ifc4x3_tc1::IfcMonetaryUnit Ifc4x3_tc1::IfcCurrencyRelationship::RelatingMonetaryUnit() const { return ((express::base)(get_attribute_value(2))).as<::Ifc4x3_tc1::IfcMonetaryUnit>(); } void Ifc4x3_tc1::IfcCurrencyRelationship::setRelatingMonetaryUnit(const ::Ifc4x3_tc1::IfcMonetaryUnit& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } -::Ifc4x3_tc1::IfcMonetaryUnit Ifc4x3_tc1::IfcCurrencyRelationship::RelatedMonetaryUnit() const { return ((express::Base)(get_attribute_value(3))).as<::Ifc4x3_tc1::IfcMonetaryUnit>(); } +::Ifc4x3_tc1::IfcMonetaryUnit Ifc4x3_tc1::IfcCurrencyRelationship::RelatedMonetaryUnit() const { return ((express::base)(get_attribute_value(3))).as<::Ifc4x3_tc1::IfcMonetaryUnit>(); } void Ifc4x3_tc1::IfcCurrencyRelationship::setRelatedMonetaryUnit(const ::Ifc4x3_tc1::IfcMonetaryUnit& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } double Ifc4x3_tc1::IfcCurrencyRelationship::ExchangeRate() const { double v = get_attribute_value(4); return v; } void Ifc4x3_tc1::IfcCurrencyRelationship::setExchangeRate(const double& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } std::optional< std::string > Ifc4x3_tc1::IfcCurrencyRelationship::RateDateTime() const { if(get_attribute_value(5).isNull()) { return std::nullopt; } std::string v = get_attribute_value(5); return v; } void Ifc4x3_tc1::IfcCurrencyRelationship::setRateDateTime(const std::optional< std::string >& v) { if (v) {set_attribute_value(5, *v);} else {unset_attribute_value(5);} } -::Ifc4x3_tc1::IfcLibraryInformation Ifc4x3_tc1::IfcCurrencyRelationship::RateSource() const { if(get_attribute_value(6).isNull()) { return ::Ifc4x3_tc1::IfcLibraryInformation{}; } return ((express::Base)(get_attribute_value(6))).as<::Ifc4x3_tc1::IfcLibraryInformation>(); } +::Ifc4x3_tc1::IfcLibraryInformation Ifc4x3_tc1::IfcCurrencyRelationship::RateSource() const { if(get_attribute_value(6).isNull()) { return ::Ifc4x3_tc1::IfcLibraryInformation{}; } return ((express::base)(get_attribute_value(6))).as<::Ifc4x3_tc1::IfcLibraryInformation>(); } void Ifc4x3_tc1::IfcCurrencyRelationship::setRateSource(const ::Ifc4x3_tc1::IfcLibraryInformation& v) { set_attribute_value(6, v);if constexpr (false)unset_attribute_value(6); } @@ -9642,7 +9642,7 @@ void Ifc4x3_tc1::IfcCurtainWallType::setPredefinedType(const ::Ifc4x3_tc1::IfcCu const ifcopenshell::entity& Ifc4x3_tc1::IfcCurtainWallType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[268]); } -Ifc4x3_tc1::IfcCurtainWallType Ifc4x3_tc1::IfcCurtainWallType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcCurtainWallTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcCurtainWallTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_tc1::IfcCurtainWallType Ifc4x3_tc1::IfcCurtainWallType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcCurtainWallTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcCurtainWallTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcCurve @@ -9651,37 +9651,37 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcCurve::Class() { return *((ifcopenshe Ifc4x3_tc1::IfcCurve Ifc4x3_tc1::IfcCurve::initialize() { ; return *this; } // Function implementations for IfcCurveBoundedPlane -::Ifc4x3_tc1::IfcPlane Ifc4x3_tc1::IfcCurveBoundedPlane::BasisSurface() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcPlane>(); } +::Ifc4x3_tc1::IfcPlane Ifc4x3_tc1::IfcCurveBoundedPlane::BasisSurface() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcPlane>(); } void Ifc4x3_tc1::IfcCurveBoundedPlane::setBasisSurface(const ::Ifc4x3_tc1::IfcPlane& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } -::Ifc4x3_tc1::IfcCurve Ifc4x3_tc1::IfcCurveBoundedPlane::OuterBoundary() const { return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3_tc1::IfcCurve>(); } +::Ifc4x3_tc1::IfcCurve Ifc4x3_tc1::IfcCurveBoundedPlane::OuterBoundary() const { return ((express::base)(get_attribute_value(1))).as<::Ifc4x3_tc1::IfcCurve>(); } void Ifc4x3_tc1::IfcCurveBoundedPlane::setOuterBoundary(const ::Ifc4x3_tc1::IfcCurve& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } -std::vector< ::Ifc4x3_tc1::IfcCurve > Ifc4x3_tc1::IfcCurveBoundedPlane::InnerBoundaries() const { std::vector es = get_attribute_value(2); return cast_vector<::Ifc4x3_tc1::IfcCurve>(es); } -void Ifc4x3_tc1::IfcCurveBoundedPlane::setInnerBoundaries(const std::vector< ::Ifc4x3_tc1::IfcCurve >& v) { set_attribute_value(2, cast_vector(v));if constexpr (false)unset_attribute_value(2); } +std::vector< ::Ifc4x3_tc1::IfcCurve > Ifc4x3_tc1::IfcCurveBoundedPlane::InnerBoundaries() const { std::vector es = get_attribute_value(2); return cast_vector<::Ifc4x3_tc1::IfcCurve>(es); } +void Ifc4x3_tc1::IfcCurveBoundedPlane::setInnerBoundaries(const std::vector< ::Ifc4x3_tc1::IfcCurve >& v) { set_attribute_value(2, cast_vector(v));if constexpr (false)unset_attribute_value(2); } const ifcopenshell::entity& Ifc4x3_tc1::IfcCurveBoundedPlane::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[272]); } -Ifc4x3_tc1::IfcCurveBoundedPlane Ifc4x3_tc1::IfcCurveBoundedPlane::initialize(::Ifc4x3_tc1::IfcPlane v1_BasisSurface, ::Ifc4x3_tc1::IfcCurve v2_OuterBoundary, std::vector< ::Ifc4x3_tc1::IfcCurve > v3_InnerBoundaries) { set_attribute_value(0, (v1_BasisSurface));set_attribute_value(1, (v2_OuterBoundary));set_attribute_value(2, cast_vector(v3_InnerBoundaries));; return *this; } +Ifc4x3_tc1::IfcCurveBoundedPlane Ifc4x3_tc1::IfcCurveBoundedPlane::initialize(::Ifc4x3_tc1::IfcPlane v1_BasisSurface, ::Ifc4x3_tc1::IfcCurve v2_OuterBoundary, std::vector< ::Ifc4x3_tc1::IfcCurve > v3_InnerBoundaries) { set_attribute_value(0, (v1_BasisSurface));set_attribute_value(1, (v2_OuterBoundary));set_attribute_value(2, cast_vector(v3_InnerBoundaries));; return *this; } // Function implementations for IfcCurveBoundedSurface -::Ifc4x3_tc1::IfcSurface Ifc4x3_tc1::IfcCurveBoundedSurface::BasisSurface() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcSurface>(); } +::Ifc4x3_tc1::IfcSurface Ifc4x3_tc1::IfcCurveBoundedSurface::BasisSurface() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcSurface>(); } void Ifc4x3_tc1::IfcCurveBoundedSurface::setBasisSurface(const ::Ifc4x3_tc1::IfcSurface& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } -std::vector< ::Ifc4x3_tc1::IfcBoundaryCurve > Ifc4x3_tc1::IfcCurveBoundedSurface::Boundaries() const { std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3_tc1::IfcBoundaryCurve>(es); } -void Ifc4x3_tc1::IfcCurveBoundedSurface::setBoundaries(const std::vector< ::Ifc4x3_tc1::IfcBoundaryCurve >& v) { set_attribute_value(1, cast_vector(v));if constexpr (false)unset_attribute_value(1); } +std::vector< ::Ifc4x3_tc1::IfcBoundaryCurve > Ifc4x3_tc1::IfcCurveBoundedSurface::Boundaries() const { std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3_tc1::IfcBoundaryCurve>(es); } +void Ifc4x3_tc1::IfcCurveBoundedSurface::setBoundaries(const std::vector< ::Ifc4x3_tc1::IfcBoundaryCurve >& v) { set_attribute_value(1, cast_vector(v));if constexpr (false)unset_attribute_value(1); } bool Ifc4x3_tc1::IfcCurveBoundedSurface::ImplicitOuter() const { bool v = get_attribute_value(2); return v; } void Ifc4x3_tc1::IfcCurveBoundedSurface::setImplicitOuter(const bool& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } const ifcopenshell::entity& Ifc4x3_tc1::IfcCurveBoundedSurface::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[273]); } -Ifc4x3_tc1::IfcCurveBoundedSurface Ifc4x3_tc1::IfcCurveBoundedSurface::initialize(::Ifc4x3_tc1::IfcSurface v1_BasisSurface, std::vector< ::Ifc4x3_tc1::IfcBoundaryCurve > v2_Boundaries, bool v3_ImplicitOuter) { set_attribute_value(0, (v1_BasisSurface));set_attribute_value(1, cast_vector(v2_Boundaries));set_attribute_value(2, (v3_ImplicitOuter));; return *this; } +Ifc4x3_tc1::IfcCurveBoundedSurface Ifc4x3_tc1::IfcCurveBoundedSurface::initialize(::Ifc4x3_tc1::IfcSurface v1_BasisSurface, std::vector< ::Ifc4x3_tc1::IfcBoundaryCurve > v2_Boundaries, bool v3_ImplicitOuter) { set_attribute_value(0, (v1_BasisSurface));set_attribute_value(1, cast_vector(v2_Boundaries));set_attribute_value(2, (v3_ImplicitOuter));; return *this; } // Function implementations for IfcCurveSegment -::Ifc4x3_tc1::IfcPlacement Ifc4x3_tc1::IfcCurveSegment::Placement() const { return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3_tc1::IfcPlacement>(); } +::Ifc4x3_tc1::IfcPlacement Ifc4x3_tc1::IfcCurveSegment::Placement() const { return ((express::base)(get_attribute_value(1))).as<::Ifc4x3_tc1::IfcPlacement>(); } void Ifc4x3_tc1::IfcCurveSegment::setPlacement(const ::Ifc4x3_tc1::IfcPlacement& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } -::Ifc4x3_tc1::IfcCurveMeasureSelect Ifc4x3_tc1::IfcCurveSegment::SegmentStart() const { return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3_tc1::IfcCurveMeasureSelect>(); } +::Ifc4x3_tc1::IfcCurveMeasureSelect Ifc4x3_tc1::IfcCurveSegment::SegmentStart() const { return ((express::base)(get_attribute_value(2))).as<::Ifc4x3_tc1::IfcCurveMeasureSelect>(); } void Ifc4x3_tc1::IfcCurveSegment::setSegmentStart(const ::Ifc4x3_tc1::IfcCurveMeasureSelect& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } -::Ifc4x3_tc1::IfcCurveMeasureSelect Ifc4x3_tc1::IfcCurveSegment::SegmentLength() const { return ((express::Base)(get_attribute_value(3))).as<::Ifc4x3_tc1::IfcCurveMeasureSelect>(); } +::Ifc4x3_tc1::IfcCurveMeasureSelect Ifc4x3_tc1::IfcCurveSegment::SegmentLength() const { return ((express::base)(get_attribute_value(3))).as<::Ifc4x3_tc1::IfcCurveMeasureSelect>(); } void Ifc4x3_tc1::IfcCurveSegment::setSegmentLength(const ::Ifc4x3_tc1::IfcCurveMeasureSelect& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } -::Ifc4x3_tc1::IfcCurve Ifc4x3_tc1::IfcCurveSegment::ParentCurve() const { return ((express::Base)(get_attribute_value(4))).as<::Ifc4x3_tc1::IfcCurve>(); } +::Ifc4x3_tc1::IfcCurve Ifc4x3_tc1::IfcCurveSegment::ParentCurve() const { return ((express::base)(get_attribute_value(4))).as<::Ifc4x3_tc1::IfcCurve>(); } void Ifc4x3_tc1::IfcCurveSegment::setParentCurve(const ::Ifc4x3_tc1::IfcCurve& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } @@ -9689,11 +9689,11 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcCurveSegment::Class() { return *((ifc Ifc4x3_tc1::IfcCurveSegment Ifc4x3_tc1::IfcCurveSegment::initialize(::Ifc4x3_tc1::IfcTransitionCode::Value v1_Transition, ::Ifc4x3_tc1::IfcPlacement v2_Placement, ::Ifc4x3_tc1::IfcCurveMeasureSelect v3_SegmentStart, ::Ifc4x3_tc1::IfcCurveMeasureSelect v4_SegmentLength, ::Ifc4x3_tc1::IfcCurve v5_ParentCurve) { set_attribute_value(0, (enumeration_reference(&::Ifc4x3_tc1::IfcTransitionCode::Class(),(size_t)v1_Transition)));set_attribute_value(1, (v2_Placement));set_attribute_value(2, (v3_SegmentStart));set_attribute_value(3, (v4_SegmentLength));set_attribute_value(4, (v5_ParentCurve));; return *this; } // Function implementations for IfcCurveStyle -::Ifc4x3_tc1::IfcCurveFontOrScaledCurveFontSelect Ifc4x3_tc1::IfcCurveStyle::CurveFont() const { if(get_attribute_value(1).isNull()) { return ::Ifc4x3_tc1::IfcCurveFontOrScaledCurveFontSelect{}; } return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3_tc1::IfcCurveFontOrScaledCurveFontSelect>(); } +::Ifc4x3_tc1::IfcCurveFontOrScaledCurveFontSelect Ifc4x3_tc1::IfcCurveStyle::CurveFont() const { if(get_attribute_value(1).isNull()) { return ::Ifc4x3_tc1::IfcCurveFontOrScaledCurveFontSelect{}; } return ((express::base)(get_attribute_value(1))).as<::Ifc4x3_tc1::IfcCurveFontOrScaledCurveFontSelect>(); } void Ifc4x3_tc1::IfcCurveStyle::setCurveFont(const ::Ifc4x3_tc1::IfcCurveFontOrScaledCurveFontSelect& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } -::Ifc4x3_tc1::IfcSizeSelect Ifc4x3_tc1::IfcCurveStyle::CurveWidth() const { if(get_attribute_value(2).isNull()) { return ::Ifc4x3_tc1::IfcSizeSelect{}; } return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3_tc1::IfcSizeSelect>(); } +::Ifc4x3_tc1::IfcSizeSelect Ifc4x3_tc1::IfcCurveStyle::CurveWidth() const { if(get_attribute_value(2).isNull()) { return ::Ifc4x3_tc1::IfcSizeSelect{}; } return ((express::base)(get_attribute_value(2))).as<::Ifc4x3_tc1::IfcSizeSelect>(); } void Ifc4x3_tc1::IfcCurveStyle::setCurveWidth(const ::Ifc4x3_tc1::IfcSizeSelect& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } -::Ifc4x3_tc1::IfcColour Ifc4x3_tc1::IfcCurveStyle::CurveColour() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3_tc1::IfcColour{}; } return ((express::Base)(get_attribute_value(3))).as<::Ifc4x3_tc1::IfcColour>(); } +::Ifc4x3_tc1::IfcColour Ifc4x3_tc1::IfcCurveStyle::CurveColour() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3_tc1::IfcColour{}; } return ((express::base)(get_attribute_value(3))).as<::Ifc4x3_tc1::IfcColour>(); } void Ifc4x3_tc1::IfcCurveStyle::setCurveColour(const ::Ifc4x3_tc1::IfcColour& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } std::optional< bool > Ifc4x3_tc1::IfcCurveStyle::ModelOrDraughting() const { if(get_attribute_value(4).isNull()) { return std::nullopt; } bool v = get_attribute_value(4); return v; } void Ifc4x3_tc1::IfcCurveStyle::setModelOrDraughting(const std::optional< bool >& v) { if (v) {set_attribute_value(4, *v);} else {unset_attribute_value(4);} } @@ -9705,17 +9705,17 @@ Ifc4x3_tc1::IfcCurveStyle Ifc4x3_tc1::IfcCurveStyle::initialize(std::optional< s // Function implementations for IfcCurveStyleFont std::optional< std::string > Ifc4x3_tc1::IfcCurveStyleFont::Name() const { if(get_attribute_value(0).isNull()) { return std::nullopt; } std::string v = get_attribute_value(0); return v; } void Ifc4x3_tc1::IfcCurveStyleFont::setName(const std::optional< std::string >& v) { if (v) {set_attribute_value(0, *v);} else {unset_attribute_value(0);} } -std::vector< ::Ifc4x3_tc1::IfcCurveStyleFontPattern > Ifc4x3_tc1::IfcCurveStyleFont::PatternList() const { std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3_tc1::IfcCurveStyleFontPattern>(es); } -void Ifc4x3_tc1::IfcCurveStyleFont::setPatternList(const std::vector< ::Ifc4x3_tc1::IfcCurveStyleFontPattern >& v) { set_attribute_value(1, cast_vector(v));if constexpr (false)unset_attribute_value(1); } +std::vector< ::Ifc4x3_tc1::IfcCurveStyleFontPattern > Ifc4x3_tc1::IfcCurveStyleFont::PatternList() const { std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3_tc1::IfcCurveStyleFontPattern>(es); } +void Ifc4x3_tc1::IfcCurveStyleFont::setPatternList(const std::vector< ::Ifc4x3_tc1::IfcCurveStyleFontPattern >& v) { set_attribute_value(1, cast_vector(v));if constexpr (false)unset_attribute_value(1); } const ifcopenshell::entity& Ifc4x3_tc1::IfcCurveStyleFont::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[281]); } -Ifc4x3_tc1::IfcCurveStyleFont Ifc4x3_tc1::IfcCurveStyleFont::initialize(std::optional< std::string > v1_Name, std::vector< ::Ifc4x3_tc1::IfcCurveStyleFontPattern > v2_PatternList) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); }set_attribute_value(1, cast_vector(v2_PatternList));; return *this; } +Ifc4x3_tc1::IfcCurveStyleFont Ifc4x3_tc1::IfcCurveStyleFont::initialize(std::optional< std::string > v1_Name, std::vector< ::Ifc4x3_tc1::IfcCurveStyleFontPattern > v2_PatternList) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); }set_attribute_value(1, cast_vector(v2_PatternList));; return *this; } // Function implementations for IfcCurveStyleFontAndScaling std::optional< std::string > Ifc4x3_tc1::IfcCurveStyleFontAndScaling::Name() const { if(get_attribute_value(0).isNull()) { return std::nullopt; } std::string v = get_attribute_value(0); return v; } void Ifc4x3_tc1::IfcCurveStyleFontAndScaling::setName(const std::optional< std::string >& v) { if (v) {set_attribute_value(0, *v);} else {unset_attribute_value(0);} } -::Ifc4x3_tc1::IfcCurveStyleFontSelect Ifc4x3_tc1::IfcCurveStyleFontAndScaling::CurveStyleFont() const { return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3_tc1::IfcCurveStyleFontSelect>(); } +::Ifc4x3_tc1::IfcCurveStyleFontSelect Ifc4x3_tc1::IfcCurveStyleFontAndScaling::CurveStyleFont() const { return ((express::base)(get_attribute_value(1))).as<::Ifc4x3_tc1::IfcCurveStyleFontSelect>(); } void Ifc4x3_tc1::IfcCurveStyleFontAndScaling::setCurveStyleFont(const ::Ifc4x3_tc1::IfcCurveStyleFontSelect& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } double Ifc4x3_tc1::IfcCurveStyleFontAndScaling::CurveFontScaling() const { double v = get_attribute_value(2); return v; } void Ifc4x3_tc1::IfcCurveStyleFontAndScaling::setCurveFontScaling(const double& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } @@ -9756,7 +9756,7 @@ void Ifc4x3_tc1::IfcDamperType::setPredefinedType(const ::Ifc4x3_tc1::IfcDamperT const ifcopenshell::entity& Ifc4x3_tc1::IfcDamperType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[287]); } -Ifc4x3_tc1::IfcDamperType Ifc4x3_tc1::IfcDamperType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcDamperTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcDamperTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_tc1::IfcDamperType Ifc4x3_tc1::IfcDamperType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcDamperTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcDamperTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcDeepFoundation @@ -9768,12 +9768,12 @@ Ifc4x3_tc1::IfcDeepFoundation Ifc4x3_tc1::IfcDeepFoundation::initialize(std::str const ifcopenshell::entity& Ifc4x3_tc1::IfcDeepFoundationType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[295]); } -Ifc4x3_tc1::IfcDeepFoundationType Ifc4x3_tc1::IfcDeepFoundationType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } +Ifc4x3_tc1::IfcDeepFoundationType Ifc4x3_tc1::IfcDeepFoundationType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } // Function implementations for IfcDerivedProfileDef -::Ifc4x3_tc1::IfcProfileDef Ifc4x3_tc1::IfcDerivedProfileDef::ParentProfile() const { return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3_tc1::IfcProfileDef>(); } +::Ifc4x3_tc1::IfcProfileDef Ifc4x3_tc1::IfcDerivedProfileDef::ParentProfile() const { return ((express::base)(get_attribute_value(2))).as<::Ifc4x3_tc1::IfcProfileDef>(); } void Ifc4x3_tc1::IfcDerivedProfileDef::setParentProfile(const ::Ifc4x3_tc1::IfcProfileDef& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } -::Ifc4x3_tc1::IfcCartesianTransformationOperator2D Ifc4x3_tc1::IfcDerivedProfileDef::Operator() const { return ((express::Base)(get_attribute_value(3))).as<::Ifc4x3_tc1::IfcCartesianTransformationOperator2D>(); } +::Ifc4x3_tc1::IfcCartesianTransformationOperator2D Ifc4x3_tc1::IfcDerivedProfileDef::Operator() const { return ((express::base)(get_attribute_value(3))).as<::Ifc4x3_tc1::IfcCartesianTransformationOperator2D>(); } void Ifc4x3_tc1::IfcDerivedProfileDef::setOperator(const ::Ifc4x3_tc1::IfcCartesianTransformationOperator2D& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } std::optional< std::string > Ifc4x3_tc1::IfcDerivedProfileDef::Label() const { if(get_attribute_value(4).isNull()) { return std::nullopt; } std::string v = get_attribute_value(4); return v; } void Ifc4x3_tc1::IfcDerivedProfileDef::setLabel(const std::optional< std::string >& v) { if (v) {set_attribute_value(4, *v);} else {unset_attribute_value(4);} } @@ -9783,8 +9783,8 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcDerivedProfileDef::Class() { return * Ifc4x3_tc1::IfcDerivedProfileDef Ifc4x3_tc1::IfcDerivedProfileDef::initialize(::Ifc4x3_tc1::IfcProfileTypeEnum::Value v1_ProfileType, std::optional< std::string > v2_ProfileName, ::Ifc4x3_tc1::IfcProfileDef v3_ParentProfile, ::Ifc4x3_tc1::IfcCartesianTransformationOperator2D v4_Operator, std::optional< std::string > v5_Label) { set_attribute_value(0, (enumeration_reference(&::Ifc4x3_tc1::IfcProfileTypeEnum::Class(),(size_t)v1_ProfileType))); if (v2_ProfileName) {set_attribute_value(1, (*v2_ProfileName)); }set_attribute_value(2, (v3_ParentProfile));set_attribute_value(3, (v4_Operator)); if (v5_Label) {set_attribute_value(4, (*v5_Label)); }; return *this; } // Function implementations for IfcDerivedUnit -std::vector< ::Ifc4x3_tc1::IfcDerivedUnitElement > Ifc4x3_tc1::IfcDerivedUnit::Elements() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3_tc1::IfcDerivedUnitElement>(es); } -void Ifc4x3_tc1::IfcDerivedUnit::setElements(const std::vector< ::Ifc4x3_tc1::IfcDerivedUnitElement >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } +std::vector< ::Ifc4x3_tc1::IfcDerivedUnitElement > Ifc4x3_tc1::IfcDerivedUnit::Elements() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3_tc1::IfcDerivedUnitElement>(es); } +void Ifc4x3_tc1::IfcDerivedUnit::setElements(const std::vector< ::Ifc4x3_tc1::IfcDerivedUnitElement >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } ::Ifc4x3_tc1::IfcDerivedUnitEnum::Value Ifc4x3_tc1::IfcDerivedUnit::UnitType() const { return ::Ifc4x3_tc1::IfcDerivedUnitEnum::FromString(get_attribute_value(1)); } void Ifc4x3_tc1::IfcDerivedUnit::setUnitType(const ::Ifc4x3_tc1::IfcDerivedUnitEnum::Value& v) { set_attribute_value(1, enumeration_reference(&::Ifc4x3_tc1::IfcDerivedUnitEnum::Class(), (size_t) v));if constexpr (false)unset_attribute_value(1); } std::optional< std::string > Ifc4x3_tc1::IfcDerivedUnit::UserDefinedType() const { if(get_attribute_value(2).isNull()) { return std::nullopt; } std::string v = get_attribute_value(2); return v; } @@ -9794,10 +9794,10 @@ void Ifc4x3_tc1::IfcDerivedUnit::setName(const std::optional< std::string >& v) const ifcopenshell::entity& Ifc4x3_tc1::IfcDerivedUnit::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[299]); } -Ifc4x3_tc1::IfcDerivedUnit Ifc4x3_tc1::IfcDerivedUnit::initialize(std::vector< ::Ifc4x3_tc1::IfcDerivedUnitElement > v1_Elements, ::Ifc4x3_tc1::IfcDerivedUnitEnum::Value v2_UnitType, std::optional< std::string > v3_UserDefinedType, std::optional< std::string > v4_Name) { set_attribute_value(0, cast_vector(v1_Elements));set_attribute_value(1, (enumeration_reference(&::Ifc4x3_tc1::IfcDerivedUnitEnum::Class(),(size_t)v2_UnitType))); if (v3_UserDefinedType) {set_attribute_value(2, (*v3_UserDefinedType)); } if (v4_Name) {set_attribute_value(3, (*v4_Name)); }; return *this; } +Ifc4x3_tc1::IfcDerivedUnit Ifc4x3_tc1::IfcDerivedUnit::initialize(std::vector< ::Ifc4x3_tc1::IfcDerivedUnitElement > v1_Elements, ::Ifc4x3_tc1::IfcDerivedUnitEnum::Value v2_UnitType, std::optional< std::string > v3_UserDefinedType, std::optional< std::string > v4_Name) { set_attribute_value(0, cast_vector(v1_Elements));set_attribute_value(1, (enumeration_reference(&::Ifc4x3_tc1::IfcDerivedUnitEnum::Class(),(size_t)v2_UnitType))); if (v3_UserDefinedType) {set_attribute_value(2, (*v3_UserDefinedType)); } if (v4_Name) {set_attribute_value(3, (*v4_Name)); }; return *this; } // Function implementations for IfcDerivedUnitElement -::Ifc4x3_tc1::IfcNamedUnit Ifc4x3_tc1::IfcDerivedUnitElement::Unit() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcNamedUnit>(); } +::Ifc4x3_tc1::IfcNamedUnit Ifc4x3_tc1::IfcDerivedUnitElement::Unit() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcNamedUnit>(); } void Ifc4x3_tc1::IfcDerivedUnitElement::setUnit(const ::Ifc4x3_tc1::IfcNamedUnit& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } int64_t Ifc4x3_tc1::IfcDerivedUnitElement::Exponent() const { int64_t v = get_attribute_value(1); return v; } void Ifc4x3_tc1::IfcDerivedUnitElement::setExponent(const int64_t& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } @@ -9835,11 +9835,11 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcDirection::Class() { return *((ifcope Ifc4x3_tc1::IfcDirection Ifc4x3_tc1::IfcDirection::initialize(std::vector< double > /*[2:3]*/ v1_DirectionRatios) { set_attribute_value(0, (v1_DirectionRatios));; return *this; } // Function implementations for IfcDirectrixCurveSweptAreaSolid -::Ifc4x3_tc1::IfcCurve Ifc4x3_tc1::IfcDirectrixCurveSweptAreaSolid::Directrix() const { return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3_tc1::IfcCurve>(); } +::Ifc4x3_tc1::IfcCurve Ifc4x3_tc1::IfcDirectrixCurveSweptAreaSolid::Directrix() const { return ((express::base)(get_attribute_value(2))).as<::Ifc4x3_tc1::IfcCurve>(); } void Ifc4x3_tc1::IfcDirectrixCurveSweptAreaSolid::setDirectrix(const ::Ifc4x3_tc1::IfcCurve& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } -::Ifc4x3_tc1::IfcCurveMeasureSelect Ifc4x3_tc1::IfcDirectrixCurveSweptAreaSolid::StartParam() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3_tc1::IfcCurveMeasureSelect{}; } return ((express::Base)(get_attribute_value(3))).as<::Ifc4x3_tc1::IfcCurveMeasureSelect>(); } +::Ifc4x3_tc1::IfcCurveMeasureSelect Ifc4x3_tc1::IfcDirectrixCurveSweptAreaSolid::StartParam() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3_tc1::IfcCurveMeasureSelect{}; } return ((express::base)(get_attribute_value(3))).as<::Ifc4x3_tc1::IfcCurveMeasureSelect>(); } void Ifc4x3_tc1::IfcDirectrixCurveSweptAreaSolid::setStartParam(const ::Ifc4x3_tc1::IfcCurveMeasureSelect& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } -::Ifc4x3_tc1::IfcCurveMeasureSelect Ifc4x3_tc1::IfcDirectrixCurveSweptAreaSolid::EndParam() const { if(get_attribute_value(4).isNull()) { return ::Ifc4x3_tc1::IfcCurveMeasureSelect{}; } return ((express::Base)(get_attribute_value(4))).as<::Ifc4x3_tc1::IfcCurveMeasureSelect>(); } +::Ifc4x3_tc1::IfcCurveMeasureSelect Ifc4x3_tc1::IfcDirectrixCurveSweptAreaSolid::EndParam() const { if(get_attribute_value(4).isNull()) { return ::Ifc4x3_tc1::IfcCurveMeasureSelect{}; } return ((express::base)(get_attribute_value(4))).as<::Ifc4x3_tc1::IfcCurveMeasureSelect>(); } void Ifc4x3_tc1::IfcDirectrixCurveSweptAreaSolid::setEndParam(const ::Ifc4x3_tc1::IfcCurveMeasureSelect& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } @@ -9866,7 +9866,7 @@ void Ifc4x3_tc1::IfcDiscreteAccessoryType::setPredefinedType(const ::Ifc4x3_tc1: const ifcopenshell::entity& Ifc4x3_tc1::IfcDiscreteAccessoryType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[310]); } -Ifc4x3_tc1::IfcDiscreteAccessoryType Ifc4x3_tc1::IfcDiscreteAccessoryType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcDiscreteAccessoryTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcDiscreteAccessoryTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_tc1::IfcDiscreteAccessoryType Ifc4x3_tc1::IfcDiscreteAccessoryType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcDiscreteAccessoryTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcDiscreteAccessoryTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcDistributionBoard std::optional< ::Ifc4x3_tc1::IfcDistributionBoardTypeEnum::Value > Ifc4x3_tc1::IfcDistributionBoard::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_tc1::IfcDistributionBoardTypeEnum::FromString(get_attribute_value(8)); } @@ -9882,7 +9882,7 @@ void Ifc4x3_tc1::IfcDistributionBoardType::setPredefinedType(const ::Ifc4x3_tc1: const ifcopenshell::entity& Ifc4x3_tc1::IfcDistributionBoardType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[313]); } -Ifc4x3_tc1::IfcDistributionBoardType Ifc4x3_tc1::IfcDistributionBoardType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcDistributionBoardTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcDistributionBoardTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_tc1::IfcDistributionBoardType Ifc4x3_tc1::IfcDistributionBoardType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcDistributionBoardTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcDistributionBoardTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcDistributionChamberElement std::optional< ::Ifc4x3_tc1::IfcDistributionChamberElementTypeEnum::Value > Ifc4x3_tc1::IfcDistributionChamberElement::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_tc1::IfcDistributionChamberElementTypeEnum::FromString(get_attribute_value(8)); } @@ -9898,7 +9898,7 @@ void Ifc4x3_tc1::IfcDistributionChamberElementType::setPredefinedType(const ::If const ifcopenshell::entity& Ifc4x3_tc1::IfcDistributionChamberElementType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[316]); } -Ifc4x3_tc1::IfcDistributionChamberElementType Ifc4x3_tc1::IfcDistributionChamberElementType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcDistributionChamberElementTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcDistributionChamberElementTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_tc1::IfcDistributionChamberElementType Ifc4x3_tc1::IfcDistributionChamberElementType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcDistributionChamberElementTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcDistributionChamberElementTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcDistributionCircuit @@ -9917,7 +9917,7 @@ Ifc4x3_tc1::IfcDistributionControlElement Ifc4x3_tc1::IfcDistributionControlElem const ifcopenshell::entity& Ifc4x3_tc1::IfcDistributionControlElementType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[320]); } -Ifc4x3_tc1::IfcDistributionControlElementType Ifc4x3_tc1::IfcDistributionControlElementType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } +Ifc4x3_tc1::IfcDistributionControlElementType Ifc4x3_tc1::IfcDistributionControlElementType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } // Function implementations for IfcDistributionElement @@ -9930,7 +9930,7 @@ Ifc4x3_tc1::IfcDistributionElement Ifc4x3_tc1::IfcDistributionElement::initializ const ifcopenshell::entity& Ifc4x3_tc1::IfcDistributionElementType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[322]); } -Ifc4x3_tc1::IfcDistributionElementType Ifc4x3_tc1::IfcDistributionElementType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } +Ifc4x3_tc1::IfcDistributionElementType Ifc4x3_tc1::IfcDistributionElementType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } // Function implementations for IfcDistributionFlowElement @@ -9943,7 +9943,7 @@ Ifc4x3_tc1::IfcDistributionFlowElement Ifc4x3_tc1::IfcDistributionFlowElement::i const ifcopenshell::entity& Ifc4x3_tc1::IfcDistributionFlowElementType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[324]); } -Ifc4x3_tc1::IfcDistributionFlowElementType Ifc4x3_tc1::IfcDistributionFlowElementType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } +Ifc4x3_tc1::IfcDistributionFlowElementType Ifc4x3_tc1::IfcDistributionFlowElementType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } // Function implementations for IfcDistributionPort std::optional< ::Ifc4x3_tc1::IfcFlowDirectionEnum::Value > Ifc4x3_tc1::IfcDistributionPort::FlowDirection() const { if(get_attribute_value(7).isNull()) { return std::nullopt; } return ::Ifc4x3_tc1::IfcFlowDirectionEnum::FromString(get_attribute_value(7)); } @@ -9984,10 +9984,10 @@ std::optional< std::string > Ifc4x3_tc1::IfcDocumentInformation::Scope() const { void Ifc4x3_tc1::IfcDocumentInformation::setScope(const std::optional< std::string >& v) { if (v) {set_attribute_value(6, *v);} else {unset_attribute_value(6);} } std::optional< std::string > Ifc4x3_tc1::IfcDocumentInformation::Revision() const { if(get_attribute_value(7).isNull()) { return std::nullopt; } std::string v = get_attribute_value(7); return v; } void Ifc4x3_tc1::IfcDocumentInformation::setRevision(const std::optional< std::string >& v) { if (v) {set_attribute_value(7, *v);} else {unset_attribute_value(7);} } -::Ifc4x3_tc1::IfcActorSelect Ifc4x3_tc1::IfcDocumentInformation::DocumentOwner() const { if(get_attribute_value(8).isNull()) { return ::Ifc4x3_tc1::IfcActorSelect{}; } return ((express::Base)(get_attribute_value(8))).as<::Ifc4x3_tc1::IfcActorSelect>(); } +::Ifc4x3_tc1::IfcActorSelect Ifc4x3_tc1::IfcDocumentInformation::DocumentOwner() const { if(get_attribute_value(8).isNull()) { return ::Ifc4x3_tc1::IfcActorSelect{}; } return ((express::base)(get_attribute_value(8))).as<::Ifc4x3_tc1::IfcActorSelect>(); } void Ifc4x3_tc1::IfcDocumentInformation::setDocumentOwner(const ::Ifc4x3_tc1::IfcActorSelect& v) { set_attribute_value(8, v);if constexpr (false)unset_attribute_value(8); } -std::optional< std::vector< ::Ifc4x3_tc1::IfcActorSelect > > Ifc4x3_tc1::IfcDocumentInformation::Editors() const { if(get_attribute_value(9).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(9); return cast_vector<::Ifc4x3_tc1::IfcActorSelect>(es); } -void Ifc4x3_tc1::IfcDocumentInformation::setEditors(const std::optional< std::vector< ::Ifc4x3_tc1::IfcActorSelect > >& v) { if (v) {set_attribute_value(9, cast_vector(*v));} else {unset_attribute_value(9);} } +std::optional< std::vector< ::Ifc4x3_tc1::IfcActorSelect > > Ifc4x3_tc1::IfcDocumentInformation::Editors() const { if(get_attribute_value(9).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(9); return cast_vector<::Ifc4x3_tc1::IfcActorSelect>(es); } +void Ifc4x3_tc1::IfcDocumentInformation::setEditors(const std::optional< std::vector< ::Ifc4x3_tc1::IfcActorSelect > >& v) { if (v) {set_attribute_value(9, cast_vector(*v));} else {unset_attribute_value(9);} } std::optional< std::string > Ifc4x3_tc1::IfcDocumentInformation::CreationTime() const { if(get_attribute_value(10).isNull()) { return std::nullopt; } std::string v = get_attribute_value(10); return v; } void Ifc4x3_tc1::IfcDocumentInformation::setCreationTime(const std::optional< std::string >& v) { if (v) {set_attribute_value(10, *v);} else {unset_attribute_value(10);} } std::optional< std::string > Ifc4x3_tc1::IfcDocumentInformation::LastRevisionTime() const { if(get_attribute_value(11).isNull()) { return std::nullopt; } std::string v = get_attribute_value(11); return v; } @@ -10009,24 +10009,24 @@ std::vector<::Ifc4x3_tc1::IfcDocumentInformationRelationship> Ifc4x3_tc1::IfcDoc std::vector<::Ifc4x3_tc1::IfcDocumentInformationRelationship> Ifc4x3_tc1::IfcDocumentInformation::IsPointer() const { return cast_vector(file()->get_inverse(data()->id(), IFC4X3_TC1_types[331], 2)); } const ifcopenshell::entity& Ifc4x3_tc1::IfcDocumentInformation::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[330]); } -Ifc4x3_tc1::IfcDocumentInformation Ifc4x3_tc1::IfcDocumentInformation::initialize(std::string v1_Identification, std::string v2_Name, std::optional< std::string > v3_Description, std::optional< std::string > v4_Location, std::optional< std::string > v5_Purpose, std::optional< std::string > v6_IntendedUse, std::optional< std::string > v7_Scope, std::optional< std::string > v8_Revision, ::Ifc4x3_tc1::IfcActorSelect v9_DocumentOwner, std::optional< std::vector< ::Ifc4x3_tc1::IfcActorSelect > > v10_Editors, std::optional< std::string > v11_CreationTime, std::optional< std::string > v12_LastRevisionTime, std::optional< std::string > v13_ElectronicFormat, std::optional< std::string > v14_ValidFrom, std::optional< std::string > v15_ValidUntil, std::optional< ::Ifc4x3_tc1::IfcDocumentConfidentialityEnum::Value > v16_Confidentiality, std::optional< ::Ifc4x3_tc1::IfcDocumentStatusEnum::Value > v17_Status) { set_attribute_value(0, (v1_Identification));set_attribute_value(1, (v2_Name)); if (v3_Description) {set_attribute_value(2, (*v3_Description)); } if (v4_Location) {set_attribute_value(3, (*v4_Location)); } if (v5_Purpose) {set_attribute_value(4, (*v5_Purpose)); } if (v6_IntendedUse) {set_attribute_value(5, (*v6_IntendedUse)); } if (v7_Scope) {set_attribute_value(6, (*v7_Scope)); } if (v8_Revision) {set_attribute_value(7, (*v8_Revision)); }set_attribute_value(8, (v9_DocumentOwner)); if (v10_Editors) {set_attribute_value(9, cast_vector(*v10_Editors)); } if (v11_CreationTime) {set_attribute_value(10, (*v11_CreationTime)); } if (v12_LastRevisionTime) {set_attribute_value(11, (*v12_LastRevisionTime)); } if (v13_ElectronicFormat) {set_attribute_value(12, (*v13_ElectronicFormat)); } if (v14_ValidFrom) {set_attribute_value(13, (*v14_ValidFrom)); } if (v15_ValidUntil) {set_attribute_value(14, (*v15_ValidUntil)); } if (v16_Confidentiality) {set_attribute_value(15, (enumeration_reference(&::Ifc4x3_tc1::IfcDocumentConfidentialityEnum::Class(),(size_t)*v16_Confidentiality))); } if (v17_Status) {set_attribute_value(16, (enumeration_reference(&::Ifc4x3_tc1::IfcDocumentStatusEnum::Class(),(size_t)*v17_Status))); }; return *this; } +Ifc4x3_tc1::IfcDocumentInformation Ifc4x3_tc1::IfcDocumentInformation::initialize(std::string v1_Identification, std::string v2_Name, std::optional< std::string > v3_Description, std::optional< std::string > v4_Location, std::optional< std::string > v5_Purpose, std::optional< std::string > v6_IntendedUse, std::optional< std::string > v7_Scope, std::optional< std::string > v8_Revision, ::Ifc4x3_tc1::IfcActorSelect v9_DocumentOwner, std::optional< std::vector< ::Ifc4x3_tc1::IfcActorSelect > > v10_Editors, std::optional< std::string > v11_CreationTime, std::optional< std::string > v12_LastRevisionTime, std::optional< std::string > v13_ElectronicFormat, std::optional< std::string > v14_ValidFrom, std::optional< std::string > v15_ValidUntil, std::optional< ::Ifc4x3_tc1::IfcDocumentConfidentialityEnum::Value > v16_Confidentiality, std::optional< ::Ifc4x3_tc1::IfcDocumentStatusEnum::Value > v17_Status) { set_attribute_value(0, (v1_Identification));set_attribute_value(1, (v2_Name)); if (v3_Description) {set_attribute_value(2, (*v3_Description)); } if (v4_Location) {set_attribute_value(3, (*v4_Location)); } if (v5_Purpose) {set_attribute_value(4, (*v5_Purpose)); } if (v6_IntendedUse) {set_attribute_value(5, (*v6_IntendedUse)); } if (v7_Scope) {set_attribute_value(6, (*v7_Scope)); } if (v8_Revision) {set_attribute_value(7, (*v8_Revision)); }set_attribute_value(8, (v9_DocumentOwner)); if (v10_Editors) {set_attribute_value(9, cast_vector(*v10_Editors)); } if (v11_CreationTime) {set_attribute_value(10, (*v11_CreationTime)); } if (v12_LastRevisionTime) {set_attribute_value(11, (*v12_LastRevisionTime)); } if (v13_ElectronicFormat) {set_attribute_value(12, (*v13_ElectronicFormat)); } if (v14_ValidFrom) {set_attribute_value(13, (*v14_ValidFrom)); } if (v15_ValidUntil) {set_attribute_value(14, (*v15_ValidUntil)); } if (v16_Confidentiality) {set_attribute_value(15, (enumeration_reference(&::Ifc4x3_tc1::IfcDocumentConfidentialityEnum::Class(),(size_t)*v16_Confidentiality))); } if (v17_Status) {set_attribute_value(16, (enumeration_reference(&::Ifc4x3_tc1::IfcDocumentStatusEnum::Class(),(size_t)*v17_Status))); }; return *this; } // Function implementations for IfcDocumentInformationRelationship -::Ifc4x3_tc1::IfcDocumentInformation Ifc4x3_tc1::IfcDocumentInformationRelationship::RelatingDocument() const { return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3_tc1::IfcDocumentInformation>(); } +::Ifc4x3_tc1::IfcDocumentInformation Ifc4x3_tc1::IfcDocumentInformationRelationship::RelatingDocument() const { return ((express::base)(get_attribute_value(2))).as<::Ifc4x3_tc1::IfcDocumentInformation>(); } void Ifc4x3_tc1::IfcDocumentInformationRelationship::setRelatingDocument(const ::Ifc4x3_tc1::IfcDocumentInformation& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } -std::vector< ::Ifc4x3_tc1::IfcDocumentInformation > Ifc4x3_tc1::IfcDocumentInformationRelationship::RelatedDocuments() const { std::vector es = get_attribute_value(3); return cast_vector<::Ifc4x3_tc1::IfcDocumentInformation>(es); } -void Ifc4x3_tc1::IfcDocumentInformationRelationship::setRelatedDocuments(const std::vector< ::Ifc4x3_tc1::IfcDocumentInformation >& v) { set_attribute_value(3, cast_vector(v));if constexpr (false)unset_attribute_value(3); } +std::vector< ::Ifc4x3_tc1::IfcDocumentInformation > Ifc4x3_tc1::IfcDocumentInformationRelationship::RelatedDocuments() const { std::vector es = get_attribute_value(3); return cast_vector<::Ifc4x3_tc1::IfcDocumentInformation>(es); } +void Ifc4x3_tc1::IfcDocumentInformationRelationship::setRelatedDocuments(const std::vector< ::Ifc4x3_tc1::IfcDocumentInformation >& v) { set_attribute_value(3, cast_vector(v));if constexpr (false)unset_attribute_value(3); } std::optional< std::string > Ifc4x3_tc1::IfcDocumentInformationRelationship::RelationshipType() const { if(get_attribute_value(4).isNull()) { return std::nullopt; } std::string v = get_attribute_value(4); return v; } void Ifc4x3_tc1::IfcDocumentInformationRelationship::setRelationshipType(const std::optional< std::string >& v) { if (v) {set_attribute_value(4, *v);} else {unset_attribute_value(4);} } const ifcopenshell::entity& Ifc4x3_tc1::IfcDocumentInformationRelationship::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[331]); } -Ifc4x3_tc1::IfcDocumentInformationRelationship Ifc4x3_tc1::IfcDocumentInformationRelationship::initialize(std::optional< std::string > v1_Name, std::optional< std::string > v2_Description, ::Ifc4x3_tc1::IfcDocumentInformation v3_RelatingDocument, std::vector< ::Ifc4x3_tc1::IfcDocumentInformation > v4_RelatedDocuments, std::optional< std::string > v5_RelationshipType) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); } if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, (v3_RelatingDocument));set_attribute_value(3, cast_vector(v4_RelatedDocuments)); if (v5_RelationshipType) {set_attribute_value(4, (*v5_RelationshipType)); }; return *this; } +Ifc4x3_tc1::IfcDocumentInformationRelationship Ifc4x3_tc1::IfcDocumentInformationRelationship::initialize(std::optional< std::string > v1_Name, std::optional< std::string > v2_Description, ::Ifc4x3_tc1::IfcDocumentInformation v3_RelatingDocument, std::vector< ::Ifc4x3_tc1::IfcDocumentInformation > v4_RelatedDocuments, std::optional< std::string > v5_RelationshipType) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); } if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, (v3_RelatingDocument));set_attribute_value(3, cast_vector(v4_RelatedDocuments)); if (v5_RelationshipType) {set_attribute_value(4, (*v5_RelationshipType)); }; return *this; } // Function implementations for IfcDocumentReference std::optional< std::string > Ifc4x3_tc1::IfcDocumentReference::Description() const { if(get_attribute_value(3).isNull()) { return std::nullopt; } std::string v = get_attribute_value(3); return v; } void Ifc4x3_tc1::IfcDocumentReference::setDescription(const std::optional< std::string >& v) { if (v) {set_attribute_value(3, *v);} else {unset_attribute_value(3);} } -::Ifc4x3_tc1::IfcDocumentInformation Ifc4x3_tc1::IfcDocumentReference::ReferencedDocument() const { if(get_attribute_value(4).isNull()) { return ::Ifc4x3_tc1::IfcDocumentInformation{}; } return ((express::Base)(get_attribute_value(4))).as<::Ifc4x3_tc1::IfcDocumentInformation>(); } +::Ifc4x3_tc1::IfcDocumentInformation Ifc4x3_tc1::IfcDocumentReference::ReferencedDocument() const { if(get_attribute_value(4).isNull()) { return ::Ifc4x3_tc1::IfcDocumentInformation{}; } return ((express::base)(get_attribute_value(4))).as<::Ifc4x3_tc1::IfcDocumentInformation>(); } void Ifc4x3_tc1::IfcDocumentReference::setReferencedDocument(const ::Ifc4x3_tc1::IfcDocumentInformation& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } std::vector<::Ifc4x3_tc1::IfcRelAssociatesDocument> Ifc4x3_tc1::IfcDocumentReference::DocumentRefForObjects() const { return cast_vector(file()->get_inverse(data()->id(), IFC4X3_TC1_types[910], 5)); } @@ -10071,7 +10071,7 @@ std::optional< double > Ifc4x3_tc1::IfcDoorLiningProperties::CasingThickness() c void Ifc4x3_tc1::IfcDoorLiningProperties::setCasingThickness(const std::optional< double >& v) { if (v) {set_attribute_value(12, *v);} else {unset_attribute_value(12);} } std::optional< double > Ifc4x3_tc1::IfcDoorLiningProperties::CasingDepth() const { if(get_attribute_value(13).isNull()) { return std::nullopt; } double v = get_attribute_value(13); return v; } void Ifc4x3_tc1::IfcDoorLiningProperties::setCasingDepth(const std::optional< double >& v) { if (v) {set_attribute_value(13, *v);} else {unset_attribute_value(13);} } -::Ifc4x3_tc1::IfcShapeAspect Ifc4x3_tc1::IfcDoorLiningProperties::ShapeAspectStyle() const { if(get_attribute_value(14).isNull()) { return ::Ifc4x3_tc1::IfcShapeAspect{}; } return ((express::Base)(get_attribute_value(14))).as<::Ifc4x3_tc1::IfcShapeAspect>(); } +::Ifc4x3_tc1::IfcShapeAspect Ifc4x3_tc1::IfcDoorLiningProperties::ShapeAspectStyle() const { if(get_attribute_value(14).isNull()) { return ::Ifc4x3_tc1::IfcShapeAspect{}; } return ((express::base)(get_attribute_value(14))).as<::Ifc4x3_tc1::IfcShapeAspect>(); } void Ifc4x3_tc1::IfcDoorLiningProperties::setShapeAspectStyle(const ::Ifc4x3_tc1::IfcShapeAspect& v) { set_attribute_value(14, v);if constexpr (false)unset_attribute_value(14); } std::optional< double > Ifc4x3_tc1::IfcDoorLiningProperties::LiningToPanelOffsetX() const { if(get_attribute_value(15).isNull()) { return std::nullopt; } double v = get_attribute_value(15); return v; } void Ifc4x3_tc1::IfcDoorLiningProperties::setLiningToPanelOffsetX(const std::optional< double >& v) { if (v) {set_attribute_value(15, *v);} else {unset_attribute_value(15);} } @@ -10091,7 +10091,7 @@ std::optional< double > Ifc4x3_tc1::IfcDoorPanelProperties::PanelWidth() const { void Ifc4x3_tc1::IfcDoorPanelProperties::setPanelWidth(const std::optional< double >& v) { if (v) {set_attribute_value(6, *v);} else {unset_attribute_value(6);} } ::Ifc4x3_tc1::IfcDoorPanelPositionEnum::Value Ifc4x3_tc1::IfcDoorPanelProperties::PanelPosition() const { return ::Ifc4x3_tc1::IfcDoorPanelPositionEnum::FromString(get_attribute_value(7)); } void Ifc4x3_tc1::IfcDoorPanelProperties::setPanelPosition(const ::Ifc4x3_tc1::IfcDoorPanelPositionEnum::Value& v) { set_attribute_value(7, enumeration_reference(&::Ifc4x3_tc1::IfcDoorPanelPositionEnum::Class(), (size_t) v));if constexpr (false)unset_attribute_value(7); } -::Ifc4x3_tc1::IfcShapeAspect Ifc4x3_tc1::IfcDoorPanelProperties::ShapeAspectStyle() const { if(get_attribute_value(8).isNull()) { return ::Ifc4x3_tc1::IfcShapeAspect{}; } return ((express::Base)(get_attribute_value(8))).as<::Ifc4x3_tc1::IfcShapeAspect>(); } +::Ifc4x3_tc1::IfcShapeAspect Ifc4x3_tc1::IfcDoorPanelProperties::ShapeAspectStyle() const { if(get_attribute_value(8).isNull()) { return ::Ifc4x3_tc1::IfcShapeAspect{}; } return ((express::base)(get_attribute_value(8))).as<::Ifc4x3_tc1::IfcShapeAspect>(); } void Ifc4x3_tc1::IfcDoorPanelProperties::setShapeAspectStyle(const ::Ifc4x3_tc1::IfcShapeAspect& v) { set_attribute_value(8, v);if constexpr (false)unset_attribute_value(8); } @@ -10110,7 +10110,7 @@ void Ifc4x3_tc1::IfcDoorType::setUserDefinedOperationType(const std::optional< s const ifcopenshell::entity& Ifc4x3_tc1::IfcDoorType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[340]); } -Ifc4x3_tc1::IfcDoorType Ifc4x3_tc1::IfcDoorType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcDoorTypeEnum::Value v10_PredefinedType, ::Ifc4x3_tc1::IfcDoorTypeOperationEnum::Value v11_OperationType, std::optional< bool > v12_ParameterTakesPrecedence, std::optional< std::string > v13_UserDefinedOperationType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcDoorTypeEnum::Class(),(size_t)v10_PredefinedType)));set_attribute_value(10, (enumeration_reference(&::Ifc4x3_tc1::IfcDoorTypeOperationEnum::Class(),(size_t)v11_OperationType))); if (v12_ParameterTakesPrecedence) {set_attribute_value(11, (*v12_ParameterTakesPrecedence)); } if (v13_UserDefinedOperationType) {set_attribute_value(12, (*v13_UserDefinedOperationType)); }; return *this; } +Ifc4x3_tc1::IfcDoorType Ifc4x3_tc1::IfcDoorType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcDoorTypeEnum::Value v10_PredefinedType, ::Ifc4x3_tc1::IfcDoorTypeOperationEnum::Value v11_OperationType, std::optional< bool > v12_ParameterTakesPrecedence, std::optional< std::string > v13_UserDefinedOperationType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcDoorTypeEnum::Class(),(size_t)v10_PredefinedType)));set_attribute_value(10, (enumeration_reference(&::Ifc4x3_tc1::IfcDoorTypeOperationEnum::Class(),(size_t)v11_OperationType))); if (v12_ParameterTakesPrecedence) {set_attribute_value(11, (*v12_ParameterTakesPrecedence)); } if (v13_UserDefinedOperationType) {set_attribute_value(12, (*v13_UserDefinedOperationType)); }; return *this; } // Function implementations for IfcDraughtingPreDefinedColour @@ -10138,7 +10138,7 @@ void Ifc4x3_tc1::IfcDuctFittingType::setPredefinedType(const ::Ifc4x3_tc1::IfcDu const ifcopenshell::entity& Ifc4x3_tc1::IfcDuctFittingType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[347]); } -Ifc4x3_tc1::IfcDuctFittingType Ifc4x3_tc1::IfcDuctFittingType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcDuctFittingTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcDuctFittingTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_tc1::IfcDuctFittingType Ifc4x3_tc1::IfcDuctFittingType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcDuctFittingTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcDuctFittingTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcDuctSegment std::optional< ::Ifc4x3_tc1::IfcDuctSegmentTypeEnum::Value > Ifc4x3_tc1::IfcDuctSegment::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_tc1::IfcDuctSegmentTypeEnum::FromString(get_attribute_value(8)); } @@ -10154,7 +10154,7 @@ void Ifc4x3_tc1::IfcDuctSegmentType::setPredefinedType(const ::Ifc4x3_tc1::IfcDu const ifcopenshell::entity& Ifc4x3_tc1::IfcDuctSegmentType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[350]); } -Ifc4x3_tc1::IfcDuctSegmentType Ifc4x3_tc1::IfcDuctSegmentType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcDuctSegmentTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcDuctSegmentTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_tc1::IfcDuctSegmentType Ifc4x3_tc1::IfcDuctSegmentType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcDuctSegmentTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcDuctSegmentTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcDuctSilencer std::optional< ::Ifc4x3_tc1::IfcDuctSilencerTypeEnum::Value > Ifc4x3_tc1::IfcDuctSilencer::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_tc1::IfcDuctSilencerTypeEnum::FromString(get_attribute_value(8)); } @@ -10170,7 +10170,7 @@ void Ifc4x3_tc1::IfcDuctSilencerType::setPredefinedType(const ::Ifc4x3_tc1::IfcD const ifcopenshell::entity& Ifc4x3_tc1::IfcDuctSilencerType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[353]); } -Ifc4x3_tc1::IfcDuctSilencerType Ifc4x3_tc1::IfcDuctSilencerType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcDuctSilencerTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcDuctSilencerTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_tc1::IfcDuctSilencerType Ifc4x3_tc1::IfcDuctSilencerType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcDuctSilencerTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcDuctSilencerTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcEarthworksCut std::optional< ::Ifc4x3_tc1::IfcEarthworksCutTypeEnum::Value > Ifc4x3_tc1::IfcEarthworksCut::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_tc1::IfcEarthworksCutTypeEnum::FromString(get_attribute_value(8)); } @@ -10195,9 +10195,9 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcEarthworksFill::Class() { return *((i Ifc4x3_tc1::IfcEarthworksFill Ifc4x3_tc1::IfcEarthworksFill::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, ::Ifc4x3_tc1::IfcObjectPlacement v6_ObjectPlacement, ::Ifc4x3_tc1::IfcProductRepresentation v7_Representation, std::optional< std::string > v8_Tag, std::optional< ::Ifc4x3_tc1::IfcEarthworksFillTypeEnum::Value > v9_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); }set_attribute_value(5, (v6_ObjectPlacement));set_attribute_value(6, (v7_Representation)); if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_PredefinedType) {set_attribute_value(8, (enumeration_reference(&::Ifc4x3_tc1::IfcEarthworksFillTypeEnum::Class(),(size_t)*v9_PredefinedType))); }; return *this; } // Function implementations for IfcEdge -::Ifc4x3_tc1::IfcVertex Ifc4x3_tc1::IfcEdge::EdgeStart() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcVertex>(); } +::Ifc4x3_tc1::IfcVertex Ifc4x3_tc1::IfcEdge::EdgeStart() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcVertex>(); } void Ifc4x3_tc1::IfcEdge::setEdgeStart(const ::Ifc4x3_tc1::IfcVertex& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } -::Ifc4x3_tc1::IfcVertex Ifc4x3_tc1::IfcEdge::EdgeEnd() const { return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3_tc1::IfcVertex>(); } +::Ifc4x3_tc1::IfcVertex Ifc4x3_tc1::IfcEdge::EdgeEnd() const { return ((express::base)(get_attribute_value(1))).as<::Ifc4x3_tc1::IfcVertex>(); } void Ifc4x3_tc1::IfcEdge::setEdgeEnd(const ::Ifc4x3_tc1::IfcVertex& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } @@ -10205,7 +10205,7 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcEdge::Class() { return *((ifcopenshel Ifc4x3_tc1::IfcEdge Ifc4x3_tc1::IfcEdge::initialize(::Ifc4x3_tc1::IfcVertex v1_EdgeStart, ::Ifc4x3_tc1::IfcVertex v2_EdgeEnd) { set_attribute_value(0, (v1_EdgeStart));set_attribute_value(1, (v2_EdgeEnd));; return *this; } // Function implementations for IfcEdgeCurve -::Ifc4x3_tc1::IfcCurve Ifc4x3_tc1::IfcEdgeCurve::EdgeGeometry() const { return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3_tc1::IfcCurve>(); } +::Ifc4x3_tc1::IfcCurve Ifc4x3_tc1::IfcEdgeCurve::EdgeGeometry() const { return ((express::base)(get_attribute_value(2))).as<::Ifc4x3_tc1::IfcCurve>(); } void Ifc4x3_tc1::IfcEdgeCurve::setEdgeGeometry(const ::Ifc4x3_tc1::IfcCurve& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } bool Ifc4x3_tc1::IfcEdgeCurve::SameSense() const { bool v = get_attribute_value(3); return v; } void Ifc4x3_tc1::IfcEdgeCurve::setSameSense(const bool& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } @@ -10215,12 +10215,12 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcEdgeCurve::Class() { return *((ifcope Ifc4x3_tc1::IfcEdgeCurve Ifc4x3_tc1::IfcEdgeCurve::initialize(::Ifc4x3_tc1::IfcVertex v1_EdgeStart, ::Ifc4x3_tc1::IfcVertex v2_EdgeEnd, ::Ifc4x3_tc1::IfcCurve v3_EdgeGeometry, bool v4_SameSense) { set_attribute_value(0, (v1_EdgeStart));set_attribute_value(1, (v2_EdgeEnd));set_attribute_value(2, (v3_EdgeGeometry));set_attribute_value(3, (v4_SameSense));; return *this; } // Function implementations for IfcEdgeLoop -std::vector< ::Ifc4x3_tc1::IfcOrientedEdge > Ifc4x3_tc1::IfcEdgeLoop::EdgeList() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3_tc1::IfcOrientedEdge>(es); } -void Ifc4x3_tc1::IfcEdgeLoop::setEdgeList(const std::vector< ::Ifc4x3_tc1::IfcOrientedEdge >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } +std::vector< ::Ifc4x3_tc1::IfcOrientedEdge > Ifc4x3_tc1::IfcEdgeLoop::EdgeList() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3_tc1::IfcOrientedEdge>(es); } +void Ifc4x3_tc1::IfcEdgeLoop::setEdgeList(const std::vector< ::Ifc4x3_tc1::IfcOrientedEdge >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } const ifcopenshell::entity& Ifc4x3_tc1::IfcEdgeLoop::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[364]); } -Ifc4x3_tc1::IfcEdgeLoop Ifc4x3_tc1::IfcEdgeLoop::initialize(std::vector< ::Ifc4x3_tc1::IfcOrientedEdge > v1_EdgeList) { set_attribute_value(0, cast_vector(v1_EdgeList));; return *this; } +Ifc4x3_tc1::IfcEdgeLoop Ifc4x3_tc1::IfcEdgeLoop::initialize(std::vector< ::Ifc4x3_tc1::IfcOrientedEdge > v1_EdgeList) { set_attribute_value(0, cast_vector(v1_EdgeList));; return *this; } // Function implementations for IfcElectricAppliance std::optional< ::Ifc4x3_tc1::IfcElectricApplianceTypeEnum::Value > Ifc4x3_tc1::IfcElectricAppliance::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_tc1::IfcElectricApplianceTypeEnum::FromString(get_attribute_value(8)); } @@ -10236,7 +10236,7 @@ void Ifc4x3_tc1::IfcElectricApplianceType::setPredefinedType(const ::Ifc4x3_tc1: const ifcopenshell::entity& Ifc4x3_tc1::IfcElectricApplianceType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[366]); } -Ifc4x3_tc1::IfcElectricApplianceType Ifc4x3_tc1::IfcElectricApplianceType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcElectricApplianceTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcElectricApplianceTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_tc1::IfcElectricApplianceType Ifc4x3_tc1::IfcElectricApplianceType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcElectricApplianceTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcElectricApplianceTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcElectricDistributionBoard std::optional< ::Ifc4x3_tc1::IfcElectricDistributionBoardTypeEnum::Value > Ifc4x3_tc1::IfcElectricDistributionBoard::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_tc1::IfcElectricDistributionBoardTypeEnum::FromString(get_attribute_value(8)); } @@ -10252,7 +10252,7 @@ void Ifc4x3_tc1::IfcElectricDistributionBoardType::setPredefinedType(const ::Ifc const ifcopenshell::entity& Ifc4x3_tc1::IfcElectricDistributionBoardType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[373]); } -Ifc4x3_tc1::IfcElectricDistributionBoardType Ifc4x3_tc1::IfcElectricDistributionBoardType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcElectricDistributionBoardTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcElectricDistributionBoardTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_tc1::IfcElectricDistributionBoardType Ifc4x3_tc1::IfcElectricDistributionBoardType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcElectricDistributionBoardTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcElectricDistributionBoardTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcElectricFlowStorageDevice std::optional< ::Ifc4x3_tc1::IfcElectricFlowStorageDeviceTypeEnum::Value > Ifc4x3_tc1::IfcElectricFlowStorageDevice::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_tc1::IfcElectricFlowStorageDeviceTypeEnum::FromString(get_attribute_value(8)); } @@ -10268,7 +10268,7 @@ void Ifc4x3_tc1::IfcElectricFlowStorageDeviceType::setPredefinedType(const ::Ifc const ifcopenshell::entity& Ifc4x3_tc1::IfcElectricFlowStorageDeviceType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[376]); } -Ifc4x3_tc1::IfcElectricFlowStorageDeviceType Ifc4x3_tc1::IfcElectricFlowStorageDeviceType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcElectricFlowStorageDeviceTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcElectricFlowStorageDeviceTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_tc1::IfcElectricFlowStorageDeviceType Ifc4x3_tc1::IfcElectricFlowStorageDeviceType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcElectricFlowStorageDeviceTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcElectricFlowStorageDeviceTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcElectricFlowTreatmentDevice std::optional< ::Ifc4x3_tc1::IfcElectricFlowTreatmentDeviceTypeEnum::Value > Ifc4x3_tc1::IfcElectricFlowTreatmentDevice::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_tc1::IfcElectricFlowTreatmentDeviceTypeEnum::FromString(get_attribute_value(8)); } @@ -10284,7 +10284,7 @@ void Ifc4x3_tc1::IfcElectricFlowTreatmentDeviceType::setPredefinedType(const ::I const ifcopenshell::entity& Ifc4x3_tc1::IfcElectricFlowTreatmentDeviceType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[379]); } -Ifc4x3_tc1::IfcElectricFlowTreatmentDeviceType Ifc4x3_tc1::IfcElectricFlowTreatmentDeviceType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcElectricFlowTreatmentDeviceTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcElectricFlowTreatmentDeviceTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_tc1::IfcElectricFlowTreatmentDeviceType Ifc4x3_tc1::IfcElectricFlowTreatmentDeviceType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcElectricFlowTreatmentDeviceTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcElectricFlowTreatmentDeviceTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcElectricGenerator std::optional< ::Ifc4x3_tc1::IfcElectricGeneratorTypeEnum::Value > Ifc4x3_tc1::IfcElectricGenerator::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_tc1::IfcElectricGeneratorTypeEnum::FromString(get_attribute_value(8)); } @@ -10300,7 +10300,7 @@ void Ifc4x3_tc1::IfcElectricGeneratorType::setPredefinedType(const ::Ifc4x3_tc1: const ifcopenshell::entity& Ifc4x3_tc1::IfcElectricGeneratorType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[382]); } -Ifc4x3_tc1::IfcElectricGeneratorType Ifc4x3_tc1::IfcElectricGeneratorType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcElectricGeneratorTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcElectricGeneratorTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_tc1::IfcElectricGeneratorType Ifc4x3_tc1::IfcElectricGeneratorType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcElectricGeneratorTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcElectricGeneratorTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcElectricMotor std::optional< ::Ifc4x3_tc1::IfcElectricMotorTypeEnum::Value > Ifc4x3_tc1::IfcElectricMotor::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_tc1::IfcElectricMotorTypeEnum::FromString(get_attribute_value(8)); } @@ -10316,7 +10316,7 @@ void Ifc4x3_tc1::IfcElectricMotorType::setPredefinedType(const ::Ifc4x3_tc1::Ifc const ifcopenshell::entity& Ifc4x3_tc1::IfcElectricMotorType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[385]); } -Ifc4x3_tc1::IfcElectricMotorType Ifc4x3_tc1::IfcElectricMotorType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcElectricMotorTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcElectricMotorTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_tc1::IfcElectricMotorType Ifc4x3_tc1::IfcElectricMotorType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcElectricMotorTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcElectricMotorTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcElectricTimeControl std::optional< ::Ifc4x3_tc1::IfcElectricTimeControlTypeEnum::Value > Ifc4x3_tc1::IfcElectricTimeControl::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_tc1::IfcElectricTimeControlTypeEnum::FromString(get_attribute_value(8)); } @@ -10332,7 +10332,7 @@ void Ifc4x3_tc1::IfcElectricTimeControlType::setPredefinedType(const ::Ifc4x3_tc const ifcopenshell::entity& Ifc4x3_tc1::IfcElectricTimeControlType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[389]); } -Ifc4x3_tc1::IfcElectricTimeControlType Ifc4x3_tc1::IfcElectricTimeControlType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcElectricTimeControlTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcElectricTimeControlTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_tc1::IfcElectricTimeControlType Ifc4x3_tc1::IfcElectricTimeControlType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcElectricTimeControlTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcElectricTimeControlTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcElement std::optional< std::string > Ifc4x3_tc1::IfcElement::Tag() const { if(get_attribute_value(7).isNull()) { return std::nullopt; } std::string v = get_attribute_value(7); return v; } @@ -10370,7 +10370,7 @@ void Ifc4x3_tc1::IfcElementAssemblyType::setPredefinedType(const ::Ifc4x3_tc1::I const ifcopenshell::entity& Ifc4x3_tc1::IfcElementAssemblyType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[395]); } -Ifc4x3_tc1::IfcElementAssemblyType Ifc4x3_tc1::IfcElementAssemblyType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcElementAssemblyTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcElementAssemblyTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_tc1::IfcElementAssemblyType Ifc4x3_tc1::IfcElementAssemblyType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcElementAssemblyTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcElementAssemblyTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcElementComponent @@ -10382,17 +10382,17 @@ Ifc4x3_tc1::IfcElementComponent Ifc4x3_tc1::IfcElementComponent::initialize(std: const ifcopenshell::entity& Ifc4x3_tc1::IfcElementComponentType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[398]); } -Ifc4x3_tc1::IfcElementComponentType Ifc4x3_tc1::IfcElementComponentType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } +Ifc4x3_tc1::IfcElementComponentType Ifc4x3_tc1::IfcElementComponentType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } // Function implementations for IfcElementQuantity std::optional< std::string > Ifc4x3_tc1::IfcElementQuantity::MethodOfMeasurement() const { if(get_attribute_value(4).isNull()) { return std::nullopt; } std::string v = get_attribute_value(4); return v; } void Ifc4x3_tc1::IfcElementQuantity::setMethodOfMeasurement(const std::optional< std::string >& v) { if (v) {set_attribute_value(4, *v);} else {unset_attribute_value(4);} } -std::vector< ::Ifc4x3_tc1::IfcPhysicalQuantity > Ifc4x3_tc1::IfcElementQuantity::Quantities() const { std::vector es = get_attribute_value(5); return cast_vector<::Ifc4x3_tc1::IfcPhysicalQuantity>(es); } -void Ifc4x3_tc1::IfcElementQuantity::setQuantities(const std::vector< ::Ifc4x3_tc1::IfcPhysicalQuantity >& v) { set_attribute_value(5, cast_vector(v));if constexpr (false)unset_attribute_value(5); } +std::vector< ::Ifc4x3_tc1::IfcPhysicalQuantity > Ifc4x3_tc1::IfcElementQuantity::Quantities() const { std::vector es = get_attribute_value(5); return cast_vector<::Ifc4x3_tc1::IfcPhysicalQuantity>(es); } +void Ifc4x3_tc1::IfcElementQuantity::setQuantities(const std::vector< ::Ifc4x3_tc1::IfcPhysicalQuantity >& v) { set_attribute_value(5, cast_vector(v));if constexpr (false)unset_attribute_value(5); } const ifcopenshell::entity& Ifc4x3_tc1::IfcElementQuantity::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[400]); } -Ifc4x3_tc1::IfcElementQuantity Ifc4x3_tc1::IfcElementQuantity::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_MethodOfMeasurement, std::vector< ::Ifc4x3_tc1::IfcPhysicalQuantity > v6_Quantities) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_MethodOfMeasurement) {set_attribute_value(4, (*v5_MethodOfMeasurement)); }set_attribute_value(5, cast_vector(v6_Quantities));; return *this; } +Ifc4x3_tc1::IfcElementQuantity Ifc4x3_tc1::IfcElementQuantity::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_MethodOfMeasurement, std::vector< ::Ifc4x3_tc1::IfcPhysicalQuantity > v6_Quantities) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_MethodOfMeasurement) {set_attribute_value(4, (*v5_MethodOfMeasurement)); }set_attribute_value(5, cast_vector(v6_Quantities));; return *this; } // Function implementations for IfcElementType std::optional< std::string > Ifc4x3_tc1::IfcElementType::ElementType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } std::string v = get_attribute_value(8); return v; } @@ -10400,10 +10400,10 @@ void Ifc4x3_tc1::IfcElementType::setElementType(const std::optional< std::string const ifcopenshell::entity& Ifc4x3_tc1::IfcElementType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[401]); } -Ifc4x3_tc1::IfcElementType Ifc4x3_tc1::IfcElementType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } +Ifc4x3_tc1::IfcElementType Ifc4x3_tc1::IfcElementType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } // Function implementations for IfcElementarySurface -::Ifc4x3_tc1::IfcAxis2Placement3D Ifc4x3_tc1::IfcElementarySurface::Position() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcAxis2Placement3D>(); } +::Ifc4x3_tc1::IfcAxis2Placement3D Ifc4x3_tc1::IfcElementarySurface::Position() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcAxis2Placement3D>(); } void Ifc4x3_tc1::IfcElementarySurface::setPosition(const ::Ifc4x3_tc1::IfcAxis2Placement3D& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } @@ -10440,7 +10440,7 @@ Ifc4x3_tc1::IfcEnergyConversionDevice Ifc4x3_tc1::IfcEnergyConversionDevice::ini const ifcopenshell::entity& Ifc4x3_tc1::IfcEnergyConversionDeviceType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[405]); } -Ifc4x3_tc1::IfcEnergyConversionDeviceType Ifc4x3_tc1::IfcEnergyConversionDeviceType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } +Ifc4x3_tc1::IfcEnergyConversionDeviceType Ifc4x3_tc1::IfcEnergyConversionDeviceType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } // Function implementations for IfcEngine std::optional< ::Ifc4x3_tc1::IfcEngineTypeEnum::Value > Ifc4x3_tc1::IfcEngine::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_tc1::IfcEngineTypeEnum::FromString(get_attribute_value(8)); } @@ -10456,7 +10456,7 @@ void Ifc4x3_tc1::IfcEngineType::setPredefinedType(const ::Ifc4x3_tc1::IfcEngineT const ifcopenshell::entity& Ifc4x3_tc1::IfcEngineType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[408]); } -Ifc4x3_tc1::IfcEngineType Ifc4x3_tc1::IfcEngineType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcEngineTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcEngineTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_tc1::IfcEngineType Ifc4x3_tc1::IfcEngineType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcEngineTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcEngineTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcEvaporativeCooler std::optional< ::Ifc4x3_tc1::IfcEvaporativeCoolerTypeEnum::Value > Ifc4x3_tc1::IfcEvaporativeCooler::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_tc1::IfcEvaporativeCoolerTypeEnum::FromString(get_attribute_value(8)); } @@ -10472,7 +10472,7 @@ void Ifc4x3_tc1::IfcEvaporativeCoolerType::setPredefinedType(const ::Ifc4x3_tc1: const ifcopenshell::entity& Ifc4x3_tc1::IfcEvaporativeCoolerType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[411]); } -Ifc4x3_tc1::IfcEvaporativeCoolerType Ifc4x3_tc1::IfcEvaporativeCoolerType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcEvaporativeCoolerTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcEvaporativeCoolerTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_tc1::IfcEvaporativeCoolerType Ifc4x3_tc1::IfcEvaporativeCoolerType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcEvaporativeCoolerTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcEvaporativeCoolerTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcEvaporator std::optional< ::Ifc4x3_tc1::IfcEvaporatorTypeEnum::Value > Ifc4x3_tc1::IfcEvaporator::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_tc1::IfcEvaporatorTypeEnum::FromString(get_attribute_value(8)); } @@ -10488,7 +10488,7 @@ void Ifc4x3_tc1::IfcEvaporatorType::setPredefinedType(const ::Ifc4x3_tc1::IfcEva const ifcopenshell::entity& Ifc4x3_tc1::IfcEvaporatorType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[414]); } -Ifc4x3_tc1::IfcEvaporatorType Ifc4x3_tc1::IfcEvaporatorType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcEvaporatorTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcEvaporatorTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_tc1::IfcEvaporatorType Ifc4x3_tc1::IfcEvaporatorType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcEvaporatorTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcEvaporatorTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcEvent std::optional< ::Ifc4x3_tc1::IfcEventTypeEnum::Value > Ifc4x3_tc1::IfcEvent::PredefinedType() const { if(get_attribute_value(7).isNull()) { return std::nullopt; } return ::Ifc4x3_tc1::IfcEventTypeEnum::FromString(get_attribute_value(7)); } @@ -10497,7 +10497,7 @@ std::optional< ::Ifc4x3_tc1::IfcEventTriggerTypeEnum::Value > Ifc4x3_tc1::IfcEve void Ifc4x3_tc1::IfcEvent::setEventTriggerType(const std::optional< ::Ifc4x3_tc1::IfcEventTriggerTypeEnum::Value >& v) { if (v) {set_attribute_value(8, enumeration_reference(&::Ifc4x3_tc1::IfcEventTriggerTypeEnum::Class(), (size_t) *v));} else {unset_attribute_value(8);} } std::optional< std::string > Ifc4x3_tc1::IfcEvent::UserDefinedEventTriggerType() const { if(get_attribute_value(9).isNull()) { return std::nullopt; } std::string v = get_attribute_value(9); return v; } void Ifc4x3_tc1::IfcEvent::setUserDefinedEventTriggerType(const std::optional< std::string >& v) { if (v) {set_attribute_value(9, *v);} else {unset_attribute_value(9);} } -::Ifc4x3_tc1::IfcEventTime Ifc4x3_tc1::IfcEvent::EventOccurenceTime() const { if(get_attribute_value(10).isNull()) { return ::Ifc4x3_tc1::IfcEventTime{}; } return ((express::Base)(get_attribute_value(10))).as<::Ifc4x3_tc1::IfcEventTime>(); } +::Ifc4x3_tc1::IfcEventTime Ifc4x3_tc1::IfcEvent::EventOccurenceTime() const { if(get_attribute_value(10).isNull()) { return ::Ifc4x3_tc1::IfcEventTime{}; } return ((express::base)(get_attribute_value(10))).as<::Ifc4x3_tc1::IfcEventTime>(); } void Ifc4x3_tc1::IfcEvent::setEventOccurenceTime(const ::Ifc4x3_tc1::IfcEventTime& v) { set_attribute_value(10, v);if constexpr (false)unset_attribute_value(10); } @@ -10528,19 +10528,19 @@ void Ifc4x3_tc1::IfcEventType::setUserDefinedEventTriggerType(const std::optiona const ifcopenshell::entity& Ifc4x3_tc1::IfcEventType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[419]); } -Ifc4x3_tc1::IfcEventType Ifc4x3_tc1::IfcEventType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::string > v7_Identification, std::optional< std::string > v8_LongDescription, std::optional< std::string > v9_ProcessType, ::Ifc4x3_tc1::IfcEventTypeEnum::Value v10_PredefinedType, ::Ifc4x3_tc1::IfcEventTriggerTypeEnum::Value v11_EventTriggerType, std::optional< std::string > v12_UserDefinedEventTriggerType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_Identification) {set_attribute_value(6, (*v7_Identification)); } if (v8_LongDescription) {set_attribute_value(7, (*v8_LongDescription)); } if (v9_ProcessType) {set_attribute_value(8, (*v9_ProcessType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcEventTypeEnum::Class(),(size_t)v10_PredefinedType)));set_attribute_value(10, (enumeration_reference(&::Ifc4x3_tc1::IfcEventTriggerTypeEnum::Class(),(size_t)v11_EventTriggerType))); if (v12_UserDefinedEventTriggerType) {set_attribute_value(11, (*v12_UserDefinedEventTriggerType)); }; return *this; } +Ifc4x3_tc1::IfcEventType Ifc4x3_tc1::IfcEventType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::string > v7_Identification, std::optional< std::string > v8_LongDescription, std::optional< std::string > v9_ProcessType, ::Ifc4x3_tc1::IfcEventTypeEnum::Value v10_PredefinedType, ::Ifc4x3_tc1::IfcEventTriggerTypeEnum::Value v11_EventTriggerType, std::optional< std::string > v12_UserDefinedEventTriggerType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_Identification) {set_attribute_value(6, (*v7_Identification)); } if (v8_LongDescription) {set_attribute_value(7, (*v8_LongDescription)); } if (v9_ProcessType) {set_attribute_value(8, (*v9_ProcessType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcEventTypeEnum::Class(),(size_t)v10_PredefinedType)));set_attribute_value(10, (enumeration_reference(&::Ifc4x3_tc1::IfcEventTriggerTypeEnum::Class(),(size_t)v11_EventTriggerType))); if (v12_UserDefinedEventTriggerType) {set_attribute_value(11, (*v12_UserDefinedEventTriggerType)); }; return *this; } // Function implementations for IfcExtendedProperties std::optional< std::string > Ifc4x3_tc1::IfcExtendedProperties::Name() const { if(get_attribute_value(0).isNull()) { return std::nullopt; } std::string v = get_attribute_value(0); return v; } void Ifc4x3_tc1::IfcExtendedProperties::setName(const std::optional< std::string >& v) { if (v) {set_attribute_value(0, *v);} else {unset_attribute_value(0);} } std::optional< std::string > Ifc4x3_tc1::IfcExtendedProperties::Description() const { if(get_attribute_value(1).isNull()) { return std::nullopt; } std::string v = get_attribute_value(1); return v; } void Ifc4x3_tc1::IfcExtendedProperties::setDescription(const std::optional< std::string >& v) { if (v) {set_attribute_value(1, *v);} else {unset_attribute_value(1);} } -std::vector< ::Ifc4x3_tc1::IfcProperty > Ifc4x3_tc1::IfcExtendedProperties::Properties() const { std::vector es = get_attribute_value(2); return cast_vector<::Ifc4x3_tc1::IfcProperty>(es); } -void Ifc4x3_tc1::IfcExtendedProperties::setProperties(const std::vector< ::Ifc4x3_tc1::IfcProperty >& v) { set_attribute_value(2, cast_vector(v));if constexpr (false)unset_attribute_value(2); } +std::vector< ::Ifc4x3_tc1::IfcProperty > Ifc4x3_tc1::IfcExtendedProperties::Properties() const { std::vector es = get_attribute_value(2); return cast_vector<::Ifc4x3_tc1::IfcProperty>(es); } +void Ifc4x3_tc1::IfcExtendedProperties::setProperties(const std::vector< ::Ifc4x3_tc1::IfcProperty >& v) { set_attribute_value(2, cast_vector(v));if constexpr (false)unset_attribute_value(2); } const ifcopenshell::entity& Ifc4x3_tc1::IfcExtendedProperties::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[421]); } -Ifc4x3_tc1::IfcExtendedProperties Ifc4x3_tc1::IfcExtendedProperties::initialize(std::optional< std::string > v1_Name, std::optional< std::string > v2_Description, std::vector< ::Ifc4x3_tc1::IfcProperty > v3_Properties) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); } if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, cast_vector(v3_Properties));; return *this; } +Ifc4x3_tc1::IfcExtendedProperties Ifc4x3_tc1::IfcExtendedProperties::initialize(std::optional< std::string > v1_Name, std::optional< std::string > v2_Description, std::vector< ::Ifc4x3_tc1::IfcProperty > v3_Properties) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); } if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, cast_vector(v3_Properties));; return *this; } // Function implementations for IfcExternalInformation @@ -10562,14 +10562,14 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcExternalReference::Class() { return * Ifc4x3_tc1::IfcExternalReference Ifc4x3_tc1::IfcExternalReference::initialize(std::optional< std::string > v1_Location, std::optional< std::string > v2_Identification, std::optional< std::string > v3_Name) { if (v1_Location) {set_attribute_value(0, (*v1_Location)); } if (v2_Identification) {set_attribute_value(1, (*v2_Identification)); } if (v3_Name) {set_attribute_value(2, (*v3_Name)); }; return *this; } // Function implementations for IfcExternalReferenceRelationship -::Ifc4x3_tc1::IfcExternalReference Ifc4x3_tc1::IfcExternalReferenceRelationship::RelatingReference() const { return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3_tc1::IfcExternalReference>(); } +::Ifc4x3_tc1::IfcExternalReference Ifc4x3_tc1::IfcExternalReferenceRelationship::RelatingReference() const { return ((express::base)(get_attribute_value(2))).as<::Ifc4x3_tc1::IfcExternalReference>(); } void Ifc4x3_tc1::IfcExternalReferenceRelationship::setRelatingReference(const ::Ifc4x3_tc1::IfcExternalReference& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } -std::vector< ::Ifc4x3_tc1::IfcResourceObjectSelect > Ifc4x3_tc1::IfcExternalReferenceRelationship::RelatedResourceObjects() const { std::vector es = get_attribute_value(3); return cast_vector<::Ifc4x3_tc1::IfcResourceObjectSelect>(es); } -void Ifc4x3_tc1::IfcExternalReferenceRelationship::setRelatedResourceObjects(const std::vector< ::Ifc4x3_tc1::IfcResourceObjectSelect >& v) { set_attribute_value(3, cast_vector(v));if constexpr (false)unset_attribute_value(3); } +std::vector< ::Ifc4x3_tc1::IfcResourceObjectSelect > Ifc4x3_tc1::IfcExternalReferenceRelationship::RelatedResourceObjects() const { std::vector es = get_attribute_value(3); return cast_vector<::Ifc4x3_tc1::IfcResourceObjectSelect>(es); } +void Ifc4x3_tc1::IfcExternalReferenceRelationship::setRelatedResourceObjects(const std::vector< ::Ifc4x3_tc1::IfcResourceObjectSelect >& v) { set_attribute_value(3, cast_vector(v));if constexpr (false)unset_attribute_value(3); } const ifcopenshell::entity& Ifc4x3_tc1::IfcExternalReferenceRelationship::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[427]); } -Ifc4x3_tc1::IfcExternalReferenceRelationship Ifc4x3_tc1::IfcExternalReferenceRelationship::initialize(std::optional< std::string > v1_Name, std::optional< std::string > v2_Description, ::Ifc4x3_tc1::IfcExternalReference v3_RelatingReference, std::vector< ::Ifc4x3_tc1::IfcResourceObjectSelect > v4_RelatedResourceObjects) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); } if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, (v3_RelatingReference));set_attribute_value(3, cast_vector(v4_RelatedResourceObjects));; return *this; } +Ifc4x3_tc1::IfcExternalReferenceRelationship Ifc4x3_tc1::IfcExternalReferenceRelationship::initialize(std::optional< std::string > v1_Name, std::optional< std::string > v2_Description, ::Ifc4x3_tc1::IfcExternalReference v3_RelatingReference, std::vector< ::Ifc4x3_tc1::IfcResourceObjectSelect > v4_RelatedResourceObjects) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); } if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, (v3_RelatingReference));set_attribute_value(3, cast_vector(v4_RelatedResourceObjects));; return *this; } // Function implementations for IfcExternalSpatialElement std::optional< ::Ifc4x3_tc1::IfcExternalSpatialElementTypeEnum::Value > Ifc4x3_tc1::IfcExternalSpatialElement::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_tc1::IfcExternalSpatialElementTypeEnum::FromString(get_attribute_value(8)); } @@ -10605,7 +10605,7 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcExternallyDefinedTextFont::Class() { Ifc4x3_tc1::IfcExternallyDefinedTextFont Ifc4x3_tc1::IfcExternallyDefinedTextFont::initialize(std::optional< std::string > v1_Location, std::optional< std::string > v2_Identification, std::optional< std::string > v3_Name) { if (v1_Location) {set_attribute_value(0, (*v1_Location)); } if (v2_Identification) {set_attribute_value(1, (*v2_Identification)); } if (v3_Name) {set_attribute_value(2, (*v3_Name)); }; return *this; } // Function implementations for IfcExtrudedAreaSolid -::Ifc4x3_tc1::IfcDirection Ifc4x3_tc1::IfcExtrudedAreaSolid::ExtrudedDirection() const { return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3_tc1::IfcDirection>(); } +::Ifc4x3_tc1::IfcDirection Ifc4x3_tc1::IfcExtrudedAreaSolid::ExtrudedDirection() const { return ((express::base)(get_attribute_value(2))).as<::Ifc4x3_tc1::IfcDirection>(); } void Ifc4x3_tc1::IfcExtrudedAreaSolid::setExtrudedDirection(const ::Ifc4x3_tc1::IfcDirection& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } double Ifc4x3_tc1::IfcExtrudedAreaSolid::Depth() const { double v = get_attribute_value(3); return v; } void Ifc4x3_tc1::IfcExtrudedAreaSolid::setDepth(const double& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } @@ -10615,7 +10615,7 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcExtrudedAreaSolid::Class() { return * Ifc4x3_tc1::IfcExtrudedAreaSolid Ifc4x3_tc1::IfcExtrudedAreaSolid::initialize(::Ifc4x3_tc1::IfcProfileDef v1_SweptArea, ::Ifc4x3_tc1::IfcAxis2Placement3D v2_Position, ::Ifc4x3_tc1::IfcDirection v3_ExtrudedDirection, double v4_Depth) { set_attribute_value(0, (v1_SweptArea));set_attribute_value(1, (v2_Position));set_attribute_value(2, (v3_ExtrudedDirection));set_attribute_value(3, (v4_Depth));; return *this; } // Function implementations for IfcExtrudedAreaSolidTapered -::Ifc4x3_tc1::IfcProfileDef Ifc4x3_tc1::IfcExtrudedAreaSolidTapered::EndSweptArea() const { return ((express::Base)(get_attribute_value(4))).as<::Ifc4x3_tc1::IfcProfileDef>(); } +::Ifc4x3_tc1::IfcProfileDef Ifc4x3_tc1::IfcExtrudedAreaSolidTapered::EndSweptArea() const { return ((express::base)(get_attribute_value(4))).as<::Ifc4x3_tc1::IfcProfileDef>(); } void Ifc4x3_tc1::IfcExtrudedAreaSolidTapered::setEndSweptArea(const ::Ifc4x3_tc1::IfcProfileDef& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } @@ -10623,24 +10623,24 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcExtrudedAreaSolidTapered::Class() { r Ifc4x3_tc1::IfcExtrudedAreaSolidTapered Ifc4x3_tc1::IfcExtrudedAreaSolidTapered::initialize(::Ifc4x3_tc1::IfcProfileDef v1_SweptArea, ::Ifc4x3_tc1::IfcAxis2Placement3D v2_Position, ::Ifc4x3_tc1::IfcDirection v3_ExtrudedDirection, double v4_Depth, ::Ifc4x3_tc1::IfcProfileDef v5_EndSweptArea) { set_attribute_value(0, (v1_SweptArea));set_attribute_value(1, (v2_Position));set_attribute_value(2, (v3_ExtrudedDirection));set_attribute_value(3, (v4_Depth));set_attribute_value(4, (v5_EndSweptArea));; return *this; } // Function implementations for IfcFace -std::vector< ::Ifc4x3_tc1::IfcFaceBound > Ifc4x3_tc1::IfcFace::Bounds() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3_tc1::IfcFaceBound>(es); } -void Ifc4x3_tc1::IfcFace::setBounds(const std::vector< ::Ifc4x3_tc1::IfcFaceBound >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } +std::vector< ::Ifc4x3_tc1::IfcFaceBound > Ifc4x3_tc1::IfcFace::Bounds() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3_tc1::IfcFaceBound>(es); } +void Ifc4x3_tc1::IfcFace::setBounds(const std::vector< ::Ifc4x3_tc1::IfcFaceBound >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } std::vector<::Ifc4x3_tc1::IfcTextureMap> Ifc4x3_tc1::IfcFace::HasTextureMaps() const { return cast_vector(file()->get_inverse(data()->id(), IFC4X3_TC1_types[1193], 2)); } const ifcopenshell::entity& Ifc4x3_tc1::IfcFace::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[433]); } -Ifc4x3_tc1::IfcFace Ifc4x3_tc1::IfcFace::initialize(std::vector< ::Ifc4x3_tc1::IfcFaceBound > v1_Bounds) { set_attribute_value(0, cast_vector(v1_Bounds));; return *this; } +Ifc4x3_tc1::IfcFace Ifc4x3_tc1::IfcFace::initialize(std::vector< ::Ifc4x3_tc1::IfcFaceBound > v1_Bounds) { set_attribute_value(0, cast_vector(v1_Bounds));; return *this; } // Function implementations for IfcFaceBasedSurfaceModel -std::vector< ::Ifc4x3_tc1::IfcConnectedFaceSet > Ifc4x3_tc1::IfcFaceBasedSurfaceModel::FbsmFaces() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3_tc1::IfcConnectedFaceSet>(es); } -void Ifc4x3_tc1::IfcFaceBasedSurfaceModel::setFbsmFaces(const std::vector< ::Ifc4x3_tc1::IfcConnectedFaceSet >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } +std::vector< ::Ifc4x3_tc1::IfcConnectedFaceSet > Ifc4x3_tc1::IfcFaceBasedSurfaceModel::FbsmFaces() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3_tc1::IfcConnectedFaceSet>(es); } +void Ifc4x3_tc1::IfcFaceBasedSurfaceModel::setFbsmFaces(const std::vector< ::Ifc4x3_tc1::IfcConnectedFaceSet >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } const ifcopenshell::entity& Ifc4x3_tc1::IfcFaceBasedSurfaceModel::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[434]); } -Ifc4x3_tc1::IfcFaceBasedSurfaceModel Ifc4x3_tc1::IfcFaceBasedSurfaceModel::initialize(std::vector< ::Ifc4x3_tc1::IfcConnectedFaceSet > v1_FbsmFaces) { set_attribute_value(0, cast_vector(v1_FbsmFaces));; return *this; } +Ifc4x3_tc1::IfcFaceBasedSurfaceModel Ifc4x3_tc1::IfcFaceBasedSurfaceModel::initialize(std::vector< ::Ifc4x3_tc1::IfcConnectedFaceSet > v1_FbsmFaces) { set_attribute_value(0, cast_vector(v1_FbsmFaces));; return *this; } // Function implementations for IfcFaceBound -::Ifc4x3_tc1::IfcLoop Ifc4x3_tc1::IfcFaceBound::Bound() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcLoop>(); } +::Ifc4x3_tc1::IfcLoop Ifc4x3_tc1::IfcFaceBound::Bound() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcLoop>(); } void Ifc4x3_tc1::IfcFaceBound::setBound(const ::Ifc4x3_tc1::IfcLoop& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } bool Ifc4x3_tc1::IfcFaceBound::Orientation() const { bool v = get_attribute_value(1); return v; } void Ifc4x3_tc1::IfcFaceBound::setOrientation(const bool& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } @@ -10656,14 +10656,14 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcFaceOuterBound::Class() { return *((i Ifc4x3_tc1::IfcFaceOuterBound Ifc4x3_tc1::IfcFaceOuterBound::initialize(::Ifc4x3_tc1::IfcLoop v1_Bound, bool v2_Orientation) { set_attribute_value(0, (v1_Bound));set_attribute_value(1, (v2_Orientation));; return *this; } // Function implementations for IfcFaceSurface -::Ifc4x3_tc1::IfcSurface Ifc4x3_tc1::IfcFaceSurface::FaceSurface() const { return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3_tc1::IfcSurface>(); } +::Ifc4x3_tc1::IfcSurface Ifc4x3_tc1::IfcFaceSurface::FaceSurface() const { return ((express::base)(get_attribute_value(1))).as<::Ifc4x3_tc1::IfcSurface>(); } void Ifc4x3_tc1::IfcFaceSurface::setFaceSurface(const ::Ifc4x3_tc1::IfcSurface& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } bool Ifc4x3_tc1::IfcFaceSurface::SameSense() const { bool v = get_attribute_value(2); return v; } void Ifc4x3_tc1::IfcFaceSurface::setSameSense(const bool& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } const ifcopenshell::entity& Ifc4x3_tc1::IfcFaceSurface::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[437]); } -Ifc4x3_tc1::IfcFaceSurface Ifc4x3_tc1::IfcFaceSurface::initialize(std::vector< ::Ifc4x3_tc1::IfcFaceBound > v1_Bounds, ::Ifc4x3_tc1::IfcSurface v2_FaceSurface, bool v3_SameSense) { set_attribute_value(0, cast_vector(v1_Bounds));set_attribute_value(1, (v2_FaceSurface));set_attribute_value(2, (v3_SameSense));; return *this; } +Ifc4x3_tc1::IfcFaceSurface Ifc4x3_tc1::IfcFaceSurface::initialize(std::vector< ::Ifc4x3_tc1::IfcFaceBound > v1_Bounds, ::Ifc4x3_tc1::IfcSurface v2_FaceSurface, bool v3_SameSense) { set_attribute_value(0, cast_vector(v1_Bounds));set_attribute_value(1, (v2_FaceSurface));set_attribute_value(2, (v3_SameSense));; return *this; } // Function implementations for IfcFacetedBrep @@ -10672,12 +10672,12 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcFacetedBrep::Class() { return *((ifco Ifc4x3_tc1::IfcFacetedBrep Ifc4x3_tc1::IfcFacetedBrep::initialize(::Ifc4x3_tc1::IfcClosedShell v1_Outer) { set_attribute_value(0, (v1_Outer));; return *this; } // Function implementations for IfcFacetedBrepWithVoids -std::vector< ::Ifc4x3_tc1::IfcClosedShell > Ifc4x3_tc1::IfcFacetedBrepWithVoids::Voids() const { std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3_tc1::IfcClosedShell>(es); } -void Ifc4x3_tc1::IfcFacetedBrepWithVoids::setVoids(const std::vector< ::Ifc4x3_tc1::IfcClosedShell >& v) { set_attribute_value(1, cast_vector(v));if constexpr (false)unset_attribute_value(1); } +std::vector< ::Ifc4x3_tc1::IfcClosedShell > Ifc4x3_tc1::IfcFacetedBrepWithVoids::Voids() const { std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3_tc1::IfcClosedShell>(es); } +void Ifc4x3_tc1::IfcFacetedBrepWithVoids::setVoids(const std::vector< ::Ifc4x3_tc1::IfcClosedShell >& v) { set_attribute_value(1, cast_vector(v));if constexpr (false)unset_attribute_value(1); } const ifcopenshell::entity& Ifc4x3_tc1::IfcFacetedBrepWithVoids::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[439]); } -Ifc4x3_tc1::IfcFacetedBrepWithVoids Ifc4x3_tc1::IfcFacetedBrepWithVoids::initialize(::Ifc4x3_tc1::IfcClosedShell v1_Outer, std::vector< ::Ifc4x3_tc1::IfcClosedShell > v2_Voids) { set_attribute_value(0, (v1_Outer));set_attribute_value(1, cast_vector(v2_Voids));; return *this; } +Ifc4x3_tc1::IfcFacetedBrepWithVoids Ifc4x3_tc1::IfcFacetedBrepWithVoids::initialize(::Ifc4x3_tc1::IfcClosedShell v1_Outer, std::vector< ::Ifc4x3_tc1::IfcClosedShell > v2_Voids) { set_attribute_value(0, (v1_Outer));set_attribute_value(1, cast_vector(v2_Voids));; return *this; } // Function implementations for IfcFacility @@ -10733,7 +10733,7 @@ void Ifc4x3_tc1::IfcFanType::setPredefinedType(const ::Ifc4x3_tc1::IfcFanTypeEnu const ifcopenshell::entity& Ifc4x3_tc1::IfcFanType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[447]); } -Ifc4x3_tc1::IfcFanType Ifc4x3_tc1::IfcFanType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcFanTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcFanTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_tc1::IfcFanType Ifc4x3_tc1::IfcFanType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcFanTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcFanTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcFastener std::optional< ::Ifc4x3_tc1::IfcFastenerTypeEnum::Value > Ifc4x3_tc1::IfcFastener::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_tc1::IfcFastenerTypeEnum::FromString(get_attribute_value(8)); } @@ -10749,7 +10749,7 @@ void Ifc4x3_tc1::IfcFastenerType::setPredefinedType(const ::Ifc4x3_tc1::IfcFaste const ifcopenshell::entity& Ifc4x3_tc1::IfcFastenerType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[450]); } -Ifc4x3_tc1::IfcFastenerType Ifc4x3_tc1::IfcFastenerType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcFastenerTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcFastenerTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_tc1::IfcFastenerType Ifc4x3_tc1::IfcFastenerType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcFastenerTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcFastenerTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcFeatureElement @@ -10772,23 +10772,23 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcFeatureElementSubtraction::Class() { Ifc4x3_tc1::IfcFeatureElementSubtraction Ifc4x3_tc1::IfcFeatureElementSubtraction::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, ::Ifc4x3_tc1::IfcObjectPlacement v6_ObjectPlacement, ::Ifc4x3_tc1::IfcProductRepresentation v7_Representation, std::optional< std::string > v8_Tag) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); }set_attribute_value(5, (v6_ObjectPlacement));set_attribute_value(6, (v7_Representation)); if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); }; return *this; } // Function implementations for IfcFillAreaStyle -std::vector< ::Ifc4x3_tc1::IfcFillStyleSelect > Ifc4x3_tc1::IfcFillAreaStyle::FillStyles() const { std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3_tc1::IfcFillStyleSelect>(es); } -void Ifc4x3_tc1::IfcFillAreaStyle::setFillStyles(const std::vector< ::Ifc4x3_tc1::IfcFillStyleSelect >& v) { set_attribute_value(1, cast_vector(v));if constexpr (false)unset_attribute_value(1); } +std::vector< ::Ifc4x3_tc1::IfcFillStyleSelect > Ifc4x3_tc1::IfcFillAreaStyle::FillStyles() const { std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3_tc1::IfcFillStyleSelect>(es); } +void Ifc4x3_tc1::IfcFillAreaStyle::setFillStyles(const std::vector< ::Ifc4x3_tc1::IfcFillStyleSelect >& v) { set_attribute_value(1, cast_vector(v));if constexpr (false)unset_attribute_value(1); } std::optional< bool > Ifc4x3_tc1::IfcFillAreaStyle::ModelOrDraughting() const { if(get_attribute_value(2).isNull()) { return std::nullopt; } bool v = get_attribute_value(2); return v; } void Ifc4x3_tc1::IfcFillAreaStyle::setModelOrDraughting(const std::optional< bool >& v) { if (v) {set_attribute_value(2, *v);} else {unset_attribute_value(2);} } const ifcopenshell::entity& Ifc4x3_tc1::IfcFillAreaStyle::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[455]); } -Ifc4x3_tc1::IfcFillAreaStyle Ifc4x3_tc1::IfcFillAreaStyle::initialize(std::optional< std::string > v1_Name, std::vector< ::Ifc4x3_tc1::IfcFillStyleSelect > v2_FillStyles, std::optional< bool > v3_ModelOrDraughting) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); }set_attribute_value(1, cast_vector(v2_FillStyles)); if (v3_ModelOrDraughting) {set_attribute_value(2, (*v3_ModelOrDraughting)); }; return *this; } +Ifc4x3_tc1::IfcFillAreaStyle Ifc4x3_tc1::IfcFillAreaStyle::initialize(std::optional< std::string > v1_Name, std::vector< ::Ifc4x3_tc1::IfcFillStyleSelect > v2_FillStyles, std::optional< bool > v3_ModelOrDraughting) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); }set_attribute_value(1, cast_vector(v2_FillStyles)); if (v3_ModelOrDraughting) {set_attribute_value(2, (*v3_ModelOrDraughting)); }; return *this; } // Function implementations for IfcFillAreaStyleHatching -::Ifc4x3_tc1::IfcCurveStyle Ifc4x3_tc1::IfcFillAreaStyleHatching::HatchLineAppearance() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcCurveStyle>(); } +::Ifc4x3_tc1::IfcCurveStyle Ifc4x3_tc1::IfcFillAreaStyleHatching::HatchLineAppearance() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcCurveStyle>(); } void Ifc4x3_tc1::IfcFillAreaStyleHatching::setHatchLineAppearance(const ::Ifc4x3_tc1::IfcCurveStyle& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } -::Ifc4x3_tc1::IfcHatchLineDistanceSelect Ifc4x3_tc1::IfcFillAreaStyleHatching::StartOfNextHatchLine() const { return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3_tc1::IfcHatchLineDistanceSelect>(); } +::Ifc4x3_tc1::IfcHatchLineDistanceSelect Ifc4x3_tc1::IfcFillAreaStyleHatching::StartOfNextHatchLine() const { return ((express::base)(get_attribute_value(1))).as<::Ifc4x3_tc1::IfcHatchLineDistanceSelect>(); } void Ifc4x3_tc1::IfcFillAreaStyleHatching::setStartOfNextHatchLine(const ::Ifc4x3_tc1::IfcHatchLineDistanceSelect& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } -::Ifc4x3_tc1::IfcCartesianPoint Ifc4x3_tc1::IfcFillAreaStyleHatching::PointOfReferenceHatchLine() const { if(get_attribute_value(2).isNull()) { return ::Ifc4x3_tc1::IfcCartesianPoint{}; } return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3_tc1::IfcCartesianPoint>(); } +::Ifc4x3_tc1::IfcCartesianPoint Ifc4x3_tc1::IfcFillAreaStyleHatching::PointOfReferenceHatchLine() const { if(get_attribute_value(2).isNull()) { return ::Ifc4x3_tc1::IfcCartesianPoint{}; } return ((express::base)(get_attribute_value(2))).as<::Ifc4x3_tc1::IfcCartesianPoint>(); } void Ifc4x3_tc1::IfcFillAreaStyleHatching::setPointOfReferenceHatchLine(const ::Ifc4x3_tc1::IfcCartesianPoint& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } -::Ifc4x3_tc1::IfcCartesianPoint Ifc4x3_tc1::IfcFillAreaStyleHatching::PatternStart() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3_tc1::IfcCartesianPoint{}; } return ((express::Base)(get_attribute_value(3))).as<::Ifc4x3_tc1::IfcCartesianPoint>(); } +::Ifc4x3_tc1::IfcCartesianPoint Ifc4x3_tc1::IfcFillAreaStyleHatching::PatternStart() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3_tc1::IfcCartesianPoint{}; } return ((express::base)(get_attribute_value(3))).as<::Ifc4x3_tc1::IfcCartesianPoint>(); } void Ifc4x3_tc1::IfcFillAreaStyleHatching::setPatternStart(const ::Ifc4x3_tc1::IfcCartesianPoint& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } double Ifc4x3_tc1::IfcFillAreaStyleHatching::HatchLineAngle() const { double v = get_attribute_value(4); return v; } void Ifc4x3_tc1::IfcFillAreaStyleHatching::setHatchLineAngle(const double& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } @@ -10798,16 +10798,16 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcFillAreaStyleHatching::Class() { retu Ifc4x3_tc1::IfcFillAreaStyleHatching Ifc4x3_tc1::IfcFillAreaStyleHatching::initialize(::Ifc4x3_tc1::IfcCurveStyle v1_HatchLineAppearance, ::Ifc4x3_tc1::IfcHatchLineDistanceSelect v2_StartOfNextHatchLine, ::Ifc4x3_tc1::IfcCartesianPoint v3_PointOfReferenceHatchLine, ::Ifc4x3_tc1::IfcCartesianPoint v4_PatternStart, double v5_HatchLineAngle) { set_attribute_value(0, (v1_HatchLineAppearance));set_attribute_value(1, (v2_StartOfNextHatchLine));set_attribute_value(2, (v3_PointOfReferenceHatchLine));set_attribute_value(3, (v4_PatternStart));set_attribute_value(4, (v5_HatchLineAngle));; return *this; } // Function implementations for IfcFillAreaStyleTiles -std::vector< ::Ifc4x3_tc1::IfcVector > Ifc4x3_tc1::IfcFillAreaStyleTiles::TilingPattern() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3_tc1::IfcVector>(es); } -void Ifc4x3_tc1::IfcFillAreaStyleTiles::setTilingPattern(const std::vector< ::Ifc4x3_tc1::IfcVector >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } -std::vector< ::Ifc4x3_tc1::IfcStyledItem > Ifc4x3_tc1::IfcFillAreaStyleTiles::Tiles() const { std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3_tc1::IfcStyledItem>(es); } -void Ifc4x3_tc1::IfcFillAreaStyleTiles::setTiles(const std::vector< ::Ifc4x3_tc1::IfcStyledItem >& v) { set_attribute_value(1, cast_vector(v));if constexpr (false)unset_attribute_value(1); } +std::vector< ::Ifc4x3_tc1::IfcVector > Ifc4x3_tc1::IfcFillAreaStyleTiles::TilingPattern() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3_tc1::IfcVector>(es); } +void Ifc4x3_tc1::IfcFillAreaStyleTiles::setTilingPattern(const std::vector< ::Ifc4x3_tc1::IfcVector >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } +std::vector< ::Ifc4x3_tc1::IfcStyledItem > Ifc4x3_tc1::IfcFillAreaStyleTiles::Tiles() const { std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3_tc1::IfcStyledItem>(es); } +void Ifc4x3_tc1::IfcFillAreaStyleTiles::setTiles(const std::vector< ::Ifc4x3_tc1::IfcStyledItem >& v) { set_attribute_value(1, cast_vector(v));if constexpr (false)unset_attribute_value(1); } double Ifc4x3_tc1::IfcFillAreaStyleTiles::TilingScale() const { double v = get_attribute_value(2); return v; } void Ifc4x3_tc1::IfcFillAreaStyleTiles::setTilingScale(const double& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } const ifcopenshell::entity& Ifc4x3_tc1::IfcFillAreaStyleTiles::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[457]); } -Ifc4x3_tc1::IfcFillAreaStyleTiles Ifc4x3_tc1::IfcFillAreaStyleTiles::initialize(std::vector< ::Ifc4x3_tc1::IfcVector > v1_TilingPattern, std::vector< ::Ifc4x3_tc1::IfcStyledItem > v2_Tiles, double v3_TilingScale) { set_attribute_value(0, cast_vector(v1_TilingPattern));set_attribute_value(1, cast_vector(v2_Tiles));set_attribute_value(2, (v3_TilingScale));; return *this; } +Ifc4x3_tc1::IfcFillAreaStyleTiles Ifc4x3_tc1::IfcFillAreaStyleTiles::initialize(std::vector< ::Ifc4x3_tc1::IfcVector > v1_TilingPattern, std::vector< ::Ifc4x3_tc1::IfcStyledItem > v2_Tiles, double v3_TilingScale) { set_attribute_value(0, cast_vector(v1_TilingPattern));set_attribute_value(1, cast_vector(v2_Tiles));set_attribute_value(2, (v3_TilingScale));; return *this; } // Function implementations for IfcFilter std::optional< ::Ifc4x3_tc1::IfcFilterTypeEnum::Value > Ifc4x3_tc1::IfcFilter::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_tc1::IfcFilterTypeEnum::FromString(get_attribute_value(8)); } @@ -10823,7 +10823,7 @@ void Ifc4x3_tc1::IfcFilterType::setPredefinedType(const ::Ifc4x3_tc1::IfcFilterT const ifcopenshell::entity& Ifc4x3_tc1::IfcFilterType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[460]); } -Ifc4x3_tc1::IfcFilterType Ifc4x3_tc1::IfcFilterType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcFilterTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcFilterTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_tc1::IfcFilterType Ifc4x3_tc1::IfcFilterType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcFilterTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcFilterTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcFireSuppressionTerminal std::optional< ::Ifc4x3_tc1::IfcFireSuppressionTerminalTypeEnum::Value > Ifc4x3_tc1::IfcFireSuppressionTerminal::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_tc1::IfcFireSuppressionTerminalTypeEnum::FromString(get_attribute_value(8)); } @@ -10839,10 +10839,10 @@ void Ifc4x3_tc1::IfcFireSuppressionTerminalType::setPredefinedType(const ::Ifc4x const ifcopenshell::entity& Ifc4x3_tc1::IfcFireSuppressionTerminalType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[463]); } -Ifc4x3_tc1::IfcFireSuppressionTerminalType Ifc4x3_tc1::IfcFireSuppressionTerminalType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcFireSuppressionTerminalTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcFireSuppressionTerminalTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_tc1::IfcFireSuppressionTerminalType Ifc4x3_tc1::IfcFireSuppressionTerminalType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcFireSuppressionTerminalTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcFireSuppressionTerminalTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcFixedReferenceSweptAreaSolid -::Ifc4x3_tc1::IfcDirection Ifc4x3_tc1::IfcFixedReferenceSweptAreaSolid::FixedReference() const { return ((express::Base)(get_attribute_value(5))).as<::Ifc4x3_tc1::IfcDirection>(); } +::Ifc4x3_tc1::IfcDirection Ifc4x3_tc1::IfcFixedReferenceSweptAreaSolid::FixedReference() const { return ((express::base)(get_attribute_value(5))).as<::Ifc4x3_tc1::IfcDirection>(); } void Ifc4x3_tc1::IfcFixedReferenceSweptAreaSolid::setFixedReference(const ::Ifc4x3_tc1::IfcDirection& v) { set_attribute_value(5, v);if constexpr (false)unset_attribute_value(5); } @@ -10859,7 +10859,7 @@ Ifc4x3_tc1::IfcFlowController Ifc4x3_tc1::IfcFlowController::initialize(std::str const ifcopenshell::entity& Ifc4x3_tc1::IfcFlowControllerType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[467]); } -Ifc4x3_tc1::IfcFlowControllerType Ifc4x3_tc1::IfcFlowControllerType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } +Ifc4x3_tc1::IfcFlowControllerType Ifc4x3_tc1::IfcFlowControllerType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } // Function implementations for IfcFlowFitting @@ -10871,7 +10871,7 @@ Ifc4x3_tc1::IfcFlowFitting Ifc4x3_tc1::IfcFlowFitting::initialize(std::string v1 const ifcopenshell::entity& Ifc4x3_tc1::IfcFlowFittingType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[470]); } -Ifc4x3_tc1::IfcFlowFittingType Ifc4x3_tc1::IfcFlowFittingType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } +Ifc4x3_tc1::IfcFlowFittingType Ifc4x3_tc1::IfcFlowFittingType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } // Function implementations for IfcFlowInstrument std::optional< ::Ifc4x3_tc1::IfcFlowInstrumentTypeEnum::Value > Ifc4x3_tc1::IfcFlowInstrument::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_tc1::IfcFlowInstrumentTypeEnum::FromString(get_attribute_value(8)); } @@ -10887,7 +10887,7 @@ void Ifc4x3_tc1::IfcFlowInstrumentType::setPredefinedType(const ::Ifc4x3_tc1::If const ifcopenshell::entity& Ifc4x3_tc1::IfcFlowInstrumentType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[472]); } -Ifc4x3_tc1::IfcFlowInstrumentType Ifc4x3_tc1::IfcFlowInstrumentType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcFlowInstrumentTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcFlowInstrumentTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_tc1::IfcFlowInstrumentType Ifc4x3_tc1::IfcFlowInstrumentType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcFlowInstrumentTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcFlowInstrumentTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcFlowMeter std::optional< ::Ifc4x3_tc1::IfcFlowMeterTypeEnum::Value > Ifc4x3_tc1::IfcFlowMeter::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_tc1::IfcFlowMeterTypeEnum::FromString(get_attribute_value(8)); } @@ -10903,7 +10903,7 @@ void Ifc4x3_tc1::IfcFlowMeterType::setPredefinedType(const ::Ifc4x3_tc1::IfcFlow const ifcopenshell::entity& Ifc4x3_tc1::IfcFlowMeterType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[475]); } -Ifc4x3_tc1::IfcFlowMeterType Ifc4x3_tc1::IfcFlowMeterType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcFlowMeterTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcFlowMeterTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_tc1::IfcFlowMeterType Ifc4x3_tc1::IfcFlowMeterType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcFlowMeterTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcFlowMeterTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcFlowMovingDevice @@ -10915,7 +10915,7 @@ Ifc4x3_tc1::IfcFlowMovingDevice Ifc4x3_tc1::IfcFlowMovingDevice::initialize(std: const ifcopenshell::entity& Ifc4x3_tc1::IfcFlowMovingDeviceType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[478]); } -Ifc4x3_tc1::IfcFlowMovingDeviceType Ifc4x3_tc1::IfcFlowMovingDeviceType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } +Ifc4x3_tc1::IfcFlowMovingDeviceType Ifc4x3_tc1::IfcFlowMovingDeviceType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } // Function implementations for IfcFlowSegment @@ -10927,7 +10927,7 @@ Ifc4x3_tc1::IfcFlowSegment Ifc4x3_tc1::IfcFlowSegment::initialize(std::string v1 const ifcopenshell::entity& Ifc4x3_tc1::IfcFlowSegmentType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[480]); } -Ifc4x3_tc1::IfcFlowSegmentType Ifc4x3_tc1::IfcFlowSegmentType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } +Ifc4x3_tc1::IfcFlowSegmentType Ifc4x3_tc1::IfcFlowSegmentType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } // Function implementations for IfcFlowStorageDevice @@ -10939,7 +10939,7 @@ Ifc4x3_tc1::IfcFlowStorageDevice Ifc4x3_tc1::IfcFlowStorageDevice::initialize(st const ifcopenshell::entity& Ifc4x3_tc1::IfcFlowStorageDeviceType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[482]); } -Ifc4x3_tc1::IfcFlowStorageDeviceType Ifc4x3_tc1::IfcFlowStorageDeviceType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } +Ifc4x3_tc1::IfcFlowStorageDeviceType Ifc4x3_tc1::IfcFlowStorageDeviceType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } // Function implementations for IfcFlowTerminal @@ -10951,7 +10951,7 @@ Ifc4x3_tc1::IfcFlowTerminal Ifc4x3_tc1::IfcFlowTerminal::initialize(std::string const ifcopenshell::entity& Ifc4x3_tc1::IfcFlowTerminalType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[484]); } -Ifc4x3_tc1::IfcFlowTerminalType Ifc4x3_tc1::IfcFlowTerminalType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } +Ifc4x3_tc1::IfcFlowTerminalType Ifc4x3_tc1::IfcFlowTerminalType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } // Function implementations for IfcFlowTreatmentDevice @@ -10963,7 +10963,7 @@ Ifc4x3_tc1::IfcFlowTreatmentDevice Ifc4x3_tc1::IfcFlowTreatmentDevice::initializ const ifcopenshell::entity& Ifc4x3_tc1::IfcFlowTreatmentDeviceType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[486]); } -Ifc4x3_tc1::IfcFlowTreatmentDeviceType Ifc4x3_tc1::IfcFlowTreatmentDeviceType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } +Ifc4x3_tc1::IfcFlowTreatmentDeviceType Ifc4x3_tc1::IfcFlowTreatmentDeviceType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } // Function implementations for IfcFooting std::optional< ::Ifc4x3_tc1::IfcFootingTypeEnum::Value > Ifc4x3_tc1::IfcFooting::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_tc1::IfcFootingTypeEnum::FromString(get_attribute_value(8)); } @@ -10979,7 +10979,7 @@ void Ifc4x3_tc1::IfcFootingType::setPredefinedType(const ::Ifc4x3_tc1::IfcFootin const ifcopenshell::entity& Ifc4x3_tc1::IfcFootingType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[491]); } -Ifc4x3_tc1::IfcFootingType Ifc4x3_tc1::IfcFootingType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcFootingTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcFootingTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_tc1::IfcFootingType Ifc4x3_tc1::IfcFootingType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcFootingTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcFootingTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcFurnishingElement @@ -10991,7 +10991,7 @@ Ifc4x3_tc1::IfcFurnishingElement Ifc4x3_tc1::IfcFurnishingElement::initialize(st const ifcopenshell::entity& Ifc4x3_tc1::IfcFurnishingElementType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[496]); } -Ifc4x3_tc1::IfcFurnishingElementType Ifc4x3_tc1::IfcFurnishingElementType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } +Ifc4x3_tc1::IfcFurnishingElementType Ifc4x3_tc1::IfcFurnishingElementType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } // Function implementations for IfcFurniture std::optional< ::Ifc4x3_tc1::IfcFurnitureTypeEnum::Value > Ifc4x3_tc1::IfcFurniture::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_tc1::IfcFurnitureTypeEnum::FromString(get_attribute_value(8)); } @@ -11009,7 +11009,7 @@ void Ifc4x3_tc1::IfcFurnitureType::setPredefinedType(const std::optional< ::Ifc4 const ifcopenshell::entity& Ifc4x3_tc1::IfcFurnitureType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[498]); } -Ifc4x3_tc1::IfcFurnitureType Ifc4x3_tc1::IfcFurnitureType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcAssemblyPlaceEnum::Value v10_AssemblyPlace, std::optional< ::Ifc4x3_tc1::IfcFurnitureTypeEnum::Value > v11_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcAssemblyPlaceEnum::Class(),(size_t)v10_AssemblyPlace))); if (v11_PredefinedType) {set_attribute_value(10, (enumeration_reference(&::Ifc4x3_tc1::IfcFurnitureTypeEnum::Class(),(size_t)*v11_PredefinedType))); }; return *this; } +Ifc4x3_tc1::IfcFurnitureType Ifc4x3_tc1::IfcFurnitureType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcAssemblyPlaceEnum::Value v10_AssemblyPlace, std::optional< ::Ifc4x3_tc1::IfcFurnitureTypeEnum::Value > v11_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcAssemblyPlaceEnum::Class(),(size_t)v10_AssemblyPlace))); if (v11_PredefinedType) {set_attribute_value(10, (enumeration_reference(&::Ifc4x3_tc1::IfcFurnitureTypeEnum::Class(),(size_t)*v11_PredefinedType))); }; return *this; } // Function implementations for IfcGeographicElement std::optional< ::Ifc4x3_tc1::IfcGeographicElementTypeEnum::Value > Ifc4x3_tc1::IfcGeographicElement::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_tc1::IfcGeographicElementTypeEnum::FromString(get_attribute_value(8)); } @@ -11025,22 +11025,22 @@ void Ifc4x3_tc1::IfcGeographicElementType::setPredefinedType(const ::Ifc4x3_tc1: const ifcopenshell::entity& Ifc4x3_tc1::IfcGeographicElementType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[501]); } -Ifc4x3_tc1::IfcGeographicElementType Ifc4x3_tc1::IfcGeographicElementType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcGeographicElementTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcGeographicElementTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_tc1::IfcGeographicElementType Ifc4x3_tc1::IfcGeographicElementType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcGeographicElementTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcGeographicElementTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcGeometricCurveSet const ifcopenshell::entity& Ifc4x3_tc1::IfcGeometricCurveSet::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[503]); } -Ifc4x3_tc1::IfcGeometricCurveSet Ifc4x3_tc1::IfcGeometricCurveSet::initialize(std::vector< ::Ifc4x3_tc1::IfcGeometricSetSelect > v1_Elements) { set_attribute_value(0, cast_vector(v1_Elements));; return *this; } +Ifc4x3_tc1::IfcGeometricCurveSet Ifc4x3_tc1::IfcGeometricCurveSet::initialize(std::vector< ::Ifc4x3_tc1::IfcGeometricSetSelect > v1_Elements) { set_attribute_value(0, cast_vector(v1_Elements));; return *this; } // Function implementations for IfcGeometricRepresentationContext int64_t Ifc4x3_tc1::IfcGeometricRepresentationContext::CoordinateSpaceDimension() const { int64_t v = get_attribute_value(2); return v; } void Ifc4x3_tc1::IfcGeometricRepresentationContext::setCoordinateSpaceDimension(const int64_t& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } std::optional< double > Ifc4x3_tc1::IfcGeometricRepresentationContext::Precision() const { if(get_attribute_value(3).isNull()) { return std::nullopt; } double v = get_attribute_value(3); return v; } void Ifc4x3_tc1::IfcGeometricRepresentationContext::setPrecision(const std::optional< double >& v) { if (v) {set_attribute_value(3, *v);} else {unset_attribute_value(3);} } -::Ifc4x3_tc1::IfcAxis2Placement Ifc4x3_tc1::IfcGeometricRepresentationContext::WorldCoordinateSystem() const { return ((express::Base)(get_attribute_value(4))).as<::Ifc4x3_tc1::IfcAxis2Placement>(); } +::Ifc4x3_tc1::IfcAxis2Placement Ifc4x3_tc1::IfcGeometricRepresentationContext::WorldCoordinateSystem() const { return ((express::base)(get_attribute_value(4))).as<::Ifc4x3_tc1::IfcAxis2Placement>(); } void Ifc4x3_tc1::IfcGeometricRepresentationContext::setWorldCoordinateSystem(const ::Ifc4x3_tc1::IfcAxis2Placement& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } -::Ifc4x3_tc1::IfcDirection Ifc4x3_tc1::IfcGeometricRepresentationContext::TrueNorth() const { if(get_attribute_value(5).isNull()) { return ::Ifc4x3_tc1::IfcDirection{}; } return ((express::Base)(get_attribute_value(5))).as<::Ifc4x3_tc1::IfcDirection>(); } +::Ifc4x3_tc1::IfcDirection Ifc4x3_tc1::IfcGeometricRepresentationContext::TrueNorth() const { if(get_attribute_value(5).isNull()) { return ::Ifc4x3_tc1::IfcDirection{}; } return ((express::base)(get_attribute_value(5))).as<::Ifc4x3_tc1::IfcDirection>(); } void Ifc4x3_tc1::IfcGeometricRepresentationContext::setTrueNorth(const ::Ifc4x3_tc1::IfcDirection& v) { set_attribute_value(5, v);if constexpr (false)unset_attribute_value(5); } std::vector<::Ifc4x3_tc1::IfcGeometricRepresentationSubContext> Ifc4x3_tc1::IfcGeometricRepresentationContext::HasSubContexts() const { return cast_vector(file()->get_inverse(data()->id(), IFC4X3_TC1_types[507], 6)); } @@ -11056,7 +11056,7 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcGeometricRepresentationItem::Class() Ifc4x3_tc1::IfcGeometricRepresentationItem Ifc4x3_tc1::IfcGeometricRepresentationItem::initialize() { ; return *this; } // Function implementations for IfcGeometricRepresentationSubContext -::Ifc4x3_tc1::IfcGeometricRepresentationContext Ifc4x3_tc1::IfcGeometricRepresentationSubContext::ParentContext() const { return ((express::Base)(get_attribute_value(6))).as<::Ifc4x3_tc1::IfcGeometricRepresentationContext>(); } +::Ifc4x3_tc1::IfcGeometricRepresentationContext Ifc4x3_tc1::IfcGeometricRepresentationSubContext::ParentContext() const { return ((express::base)(get_attribute_value(6))).as<::Ifc4x3_tc1::IfcGeometricRepresentationContext>(); } void Ifc4x3_tc1::IfcGeometricRepresentationSubContext::setParentContext(const ::Ifc4x3_tc1::IfcGeometricRepresentationContext& v) { set_attribute_value(6, v);if constexpr (false)unset_attribute_value(6); } std::optional< double > Ifc4x3_tc1::IfcGeometricRepresentationSubContext::TargetScale() const { if(get_attribute_value(7).isNull()) { return std::nullopt; } double v = get_attribute_value(7); return v; } void Ifc4x3_tc1::IfcGeometricRepresentationSubContext::setTargetScale(const std::optional< double >& v) { if (v) {set_attribute_value(7, *v);} else {unset_attribute_value(7);} } @@ -11070,12 +11070,12 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcGeometricRepresentationSubContext::Cl Ifc4x3_tc1::IfcGeometricRepresentationSubContext Ifc4x3_tc1::IfcGeometricRepresentationSubContext::initialize(std::optional< std::string > v1_ContextIdentifier, std::optional< std::string > v2_ContextType, ::Ifc4x3_tc1::IfcGeometricRepresentationContext v7_ParentContext, std::optional< double > v8_TargetScale, ::Ifc4x3_tc1::IfcGeometricProjectionEnum::Value v9_TargetView, std::optional< std::string > v10_UserDefinedTargetView) { if (v1_ContextIdentifier) {set_attribute_value(0, (*v1_ContextIdentifier)); } if (v2_ContextType) {set_attribute_value(1, (*v2_ContextType)); }set_attribute_value(6, (v7_ParentContext)); if (v8_TargetScale) {set_attribute_value(7, (*v8_TargetScale)); }set_attribute_value(8, (enumeration_reference(&::Ifc4x3_tc1::IfcGeometricProjectionEnum::Class(),(size_t)v9_TargetView))); if (v10_UserDefinedTargetView) {set_attribute_value(9, (*v10_UserDefinedTargetView)); }; return *this; } // Function implementations for IfcGeometricSet -std::vector< ::Ifc4x3_tc1::IfcGeometricSetSelect > Ifc4x3_tc1::IfcGeometricSet::Elements() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3_tc1::IfcGeometricSetSelect>(es); } -void Ifc4x3_tc1::IfcGeometricSet::setElements(const std::vector< ::Ifc4x3_tc1::IfcGeometricSetSelect >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } +std::vector< ::Ifc4x3_tc1::IfcGeometricSetSelect > Ifc4x3_tc1::IfcGeometricSet::Elements() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3_tc1::IfcGeometricSetSelect>(es); } +void Ifc4x3_tc1::IfcGeometricSet::setElements(const std::vector< ::Ifc4x3_tc1::IfcGeometricSetSelect >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } const ifcopenshell::entity& Ifc4x3_tc1::IfcGeometricSet::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[508]); } -Ifc4x3_tc1::IfcGeometricSet Ifc4x3_tc1::IfcGeometricSet::initialize(std::vector< ::Ifc4x3_tc1::IfcGeometricSetSelect > v1_Elements) { set_attribute_value(0, cast_vector(v1_Elements));; return *this; } +Ifc4x3_tc1::IfcGeometricSet Ifc4x3_tc1::IfcGeometricSet::initialize(std::vector< ::Ifc4x3_tc1::IfcGeometricSetSelect > v1_Elements) { set_attribute_value(0, cast_vector(v1_Elements));; return *this; } // Function implementations for IfcGeomodel @@ -11110,33 +11110,33 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcGeotechnicalStratum::Class() { return Ifc4x3_tc1::IfcGeotechnicalStratum Ifc4x3_tc1::IfcGeotechnicalStratum::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, ::Ifc4x3_tc1::IfcObjectPlacement v6_ObjectPlacement, ::Ifc4x3_tc1::IfcProductRepresentation v7_Representation, std::optional< std::string > v8_Tag, std::optional< ::Ifc4x3_tc1::IfcGeotechnicalStratumTypeEnum::Value > v9_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); }set_attribute_value(5, (v6_ObjectPlacement));set_attribute_value(6, (v7_Representation)); if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_PredefinedType) {set_attribute_value(8, (enumeration_reference(&::Ifc4x3_tc1::IfcGeotechnicalStratumTypeEnum::Class(),(size_t)*v9_PredefinedType))); }; return *this; } // Function implementations for IfcGradientCurve -::Ifc4x3_tc1::IfcBoundedCurve Ifc4x3_tc1::IfcGradientCurve::BaseCurve() const { return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3_tc1::IfcBoundedCurve>(); } +::Ifc4x3_tc1::IfcBoundedCurve Ifc4x3_tc1::IfcGradientCurve::BaseCurve() const { return ((express::base)(get_attribute_value(2))).as<::Ifc4x3_tc1::IfcBoundedCurve>(); } void Ifc4x3_tc1::IfcGradientCurve::setBaseCurve(const ::Ifc4x3_tc1::IfcBoundedCurve& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } -::Ifc4x3_tc1::IfcPlacement Ifc4x3_tc1::IfcGradientCurve::EndPoint() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3_tc1::IfcPlacement{}; } return ((express::Base)(get_attribute_value(3))).as<::Ifc4x3_tc1::IfcPlacement>(); } +::Ifc4x3_tc1::IfcPlacement Ifc4x3_tc1::IfcGradientCurve::EndPoint() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3_tc1::IfcPlacement{}; } return ((express::base)(get_attribute_value(3))).as<::Ifc4x3_tc1::IfcPlacement>(); } void Ifc4x3_tc1::IfcGradientCurve::setEndPoint(const ::Ifc4x3_tc1::IfcPlacement& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } const ifcopenshell::entity& Ifc4x3_tc1::IfcGradientCurve::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[518]); } -Ifc4x3_tc1::IfcGradientCurve Ifc4x3_tc1::IfcGradientCurve::initialize(std::vector< ::Ifc4x3_tc1::IfcSegment > v1_Segments, boost::logic::tribool v2_SelfIntersect, ::Ifc4x3_tc1::IfcBoundedCurve v3_BaseCurve, ::Ifc4x3_tc1::IfcPlacement v4_EndPoint) { set_attribute_value(0, cast_vector(v1_Segments));set_attribute_value(1, (v2_SelfIntersect));set_attribute_value(2, (v3_BaseCurve));set_attribute_value(3, (v4_EndPoint));; return *this; } +Ifc4x3_tc1::IfcGradientCurve Ifc4x3_tc1::IfcGradientCurve::initialize(std::vector< ::Ifc4x3_tc1::IfcSegment > v1_Segments, boost::logic::tribool v2_SelfIntersect, ::Ifc4x3_tc1::IfcBoundedCurve v3_BaseCurve, ::Ifc4x3_tc1::IfcPlacement v4_EndPoint) { set_attribute_value(0, cast_vector(v1_Segments));set_attribute_value(1, (v2_SelfIntersect));set_attribute_value(2, (v3_BaseCurve));set_attribute_value(3, (v4_EndPoint));; return *this; } // Function implementations for IfcGrid -std::vector< ::Ifc4x3_tc1::IfcGridAxis > Ifc4x3_tc1::IfcGrid::UAxes() const { std::vector es = get_attribute_value(7); return cast_vector<::Ifc4x3_tc1::IfcGridAxis>(es); } -void Ifc4x3_tc1::IfcGrid::setUAxes(const std::vector< ::Ifc4x3_tc1::IfcGridAxis >& v) { set_attribute_value(7, cast_vector(v));if constexpr (false)unset_attribute_value(7); } -std::vector< ::Ifc4x3_tc1::IfcGridAxis > Ifc4x3_tc1::IfcGrid::VAxes() const { std::vector es = get_attribute_value(8); return cast_vector<::Ifc4x3_tc1::IfcGridAxis>(es); } -void Ifc4x3_tc1::IfcGrid::setVAxes(const std::vector< ::Ifc4x3_tc1::IfcGridAxis >& v) { set_attribute_value(8, cast_vector(v));if constexpr (false)unset_attribute_value(8); } -std::optional< std::vector< ::Ifc4x3_tc1::IfcGridAxis > > Ifc4x3_tc1::IfcGrid::WAxes() const { if(get_attribute_value(9).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(9); return cast_vector<::Ifc4x3_tc1::IfcGridAxis>(es); } -void Ifc4x3_tc1::IfcGrid::setWAxes(const std::optional< std::vector< ::Ifc4x3_tc1::IfcGridAxis > >& v) { if (v) {set_attribute_value(9, cast_vector(*v));} else {unset_attribute_value(9);} } +std::vector< ::Ifc4x3_tc1::IfcGridAxis > Ifc4x3_tc1::IfcGrid::UAxes() const { std::vector es = get_attribute_value(7); return cast_vector<::Ifc4x3_tc1::IfcGridAxis>(es); } +void Ifc4x3_tc1::IfcGrid::setUAxes(const std::vector< ::Ifc4x3_tc1::IfcGridAxis >& v) { set_attribute_value(7, cast_vector(v));if constexpr (false)unset_attribute_value(7); } +std::vector< ::Ifc4x3_tc1::IfcGridAxis > Ifc4x3_tc1::IfcGrid::VAxes() const { std::vector es = get_attribute_value(8); return cast_vector<::Ifc4x3_tc1::IfcGridAxis>(es); } +void Ifc4x3_tc1::IfcGrid::setVAxes(const std::vector< ::Ifc4x3_tc1::IfcGridAxis >& v) { set_attribute_value(8, cast_vector(v));if constexpr (false)unset_attribute_value(8); } +std::optional< std::vector< ::Ifc4x3_tc1::IfcGridAxis > > Ifc4x3_tc1::IfcGrid::WAxes() const { if(get_attribute_value(9).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(9); return cast_vector<::Ifc4x3_tc1::IfcGridAxis>(es); } +void Ifc4x3_tc1::IfcGrid::setWAxes(const std::optional< std::vector< ::Ifc4x3_tc1::IfcGridAxis > >& v) { if (v) {set_attribute_value(9, cast_vector(*v));} else {unset_attribute_value(9);} } std::optional< ::Ifc4x3_tc1::IfcGridTypeEnum::Value > Ifc4x3_tc1::IfcGrid::PredefinedType() const { if(get_attribute_value(10).isNull()) { return std::nullopt; } return ::Ifc4x3_tc1::IfcGridTypeEnum::FromString(get_attribute_value(10)); } void Ifc4x3_tc1::IfcGrid::setPredefinedType(const std::optional< ::Ifc4x3_tc1::IfcGridTypeEnum::Value >& v) { if (v) {set_attribute_value(10, enumeration_reference(&::Ifc4x3_tc1::IfcGridTypeEnum::Class(), (size_t) *v));} else {unset_attribute_value(10);} } const ifcopenshell::entity& Ifc4x3_tc1::IfcGrid::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[519]); } -Ifc4x3_tc1::IfcGrid Ifc4x3_tc1::IfcGrid::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, ::Ifc4x3_tc1::IfcObjectPlacement v6_ObjectPlacement, ::Ifc4x3_tc1::IfcProductRepresentation v7_Representation, std::vector< ::Ifc4x3_tc1::IfcGridAxis > v8_UAxes, std::vector< ::Ifc4x3_tc1::IfcGridAxis > v9_VAxes, std::optional< std::vector< ::Ifc4x3_tc1::IfcGridAxis > > v10_WAxes, std::optional< ::Ifc4x3_tc1::IfcGridTypeEnum::Value > v11_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); }set_attribute_value(5, (v6_ObjectPlacement));set_attribute_value(6, (v7_Representation));set_attribute_value(7, cast_vector(v8_UAxes));set_attribute_value(8, cast_vector(v9_VAxes)); if (v10_WAxes) {set_attribute_value(9, cast_vector(*v10_WAxes)); } if (v11_PredefinedType) {set_attribute_value(10, (enumeration_reference(&::Ifc4x3_tc1::IfcGridTypeEnum::Class(),(size_t)*v11_PredefinedType))); }; return *this; } +Ifc4x3_tc1::IfcGrid Ifc4x3_tc1::IfcGrid::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, ::Ifc4x3_tc1::IfcObjectPlacement v6_ObjectPlacement, ::Ifc4x3_tc1::IfcProductRepresentation v7_Representation, std::vector< ::Ifc4x3_tc1::IfcGridAxis > v8_UAxes, std::vector< ::Ifc4x3_tc1::IfcGridAxis > v9_VAxes, std::optional< std::vector< ::Ifc4x3_tc1::IfcGridAxis > > v10_WAxes, std::optional< ::Ifc4x3_tc1::IfcGridTypeEnum::Value > v11_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); }set_attribute_value(5, (v6_ObjectPlacement));set_attribute_value(6, (v7_Representation));set_attribute_value(7, cast_vector(v8_UAxes));set_attribute_value(8, cast_vector(v9_VAxes)); if (v10_WAxes) {set_attribute_value(9, cast_vector(*v10_WAxes)); } if (v11_PredefinedType) {set_attribute_value(10, (enumeration_reference(&::Ifc4x3_tc1::IfcGridTypeEnum::Class(),(size_t)*v11_PredefinedType))); }; return *this; } // Function implementations for IfcGridAxis std::optional< std::string > Ifc4x3_tc1::IfcGridAxis::AxisTag() const { if(get_attribute_value(0).isNull()) { return std::nullopt; } std::string v = get_attribute_value(0); return v; } void Ifc4x3_tc1::IfcGridAxis::setAxisTag(const std::optional< std::string >& v) { if (v) {set_attribute_value(0, *v);} else {unset_attribute_value(0);} } -::Ifc4x3_tc1::IfcCurve Ifc4x3_tc1::IfcGridAxis::AxisCurve() const { return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3_tc1::IfcCurve>(); } +::Ifc4x3_tc1::IfcCurve Ifc4x3_tc1::IfcGridAxis::AxisCurve() const { return ((express::base)(get_attribute_value(1))).as<::Ifc4x3_tc1::IfcCurve>(); } void Ifc4x3_tc1::IfcGridAxis::setAxisCurve(const ::Ifc4x3_tc1::IfcCurve& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } bool Ifc4x3_tc1::IfcGridAxis::SameSense() const { bool v = get_attribute_value(2); return v; } void Ifc4x3_tc1::IfcGridAxis::setSameSense(const bool& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } @@ -11150,9 +11150,9 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcGridAxis::Class() { return *((ifcopen Ifc4x3_tc1::IfcGridAxis Ifc4x3_tc1::IfcGridAxis::initialize(std::optional< std::string > v1_AxisTag, ::Ifc4x3_tc1::IfcCurve v2_AxisCurve, bool v3_SameSense) { if (v1_AxisTag) {set_attribute_value(0, (*v1_AxisTag)); }set_attribute_value(1, (v2_AxisCurve));set_attribute_value(2, (v3_SameSense));; return *this; } // Function implementations for IfcGridPlacement -::Ifc4x3_tc1::IfcVirtualGridIntersection Ifc4x3_tc1::IfcGridPlacement::PlacementLocation() const { return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3_tc1::IfcVirtualGridIntersection>(); } +::Ifc4x3_tc1::IfcVirtualGridIntersection Ifc4x3_tc1::IfcGridPlacement::PlacementLocation() const { return ((express::base)(get_attribute_value(1))).as<::Ifc4x3_tc1::IfcVirtualGridIntersection>(); } void Ifc4x3_tc1::IfcGridPlacement::setPlacementLocation(const ::Ifc4x3_tc1::IfcVirtualGridIntersection& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } -::Ifc4x3_tc1::IfcGridPlacementDirectionSelect Ifc4x3_tc1::IfcGridPlacement::PlacementRefDirection() const { if(get_attribute_value(2).isNull()) { return ::Ifc4x3_tc1::IfcGridPlacementDirectionSelect{}; } return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3_tc1::IfcGridPlacementDirectionSelect>(); } +::Ifc4x3_tc1::IfcGridPlacementDirectionSelect Ifc4x3_tc1::IfcGridPlacement::PlacementRefDirection() const { if(get_attribute_value(2).isNull()) { return ::Ifc4x3_tc1::IfcGridPlacementDirectionSelect{}; } return ((express::base)(get_attribute_value(2))).as<::Ifc4x3_tc1::IfcGridPlacementDirectionSelect>(); } void Ifc4x3_tc1::IfcGridPlacement::setPlacementRefDirection(const ::Ifc4x3_tc1::IfcGridPlacementDirectionSelect& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } @@ -11168,7 +11168,7 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcGroup::Class() { return *((ifcopenshe Ifc4x3_tc1::IfcGroup Ifc4x3_tc1::IfcGroup::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); }; return *this; } // Function implementations for IfcHalfSpaceSolid -::Ifc4x3_tc1::IfcSurface Ifc4x3_tc1::IfcHalfSpaceSolid::BaseSurface() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcSurface>(); } +::Ifc4x3_tc1::IfcSurface Ifc4x3_tc1::IfcHalfSpaceSolid::BaseSurface() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcSurface>(); } void Ifc4x3_tc1::IfcHalfSpaceSolid::setBaseSurface(const ::Ifc4x3_tc1::IfcSurface& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } bool Ifc4x3_tc1::IfcHalfSpaceSolid::AgreementFlag() const { bool v = get_attribute_value(1); return v; } void Ifc4x3_tc1::IfcHalfSpaceSolid::setAgreementFlag(const bool& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } @@ -11191,7 +11191,7 @@ void Ifc4x3_tc1::IfcHeatExchangerType::setPredefinedType(const ::Ifc4x3_tc1::Ifc const ifcopenshell::entity& Ifc4x3_tc1::IfcHeatExchangerType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[528]); } -Ifc4x3_tc1::IfcHeatExchangerType Ifc4x3_tc1::IfcHeatExchangerType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcHeatExchangerTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcHeatExchangerTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_tc1::IfcHeatExchangerType Ifc4x3_tc1::IfcHeatExchangerType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcHeatExchangerTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcHeatExchangerTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcHumidifier std::optional< ::Ifc4x3_tc1::IfcHumidifierTypeEnum::Value > Ifc4x3_tc1::IfcHumidifier::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_tc1::IfcHumidifierTypeEnum::FromString(get_attribute_value(8)); } @@ -11207,7 +11207,7 @@ void Ifc4x3_tc1::IfcHumidifierType::setPredefinedType(const ::Ifc4x3_tc1::IfcHum const ifcopenshell::entity& Ifc4x3_tc1::IfcHumidifierType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[533]); } -Ifc4x3_tc1::IfcHumidifierType Ifc4x3_tc1::IfcHumidifierType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcHumidifierTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcHumidifierTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_tc1::IfcHumidifierType Ifc4x3_tc1::IfcHumidifierType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcHumidifierTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcHumidifierTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcIShapeProfileDef double Ifc4x3_tc1::IfcIShapeProfileDef::OverallWidth() const { double v = get_attribute_value(3); return v; } @@ -11251,14 +11251,14 @@ void Ifc4x3_tc1::IfcImpactProtectionDeviceType::setPredefinedType(const ::Ifc4x3 const ifcopenshell::entity& Ifc4x3_tc1::IfcImpactProtectionDeviceType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[539]); } -Ifc4x3_tc1::IfcImpactProtectionDeviceType Ifc4x3_tc1::IfcImpactProtectionDeviceType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcImpactProtectionDeviceTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcImpactProtectionDeviceTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_tc1::IfcImpactProtectionDeviceType Ifc4x3_tc1::IfcImpactProtectionDeviceType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcImpactProtectionDeviceTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcImpactProtectionDeviceTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcIndexedColourMap -::Ifc4x3_tc1::IfcTessellatedFaceSet Ifc4x3_tc1::IfcIndexedColourMap::MappedTo() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcTessellatedFaceSet>(); } +::Ifc4x3_tc1::IfcTessellatedFaceSet Ifc4x3_tc1::IfcIndexedColourMap::MappedTo() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcTessellatedFaceSet>(); } void Ifc4x3_tc1::IfcIndexedColourMap::setMappedTo(const ::Ifc4x3_tc1::IfcTessellatedFaceSet& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } std::optional< double > Ifc4x3_tc1::IfcIndexedColourMap::Opacity() const { if(get_attribute_value(1).isNull()) { return std::nullopt; } double v = get_attribute_value(1); return v; } void Ifc4x3_tc1::IfcIndexedColourMap::setOpacity(const std::optional< double >& v) { if (v) {set_attribute_value(1, *v);} else {unset_attribute_value(1);} } -::Ifc4x3_tc1::IfcColourRgbList Ifc4x3_tc1::IfcIndexedColourMap::Colours() const { return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3_tc1::IfcColourRgbList>(); } +::Ifc4x3_tc1::IfcColourRgbList Ifc4x3_tc1::IfcIndexedColourMap::Colours() const { return ((express::base)(get_attribute_value(2))).as<::Ifc4x3_tc1::IfcColourRgbList>(); } void Ifc4x3_tc1::IfcIndexedColourMap::setColours(const ::Ifc4x3_tc1::IfcColourRgbList& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } std::vector< int64_t > /*[1:?]*/ Ifc4x3_tc1::IfcIndexedColourMap::ColourIndex() const { std::vector< int64_t > /*[1:?]*/ v = get_attribute_value(3); return v; } void Ifc4x3_tc1::IfcIndexedColourMap::setColourIndex(const std::vector< int64_t > /*[1:?]*/& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } @@ -11268,16 +11268,16 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcIndexedColourMap::Class() { return *( Ifc4x3_tc1::IfcIndexedColourMap Ifc4x3_tc1::IfcIndexedColourMap::initialize(::Ifc4x3_tc1::IfcTessellatedFaceSet v1_MappedTo, std::optional< double > v2_Opacity, ::Ifc4x3_tc1::IfcColourRgbList v3_Colours, std::vector< int64_t > /*[1:?]*/ v4_ColourIndex) { set_attribute_value(0, (v1_MappedTo)); if (v2_Opacity) {set_attribute_value(1, (*v2_Opacity)); }set_attribute_value(2, (v3_Colours));set_attribute_value(3, (v4_ColourIndex));; return *this; } // Function implementations for IfcIndexedPolyCurve -::Ifc4x3_tc1::IfcCartesianPointList Ifc4x3_tc1::IfcIndexedPolyCurve::Points() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcCartesianPointList>(); } +::Ifc4x3_tc1::IfcCartesianPointList Ifc4x3_tc1::IfcIndexedPolyCurve::Points() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcCartesianPointList>(); } void Ifc4x3_tc1::IfcIndexedPolyCurve::setPoints(const ::Ifc4x3_tc1::IfcCartesianPointList& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } -std::optional< std::vector< ::Ifc4x3_tc1::IfcSegmentIndexSelect > > Ifc4x3_tc1::IfcIndexedPolyCurve::Segments() const { if(get_attribute_value(1).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3_tc1::IfcSegmentIndexSelect>(es); } -void Ifc4x3_tc1::IfcIndexedPolyCurve::setSegments(const std::optional< std::vector< ::Ifc4x3_tc1::IfcSegmentIndexSelect > >& v) { if (v) {set_attribute_value(1, cast_vector(*v));} else {unset_attribute_value(1);} } +std::optional< std::vector< ::Ifc4x3_tc1::IfcSegmentIndexSelect > > Ifc4x3_tc1::IfcIndexedPolyCurve::Segments() const { if(get_attribute_value(1).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3_tc1::IfcSegmentIndexSelect>(es); } +void Ifc4x3_tc1::IfcIndexedPolyCurve::setSegments(const std::optional< std::vector< ::Ifc4x3_tc1::IfcSegmentIndexSelect > >& v) { if (v) {set_attribute_value(1, cast_vector(*v));} else {unset_attribute_value(1);} } std::optional< bool > Ifc4x3_tc1::IfcIndexedPolyCurve::SelfIntersect() const { if(get_attribute_value(2).isNull()) { return std::nullopt; } bool v = get_attribute_value(2); return v; } void Ifc4x3_tc1::IfcIndexedPolyCurve::setSelfIntersect(const std::optional< bool >& v) { if (v) {set_attribute_value(2, *v);} else {unset_attribute_value(2);} } const ifcopenshell::entity& Ifc4x3_tc1::IfcIndexedPolyCurve::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[542]); } -Ifc4x3_tc1::IfcIndexedPolyCurve Ifc4x3_tc1::IfcIndexedPolyCurve::initialize(::Ifc4x3_tc1::IfcCartesianPointList v1_Points, std::optional< std::vector< ::Ifc4x3_tc1::IfcSegmentIndexSelect > > v2_Segments, std::optional< bool > v3_SelfIntersect) { set_attribute_value(0, (v1_Points)); if (v2_Segments) {set_attribute_value(1, cast_vector(*v2_Segments)); } if (v3_SelfIntersect) {set_attribute_value(2, (*v3_SelfIntersect)); }; return *this; } +Ifc4x3_tc1::IfcIndexedPolyCurve Ifc4x3_tc1::IfcIndexedPolyCurve::initialize(::Ifc4x3_tc1::IfcCartesianPointList v1_Points, std::optional< std::vector< ::Ifc4x3_tc1::IfcSegmentIndexSelect > > v2_Segments, std::optional< bool > v3_SelfIntersect) { set_attribute_value(0, (v1_Points)); if (v2_Segments) {set_attribute_value(1, cast_vector(*v2_Segments)); } if (v3_SelfIntersect) {set_attribute_value(2, (*v3_SelfIntersect)); }; return *this; } // Function implementations for IfcIndexedPolygonalFace std::vector< int64_t > /*[3:?]*/ Ifc4x3_tc1::IfcIndexedPolygonalFace::CoordIndex() const { std::vector< int64_t > /*[3:?]*/ v = get_attribute_value(0); return v; } @@ -11298,22 +11298,22 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcIndexedPolygonalFaceWithVoids::Class( Ifc4x3_tc1::IfcIndexedPolygonalFaceWithVoids Ifc4x3_tc1::IfcIndexedPolygonalFaceWithVoids::initialize(std::vector< int64_t > /*[3:?]*/ v1_CoordIndex, std::vector< std::vector< int64_t > > v2_InnerCoordIndices) { set_attribute_value(0, (v1_CoordIndex));set_attribute_value(1, (v2_InnerCoordIndices));; return *this; } // Function implementations for IfcIndexedPolygonalTextureMap -std::vector< ::Ifc4x3_tc1::IfcTextureCoordinateIndices > Ifc4x3_tc1::IfcIndexedPolygonalTextureMap::TexCoordIndices() const { std::vector es = get_attribute_value(3); return cast_vector<::Ifc4x3_tc1::IfcTextureCoordinateIndices>(es); } -void Ifc4x3_tc1::IfcIndexedPolygonalTextureMap::setTexCoordIndices(const std::vector< ::Ifc4x3_tc1::IfcTextureCoordinateIndices >& v) { set_attribute_value(3, cast_vector(v));if constexpr (false)unset_attribute_value(3); } +std::vector< ::Ifc4x3_tc1::IfcTextureCoordinateIndices > Ifc4x3_tc1::IfcIndexedPolygonalTextureMap::TexCoordIndices() const { std::vector es = get_attribute_value(3); return cast_vector<::Ifc4x3_tc1::IfcTextureCoordinateIndices>(es); } +void Ifc4x3_tc1::IfcIndexedPolygonalTextureMap::setTexCoordIndices(const std::vector< ::Ifc4x3_tc1::IfcTextureCoordinateIndices >& v) { set_attribute_value(3, cast_vector(v));if constexpr (false)unset_attribute_value(3); } const ifcopenshell::entity& Ifc4x3_tc1::IfcIndexedPolygonalTextureMap::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[545]); } -Ifc4x3_tc1::IfcIndexedPolygonalTextureMap Ifc4x3_tc1::IfcIndexedPolygonalTextureMap::initialize(std::vector< ::Ifc4x3_tc1::IfcSurfaceTexture > v1_Maps, ::Ifc4x3_tc1::IfcTessellatedFaceSet v2_MappedTo, ::Ifc4x3_tc1::IfcTextureVertexList v3_TexCoords, std::vector< ::Ifc4x3_tc1::IfcTextureCoordinateIndices > v4_TexCoordIndices) { set_attribute_value(0, cast_vector(v1_Maps));set_attribute_value(1, (v2_MappedTo));set_attribute_value(2, (v3_TexCoords));set_attribute_value(3, cast_vector(v4_TexCoordIndices));; return *this; } +Ifc4x3_tc1::IfcIndexedPolygonalTextureMap Ifc4x3_tc1::IfcIndexedPolygonalTextureMap::initialize(std::vector< ::Ifc4x3_tc1::IfcSurfaceTexture > v1_Maps, ::Ifc4x3_tc1::IfcTessellatedFaceSet v2_MappedTo, ::Ifc4x3_tc1::IfcTextureVertexList v3_TexCoords, std::vector< ::Ifc4x3_tc1::IfcTextureCoordinateIndices > v4_TexCoordIndices) { set_attribute_value(0, cast_vector(v1_Maps));set_attribute_value(1, (v2_MappedTo));set_attribute_value(2, (v3_TexCoords));set_attribute_value(3, cast_vector(v4_TexCoordIndices));; return *this; } // Function implementations for IfcIndexedTextureMap -::Ifc4x3_tc1::IfcTessellatedFaceSet Ifc4x3_tc1::IfcIndexedTextureMap::MappedTo() const { return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3_tc1::IfcTessellatedFaceSet>(); } +::Ifc4x3_tc1::IfcTessellatedFaceSet Ifc4x3_tc1::IfcIndexedTextureMap::MappedTo() const { return ((express::base)(get_attribute_value(1))).as<::Ifc4x3_tc1::IfcTessellatedFaceSet>(); } void Ifc4x3_tc1::IfcIndexedTextureMap::setMappedTo(const ::Ifc4x3_tc1::IfcTessellatedFaceSet& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } -::Ifc4x3_tc1::IfcTextureVertexList Ifc4x3_tc1::IfcIndexedTextureMap::TexCoords() const { return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3_tc1::IfcTextureVertexList>(); } +::Ifc4x3_tc1::IfcTextureVertexList Ifc4x3_tc1::IfcIndexedTextureMap::TexCoords() const { return ((express::base)(get_attribute_value(2))).as<::Ifc4x3_tc1::IfcTextureVertexList>(); } void Ifc4x3_tc1::IfcIndexedTextureMap::setTexCoords(const ::Ifc4x3_tc1::IfcTextureVertexList& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } const ifcopenshell::entity& Ifc4x3_tc1::IfcIndexedTextureMap::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[546]); } -Ifc4x3_tc1::IfcIndexedTextureMap Ifc4x3_tc1::IfcIndexedTextureMap::initialize(std::vector< ::Ifc4x3_tc1::IfcSurfaceTexture > v1_Maps, ::Ifc4x3_tc1::IfcTessellatedFaceSet v2_MappedTo, ::Ifc4x3_tc1::IfcTextureVertexList v3_TexCoords) { set_attribute_value(0, cast_vector(v1_Maps));set_attribute_value(1, (v2_MappedTo));set_attribute_value(2, (v3_TexCoords));; return *this; } +Ifc4x3_tc1::IfcIndexedTextureMap Ifc4x3_tc1::IfcIndexedTextureMap::initialize(std::vector< ::Ifc4x3_tc1::IfcSurfaceTexture > v1_Maps, ::Ifc4x3_tc1::IfcTessellatedFaceSet v2_MappedTo, ::Ifc4x3_tc1::IfcTextureVertexList v3_TexCoords) { set_attribute_value(0, cast_vector(v1_Maps));set_attribute_value(1, (v2_MappedTo));set_attribute_value(2, (v3_TexCoords));; return *this; } // Function implementations for IfcIndexedTriangleTextureMap std::optional< std::vector< std::vector< int64_t > > > Ifc4x3_tc1::IfcIndexedTriangleTextureMap::TexCoordIndex() const { if(get_attribute_value(3).isNull()) { return std::nullopt; } std::vector< std::vector< int64_t > > v = get_attribute_value(3); return v; } @@ -11321,7 +11321,7 @@ void Ifc4x3_tc1::IfcIndexedTriangleTextureMap::setTexCoordIndex(const std::optio const ifcopenshell::entity& Ifc4x3_tc1::IfcIndexedTriangleTextureMap::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[547]); } -Ifc4x3_tc1::IfcIndexedTriangleTextureMap Ifc4x3_tc1::IfcIndexedTriangleTextureMap::initialize(std::vector< ::Ifc4x3_tc1::IfcSurfaceTexture > v1_Maps, ::Ifc4x3_tc1::IfcTessellatedFaceSet v2_MappedTo, ::Ifc4x3_tc1::IfcTextureVertexList v3_TexCoords, std::optional< std::vector< std::vector< int64_t > > > v4_TexCoordIndex) { set_attribute_value(0, cast_vector(v1_Maps));set_attribute_value(1, (v2_MappedTo));set_attribute_value(2, (v3_TexCoords)); if (v4_TexCoordIndex) {set_attribute_value(3, (*v4_TexCoordIndex)); }; return *this; } +Ifc4x3_tc1::IfcIndexedTriangleTextureMap Ifc4x3_tc1::IfcIndexedTriangleTextureMap::initialize(std::vector< ::Ifc4x3_tc1::IfcSurfaceTexture > v1_Maps, ::Ifc4x3_tc1::IfcTessellatedFaceSet v2_MappedTo, ::Ifc4x3_tc1::IfcTextureVertexList v3_TexCoords, std::optional< std::vector< std::vector< int64_t > > > v4_TexCoordIndex) { set_attribute_value(0, cast_vector(v1_Maps));set_attribute_value(1, (v2_MappedTo));set_attribute_value(2, (v3_TexCoords)); if (v4_TexCoordIndex) {set_attribute_value(3, (*v4_TexCoordIndex)); }; return *this; } // Function implementations for IfcInterceptor std::optional< ::Ifc4x3_tc1::IfcInterceptorTypeEnum::Value > Ifc4x3_tc1::IfcInterceptor::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_tc1::IfcInterceptorTypeEnum::FromString(get_attribute_value(8)); } @@ -11337,49 +11337,49 @@ void Ifc4x3_tc1::IfcInterceptorType::setPredefinedType(const ::Ifc4x3_tc1::IfcIn const ifcopenshell::entity& Ifc4x3_tc1::IfcInterceptorType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[552]); } -Ifc4x3_tc1::IfcInterceptorType Ifc4x3_tc1::IfcInterceptorType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcInterceptorTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcInterceptorTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_tc1::IfcInterceptorType Ifc4x3_tc1::IfcInterceptorType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcInterceptorTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcInterceptorTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcIntersectionCurve const ifcopenshell::entity& Ifc4x3_tc1::IfcIntersectionCurve::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[556]); } -Ifc4x3_tc1::IfcIntersectionCurve Ifc4x3_tc1::IfcIntersectionCurve::initialize(::Ifc4x3_tc1::IfcCurve v1_Curve3D, std::vector< ::Ifc4x3_tc1::IfcPcurve > v2_AssociatedGeometry, ::Ifc4x3_tc1::IfcPreferredSurfaceCurveRepresentation::Value v3_MasterRepresentation) { set_attribute_value(0, (v1_Curve3D));set_attribute_value(1, cast_vector(v2_AssociatedGeometry));set_attribute_value(2, (enumeration_reference(&::Ifc4x3_tc1::IfcPreferredSurfaceCurveRepresentation::Class(),(size_t)v3_MasterRepresentation)));; return *this; } +Ifc4x3_tc1::IfcIntersectionCurve Ifc4x3_tc1::IfcIntersectionCurve::initialize(::Ifc4x3_tc1::IfcCurve v1_Curve3D, std::vector< ::Ifc4x3_tc1::IfcPcurve > v2_AssociatedGeometry, ::Ifc4x3_tc1::IfcPreferredSurfaceCurveRepresentation::Value v3_MasterRepresentation) { set_attribute_value(0, (v1_Curve3D));set_attribute_value(1, cast_vector(v2_AssociatedGeometry));set_attribute_value(2, (enumeration_reference(&::Ifc4x3_tc1::IfcPreferredSurfaceCurveRepresentation::Class(),(size_t)v3_MasterRepresentation)));; return *this; } // Function implementations for IfcInventory std::optional< ::Ifc4x3_tc1::IfcInventoryTypeEnum::Value > Ifc4x3_tc1::IfcInventory::PredefinedType() const { if(get_attribute_value(5).isNull()) { return std::nullopt; } return ::Ifc4x3_tc1::IfcInventoryTypeEnum::FromString(get_attribute_value(5)); } void Ifc4x3_tc1::IfcInventory::setPredefinedType(const std::optional< ::Ifc4x3_tc1::IfcInventoryTypeEnum::Value >& v) { if (v) {set_attribute_value(5, enumeration_reference(&::Ifc4x3_tc1::IfcInventoryTypeEnum::Class(), (size_t) *v));} else {unset_attribute_value(5);} } -::Ifc4x3_tc1::IfcActorSelect Ifc4x3_tc1::IfcInventory::Jurisdiction() const { if(get_attribute_value(6).isNull()) { return ::Ifc4x3_tc1::IfcActorSelect{}; } return ((express::Base)(get_attribute_value(6))).as<::Ifc4x3_tc1::IfcActorSelect>(); } +::Ifc4x3_tc1::IfcActorSelect Ifc4x3_tc1::IfcInventory::Jurisdiction() const { if(get_attribute_value(6).isNull()) { return ::Ifc4x3_tc1::IfcActorSelect{}; } return ((express::base)(get_attribute_value(6))).as<::Ifc4x3_tc1::IfcActorSelect>(); } void Ifc4x3_tc1::IfcInventory::setJurisdiction(const ::Ifc4x3_tc1::IfcActorSelect& v) { set_attribute_value(6, v);if constexpr (false)unset_attribute_value(6); } -std::optional< std::vector< ::Ifc4x3_tc1::IfcPerson > > Ifc4x3_tc1::IfcInventory::ResponsiblePersons() const { if(get_attribute_value(7).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(7); return cast_vector<::Ifc4x3_tc1::IfcPerson>(es); } -void Ifc4x3_tc1::IfcInventory::setResponsiblePersons(const std::optional< std::vector< ::Ifc4x3_tc1::IfcPerson > >& v) { if (v) {set_attribute_value(7, cast_vector(*v));} else {unset_attribute_value(7);} } +std::optional< std::vector< ::Ifc4x3_tc1::IfcPerson > > Ifc4x3_tc1::IfcInventory::ResponsiblePersons() const { if(get_attribute_value(7).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(7); return cast_vector<::Ifc4x3_tc1::IfcPerson>(es); } +void Ifc4x3_tc1::IfcInventory::setResponsiblePersons(const std::optional< std::vector< ::Ifc4x3_tc1::IfcPerson > >& v) { if (v) {set_attribute_value(7, cast_vector(*v));} else {unset_attribute_value(7);} } std::optional< std::string > Ifc4x3_tc1::IfcInventory::LastUpdateDate() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } std::string v = get_attribute_value(8); return v; } void Ifc4x3_tc1::IfcInventory::setLastUpdateDate(const std::optional< std::string >& v) { if (v) {set_attribute_value(8, *v);} else {unset_attribute_value(8);} } -::Ifc4x3_tc1::IfcCostValue Ifc4x3_tc1::IfcInventory::CurrentValue() const { if(get_attribute_value(9).isNull()) { return ::Ifc4x3_tc1::IfcCostValue{}; } return ((express::Base)(get_attribute_value(9))).as<::Ifc4x3_tc1::IfcCostValue>(); } +::Ifc4x3_tc1::IfcCostValue Ifc4x3_tc1::IfcInventory::CurrentValue() const { if(get_attribute_value(9).isNull()) { return ::Ifc4x3_tc1::IfcCostValue{}; } return ((express::base)(get_attribute_value(9))).as<::Ifc4x3_tc1::IfcCostValue>(); } void Ifc4x3_tc1::IfcInventory::setCurrentValue(const ::Ifc4x3_tc1::IfcCostValue& v) { set_attribute_value(9, v);if constexpr (false)unset_attribute_value(9); } -::Ifc4x3_tc1::IfcCostValue Ifc4x3_tc1::IfcInventory::OriginalValue() const { if(get_attribute_value(10).isNull()) { return ::Ifc4x3_tc1::IfcCostValue{}; } return ((express::Base)(get_attribute_value(10))).as<::Ifc4x3_tc1::IfcCostValue>(); } +::Ifc4x3_tc1::IfcCostValue Ifc4x3_tc1::IfcInventory::OriginalValue() const { if(get_attribute_value(10).isNull()) { return ::Ifc4x3_tc1::IfcCostValue{}; } return ((express::base)(get_attribute_value(10))).as<::Ifc4x3_tc1::IfcCostValue>(); } void Ifc4x3_tc1::IfcInventory::setOriginalValue(const ::Ifc4x3_tc1::IfcCostValue& v) { set_attribute_value(10, v);if constexpr (false)unset_attribute_value(10); } const ifcopenshell::entity& Ifc4x3_tc1::IfcInventory::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[557]); } -Ifc4x3_tc1::IfcInventory Ifc4x3_tc1::IfcInventory::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, std::optional< ::Ifc4x3_tc1::IfcInventoryTypeEnum::Value > v6_PredefinedType, ::Ifc4x3_tc1::IfcActorSelect v7_Jurisdiction, std::optional< std::vector< ::Ifc4x3_tc1::IfcPerson > > v8_ResponsiblePersons, std::optional< std::string > v9_LastUpdateDate, ::Ifc4x3_tc1::IfcCostValue v10_CurrentValue, ::Ifc4x3_tc1::IfcCostValue v11_OriginalValue) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); } if (v6_PredefinedType) {set_attribute_value(5, (enumeration_reference(&::Ifc4x3_tc1::IfcInventoryTypeEnum::Class(),(size_t)*v6_PredefinedType))); }set_attribute_value(6, (v7_Jurisdiction)); if (v8_ResponsiblePersons) {set_attribute_value(7, cast_vector(*v8_ResponsiblePersons)); } if (v9_LastUpdateDate) {set_attribute_value(8, (*v9_LastUpdateDate)); }set_attribute_value(9, (v10_CurrentValue));set_attribute_value(10, (v11_OriginalValue));; return *this; } +Ifc4x3_tc1::IfcInventory Ifc4x3_tc1::IfcInventory::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, std::optional< ::Ifc4x3_tc1::IfcInventoryTypeEnum::Value > v6_PredefinedType, ::Ifc4x3_tc1::IfcActorSelect v7_Jurisdiction, std::optional< std::vector< ::Ifc4x3_tc1::IfcPerson > > v8_ResponsiblePersons, std::optional< std::string > v9_LastUpdateDate, ::Ifc4x3_tc1::IfcCostValue v10_CurrentValue, ::Ifc4x3_tc1::IfcCostValue v11_OriginalValue) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); } if (v6_PredefinedType) {set_attribute_value(5, (enumeration_reference(&::Ifc4x3_tc1::IfcInventoryTypeEnum::Class(),(size_t)*v6_PredefinedType))); }set_attribute_value(6, (v7_Jurisdiction)); if (v8_ResponsiblePersons) {set_attribute_value(7, cast_vector(*v8_ResponsiblePersons)); } if (v9_LastUpdateDate) {set_attribute_value(8, (*v9_LastUpdateDate)); }set_attribute_value(9, (v10_CurrentValue));set_attribute_value(10, (v11_OriginalValue));; return *this; } // Function implementations for IfcIrregularTimeSeries -std::vector< ::Ifc4x3_tc1::IfcIrregularTimeSeriesValue > Ifc4x3_tc1::IfcIrregularTimeSeries::Values() const { std::vector es = get_attribute_value(8); return cast_vector<::Ifc4x3_tc1::IfcIrregularTimeSeriesValue>(es); } -void Ifc4x3_tc1::IfcIrregularTimeSeries::setValues(const std::vector< ::Ifc4x3_tc1::IfcIrregularTimeSeriesValue >& v) { set_attribute_value(8, cast_vector(v));if constexpr (false)unset_attribute_value(8); } +std::vector< ::Ifc4x3_tc1::IfcIrregularTimeSeriesValue > Ifc4x3_tc1::IfcIrregularTimeSeries::Values() const { std::vector es = get_attribute_value(8); return cast_vector<::Ifc4x3_tc1::IfcIrregularTimeSeriesValue>(es); } +void Ifc4x3_tc1::IfcIrregularTimeSeries::setValues(const std::vector< ::Ifc4x3_tc1::IfcIrregularTimeSeriesValue >& v) { set_attribute_value(8, cast_vector(v));if constexpr (false)unset_attribute_value(8); } const ifcopenshell::entity& Ifc4x3_tc1::IfcIrregularTimeSeries::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[560]); } -Ifc4x3_tc1::IfcIrregularTimeSeries Ifc4x3_tc1::IfcIrregularTimeSeries::initialize(std::string v1_Name, std::optional< std::string > v2_Description, std::string v3_StartTime, std::string v4_EndTime, ::Ifc4x3_tc1::IfcTimeSeriesDataTypeEnum::Value v5_TimeSeriesDataType, ::Ifc4x3_tc1::IfcDataOriginEnum::Value v6_DataOrigin, std::optional< std::string > v7_UserDefinedDataOrigin, ::Ifc4x3_tc1::IfcUnit v8_Unit, std::vector< ::Ifc4x3_tc1::IfcIrregularTimeSeriesValue > v9_Values) { set_attribute_value(0, (v1_Name)); if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, (v3_StartTime));set_attribute_value(3, (v4_EndTime));set_attribute_value(4, (enumeration_reference(&::Ifc4x3_tc1::IfcTimeSeriesDataTypeEnum::Class(),(size_t)v5_TimeSeriesDataType)));set_attribute_value(5, (enumeration_reference(&::Ifc4x3_tc1::IfcDataOriginEnum::Class(),(size_t)v6_DataOrigin))); if (v7_UserDefinedDataOrigin) {set_attribute_value(6, (*v7_UserDefinedDataOrigin)); }set_attribute_value(7, (v8_Unit));set_attribute_value(8, cast_vector(v9_Values));; return *this; } +Ifc4x3_tc1::IfcIrregularTimeSeries Ifc4x3_tc1::IfcIrregularTimeSeries::initialize(std::string v1_Name, std::optional< std::string > v2_Description, std::string v3_StartTime, std::string v4_EndTime, ::Ifc4x3_tc1::IfcTimeSeriesDataTypeEnum::Value v5_TimeSeriesDataType, ::Ifc4x3_tc1::IfcDataOriginEnum::Value v6_DataOrigin, std::optional< std::string > v7_UserDefinedDataOrigin, ::Ifc4x3_tc1::IfcUnit v8_Unit, std::vector< ::Ifc4x3_tc1::IfcIrregularTimeSeriesValue > v9_Values) { set_attribute_value(0, (v1_Name)); if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, (v3_StartTime));set_attribute_value(3, (v4_EndTime));set_attribute_value(4, (enumeration_reference(&::Ifc4x3_tc1::IfcTimeSeriesDataTypeEnum::Class(),(size_t)v5_TimeSeriesDataType)));set_attribute_value(5, (enumeration_reference(&::Ifc4x3_tc1::IfcDataOriginEnum::Class(),(size_t)v6_DataOrigin))); if (v7_UserDefinedDataOrigin) {set_attribute_value(6, (*v7_UserDefinedDataOrigin)); }set_attribute_value(7, (v8_Unit));set_attribute_value(8, cast_vector(v9_Values));; return *this; } // Function implementations for IfcIrregularTimeSeriesValue std::string Ifc4x3_tc1::IfcIrregularTimeSeriesValue::TimeStamp() const { std::string v = get_attribute_value(0); return v; } void Ifc4x3_tc1::IfcIrregularTimeSeriesValue::setTimeStamp(const std::string& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } -std::vector< ::Ifc4x3_tc1::IfcValue > Ifc4x3_tc1::IfcIrregularTimeSeriesValue::ListValues() const { std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3_tc1::IfcValue>(es); } -void Ifc4x3_tc1::IfcIrregularTimeSeriesValue::setListValues(const std::vector< ::Ifc4x3_tc1::IfcValue >& v) { set_attribute_value(1, cast_vector(v));if constexpr (false)unset_attribute_value(1); } +std::vector< ::Ifc4x3_tc1::IfcValue > Ifc4x3_tc1::IfcIrregularTimeSeriesValue::ListValues() const { std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3_tc1::IfcValue>(es); } +void Ifc4x3_tc1::IfcIrregularTimeSeriesValue::setListValues(const std::vector< ::Ifc4x3_tc1::IfcValue >& v) { set_attribute_value(1, cast_vector(v));if constexpr (false)unset_attribute_value(1); } const ifcopenshell::entity& Ifc4x3_tc1::IfcIrregularTimeSeriesValue::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[561]); } -Ifc4x3_tc1::IfcIrregularTimeSeriesValue Ifc4x3_tc1::IfcIrregularTimeSeriesValue::initialize(std::string v1_TimeStamp, std::vector< ::Ifc4x3_tc1::IfcValue > v2_ListValues) { set_attribute_value(0, (v1_TimeStamp));set_attribute_value(1, cast_vector(v2_ListValues));; return *this; } +Ifc4x3_tc1::IfcIrregularTimeSeriesValue Ifc4x3_tc1::IfcIrregularTimeSeriesValue::initialize(std::string v1_TimeStamp, std::vector< ::Ifc4x3_tc1::IfcValue > v2_ListValues) { set_attribute_value(0, (v1_TimeStamp));set_attribute_value(1, cast_vector(v2_ListValues));; return *this; } // Function implementations for IfcJunctionBox std::optional< ::Ifc4x3_tc1::IfcJunctionBoxTypeEnum::Value > Ifc4x3_tc1::IfcJunctionBox::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_tc1::IfcJunctionBoxTypeEnum::FromString(get_attribute_value(8)); } @@ -11395,7 +11395,7 @@ void Ifc4x3_tc1::IfcJunctionBoxType::setPredefinedType(const ::Ifc4x3_tc1::IfcJu const ifcopenshell::entity& Ifc4x3_tc1::IfcJunctionBoxType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[565]); } -Ifc4x3_tc1::IfcJunctionBoxType Ifc4x3_tc1::IfcJunctionBoxType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcJunctionBoxTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcJunctionBoxTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_tc1::IfcJunctionBoxType Ifc4x3_tc1::IfcJunctionBoxType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcJunctionBoxTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcJunctionBoxTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcKerb std::optional< ::Ifc4x3_tc1::IfcKerbTypeEnum::Value > Ifc4x3_tc1::IfcKerb::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_tc1::IfcKerbTypeEnum::FromString(get_attribute_value(8)); } @@ -11411,7 +11411,7 @@ void Ifc4x3_tc1::IfcKerbType::setPredefinedType(const ::Ifc4x3_tc1::IfcKerbTypeE const ifcopenshell::entity& Ifc4x3_tc1::IfcKerbType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[568]); } -Ifc4x3_tc1::IfcKerbType Ifc4x3_tc1::IfcKerbType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcKerbTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcKerbTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_tc1::IfcKerbType Ifc4x3_tc1::IfcKerbType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcKerbTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcKerbTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcLShapeProfileDef double Ifc4x3_tc1::IfcLShapeProfileDef::Depth() const { double v = get_attribute_value(3); return v; } @@ -11437,7 +11437,7 @@ void Ifc4x3_tc1::IfcLaborResource::setPredefinedType(const std::optional< ::Ifc4 const ifcopenshell::entity& Ifc4x3_tc1::IfcLaborResource::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[573]); } -Ifc4x3_tc1::IfcLaborResource Ifc4x3_tc1::IfcLaborResource::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, std::optional< std::string > v6_Identification, std::optional< std::string > v7_LongDescription, ::Ifc4x3_tc1::IfcResourceTime v8_Usage, std::optional< std::vector< ::Ifc4x3_tc1::IfcAppliedValue > > v9_BaseCosts, ::Ifc4x3_tc1::IfcPhysicalQuantity v10_BaseQuantity, std::optional< ::Ifc4x3_tc1::IfcLaborResourceTypeEnum::Value > v11_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); } if (v6_Identification) {set_attribute_value(5, (*v6_Identification)); } if (v7_LongDescription) {set_attribute_value(6, (*v7_LongDescription)); }set_attribute_value(7, (v8_Usage)); if (v9_BaseCosts) {set_attribute_value(8, cast_vector(*v9_BaseCosts)); }set_attribute_value(9, (v10_BaseQuantity)); if (v11_PredefinedType) {set_attribute_value(10, (enumeration_reference(&::Ifc4x3_tc1::IfcLaborResourceTypeEnum::Class(),(size_t)*v11_PredefinedType))); }; return *this; } +Ifc4x3_tc1::IfcLaborResource Ifc4x3_tc1::IfcLaborResource::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, std::optional< std::string > v6_Identification, std::optional< std::string > v7_LongDescription, ::Ifc4x3_tc1::IfcResourceTime v8_Usage, std::optional< std::vector< ::Ifc4x3_tc1::IfcAppliedValue > > v9_BaseCosts, ::Ifc4x3_tc1::IfcPhysicalQuantity v10_BaseQuantity, std::optional< ::Ifc4x3_tc1::IfcLaborResourceTypeEnum::Value > v11_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); } if (v6_Identification) {set_attribute_value(5, (*v6_Identification)); } if (v7_LongDescription) {set_attribute_value(6, (*v7_LongDescription)); }set_attribute_value(7, (v8_Usage)); if (v9_BaseCosts) {set_attribute_value(8, cast_vector(*v9_BaseCosts)); }set_attribute_value(9, (v10_BaseQuantity)); if (v11_PredefinedType) {set_attribute_value(10, (enumeration_reference(&::Ifc4x3_tc1::IfcLaborResourceTypeEnum::Class(),(size_t)*v11_PredefinedType))); }; return *this; } // Function implementations for IfcLaborResourceType ::Ifc4x3_tc1::IfcLaborResourceTypeEnum::Value Ifc4x3_tc1::IfcLaborResourceType::PredefinedType() const { return ::Ifc4x3_tc1::IfcLaborResourceTypeEnum::FromString(get_attribute_value(11)); } @@ -11445,10 +11445,10 @@ void Ifc4x3_tc1::IfcLaborResourceType::setPredefinedType(const ::Ifc4x3_tc1::Ifc const ifcopenshell::entity& Ifc4x3_tc1::IfcLaborResourceType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[574]); } -Ifc4x3_tc1::IfcLaborResourceType Ifc4x3_tc1::IfcLaborResourceType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::string > v7_Identification, std::optional< std::string > v8_LongDescription, std::optional< std::string > v9_ResourceType, std::optional< std::vector< ::Ifc4x3_tc1::IfcAppliedValue > > v10_BaseCosts, ::Ifc4x3_tc1::IfcPhysicalQuantity v11_BaseQuantity, ::Ifc4x3_tc1::IfcLaborResourceTypeEnum::Value v12_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_Identification) {set_attribute_value(6, (*v7_Identification)); } if (v8_LongDescription) {set_attribute_value(7, (*v8_LongDescription)); } if (v9_ResourceType) {set_attribute_value(8, (*v9_ResourceType)); } if (v10_BaseCosts) {set_attribute_value(9, cast_vector(*v10_BaseCosts)); }set_attribute_value(10, (v11_BaseQuantity));set_attribute_value(11, (enumeration_reference(&::Ifc4x3_tc1::IfcLaborResourceTypeEnum::Class(),(size_t)v12_PredefinedType)));; return *this; } +Ifc4x3_tc1::IfcLaborResourceType Ifc4x3_tc1::IfcLaborResourceType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::string > v7_Identification, std::optional< std::string > v8_LongDescription, std::optional< std::string > v9_ResourceType, std::optional< std::vector< ::Ifc4x3_tc1::IfcAppliedValue > > v10_BaseCosts, ::Ifc4x3_tc1::IfcPhysicalQuantity v11_BaseQuantity, ::Ifc4x3_tc1::IfcLaborResourceTypeEnum::Value v12_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_Identification) {set_attribute_value(6, (*v7_Identification)); } if (v8_LongDescription) {set_attribute_value(7, (*v8_LongDescription)); } if (v9_ResourceType) {set_attribute_value(8, (*v9_ResourceType)); } if (v10_BaseCosts) {set_attribute_value(9, cast_vector(*v10_BaseCosts)); }set_attribute_value(10, (v11_BaseQuantity));set_attribute_value(11, (enumeration_reference(&::Ifc4x3_tc1::IfcLaborResourceTypeEnum::Class(),(size_t)v12_PredefinedType)));; return *this; } // Function implementations for IfcLagTime -::Ifc4x3_tc1::IfcTimeOrRatioSelect Ifc4x3_tc1::IfcLagTime::LagValue() const { return ((express::Base)(get_attribute_value(3))).as<::Ifc4x3_tc1::IfcTimeOrRatioSelect>(); } +::Ifc4x3_tc1::IfcTimeOrRatioSelect Ifc4x3_tc1::IfcLagTime::LagValue() const { return ((express::base)(get_attribute_value(3))).as<::Ifc4x3_tc1::IfcTimeOrRatioSelect>(); } void Ifc4x3_tc1::IfcLagTime::setLagValue(const ::Ifc4x3_tc1::IfcTimeOrRatioSelect& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } ::Ifc4x3_tc1::IfcTaskDurationEnum::Value Ifc4x3_tc1::IfcLagTime::DurationType() const { return ::Ifc4x3_tc1::IfcTaskDurationEnum::FromString(get_attribute_value(4)); } void Ifc4x3_tc1::IfcLagTime::setDurationType(const ::Ifc4x3_tc1::IfcTaskDurationEnum::Value& v) { set_attribute_value(4, enumeration_reference(&::Ifc4x3_tc1::IfcTaskDurationEnum::Class(), (size_t) v));if constexpr (false)unset_attribute_value(4); } @@ -11471,14 +11471,14 @@ void Ifc4x3_tc1::IfcLampType::setPredefinedType(const ::Ifc4x3_tc1::IfcLampTypeE const ifcopenshell::entity& Ifc4x3_tc1::IfcLampType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[578]); } -Ifc4x3_tc1::IfcLampType Ifc4x3_tc1::IfcLampType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcLampTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcLampTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_tc1::IfcLampType Ifc4x3_tc1::IfcLampType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcLampTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcLampTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcLibraryInformation std::string Ifc4x3_tc1::IfcLibraryInformation::Name() const { std::string v = get_attribute_value(0); return v; } void Ifc4x3_tc1::IfcLibraryInformation::setName(const std::string& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } std::optional< std::string > Ifc4x3_tc1::IfcLibraryInformation::Version() const { if(get_attribute_value(1).isNull()) { return std::nullopt; } std::string v = get_attribute_value(1); return v; } void Ifc4x3_tc1::IfcLibraryInformation::setVersion(const std::optional< std::string >& v) { if (v) {set_attribute_value(1, *v);} else {unset_attribute_value(1);} } -::Ifc4x3_tc1::IfcActorSelect Ifc4x3_tc1::IfcLibraryInformation::Publisher() const { if(get_attribute_value(2).isNull()) { return ::Ifc4x3_tc1::IfcActorSelect{}; } return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3_tc1::IfcActorSelect>(); } +::Ifc4x3_tc1::IfcActorSelect Ifc4x3_tc1::IfcLibraryInformation::Publisher() const { if(get_attribute_value(2).isNull()) { return ::Ifc4x3_tc1::IfcActorSelect{}; } return ((express::base)(get_attribute_value(2))).as<::Ifc4x3_tc1::IfcActorSelect>(); } void Ifc4x3_tc1::IfcLibraryInformation::setPublisher(const ::Ifc4x3_tc1::IfcActorSelect& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } std::optional< std::string > Ifc4x3_tc1::IfcLibraryInformation::VersionDate() const { if(get_attribute_value(3).isNull()) { return std::nullopt; } std::string v = get_attribute_value(3); return v; } void Ifc4x3_tc1::IfcLibraryInformation::setVersionDate(const std::optional< std::string >& v) { if (v) {set_attribute_value(3, *v);} else {unset_attribute_value(3);} } @@ -11498,7 +11498,7 @@ std::optional< std::string > Ifc4x3_tc1::IfcLibraryReference::Description() cons void Ifc4x3_tc1::IfcLibraryReference::setDescription(const std::optional< std::string >& v) { if (v) {set_attribute_value(3, *v);} else {unset_attribute_value(3);} } std::optional< std::string > Ifc4x3_tc1::IfcLibraryReference::Language() const { if(get_attribute_value(4).isNull()) { return std::nullopt; } std::string v = get_attribute_value(4); return v; } void Ifc4x3_tc1::IfcLibraryReference::setLanguage(const std::optional< std::string >& v) { if (v) {set_attribute_value(4, *v);} else {unset_attribute_value(4);} } -::Ifc4x3_tc1::IfcLibraryInformation Ifc4x3_tc1::IfcLibraryReference::ReferencedLibrary() const { if(get_attribute_value(5).isNull()) { return ::Ifc4x3_tc1::IfcLibraryInformation{}; } return ((express::Base)(get_attribute_value(5))).as<::Ifc4x3_tc1::IfcLibraryInformation>(); } +::Ifc4x3_tc1::IfcLibraryInformation Ifc4x3_tc1::IfcLibraryReference::ReferencedLibrary() const { if(get_attribute_value(5).isNull()) { return ::Ifc4x3_tc1::IfcLibraryInformation{}; } return ((express::base)(get_attribute_value(5))).as<::Ifc4x3_tc1::IfcLibraryInformation>(); } void Ifc4x3_tc1::IfcLibraryReference::setReferencedLibrary(const ::Ifc4x3_tc1::IfcLibraryInformation& v) { set_attribute_value(5, v);if constexpr (false)unset_attribute_value(5); } std::vector<::Ifc4x3_tc1::IfcRelAssociatesLibrary> Ifc4x3_tc1::IfcLibraryReference::LibraryRefForObjects() const { return cast_vector(file()->get_inverse(data()->id(), IFC4X3_TC1_types[911], 5)); } @@ -11532,22 +11532,22 @@ void Ifc4x3_tc1::IfcLightFixtureType::setPredefinedType(const ::Ifc4x3_tc1::IfcL const ifcopenshell::entity& Ifc4x3_tc1::IfcLightFixtureType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[592]); } -Ifc4x3_tc1::IfcLightFixtureType Ifc4x3_tc1::IfcLightFixtureType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcLightFixtureTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcLightFixtureTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_tc1::IfcLightFixtureType Ifc4x3_tc1::IfcLightFixtureType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcLightFixtureTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcLightFixtureTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcLightIntensityDistribution ::Ifc4x3_tc1::IfcLightDistributionCurveEnum::Value Ifc4x3_tc1::IfcLightIntensityDistribution::LightDistributionCurve() const { return ::Ifc4x3_tc1::IfcLightDistributionCurveEnum::FromString(get_attribute_value(0)); } void Ifc4x3_tc1::IfcLightIntensityDistribution::setLightDistributionCurve(const ::Ifc4x3_tc1::IfcLightDistributionCurveEnum::Value& v) { set_attribute_value(0, enumeration_reference(&::Ifc4x3_tc1::IfcLightDistributionCurveEnum::Class(), (size_t) v));if constexpr (false)unset_attribute_value(0); } -std::vector< ::Ifc4x3_tc1::IfcLightDistributionData > Ifc4x3_tc1::IfcLightIntensityDistribution::DistributionData() const { std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3_tc1::IfcLightDistributionData>(es); } -void Ifc4x3_tc1::IfcLightIntensityDistribution::setDistributionData(const std::vector< ::Ifc4x3_tc1::IfcLightDistributionData >& v) { set_attribute_value(1, cast_vector(v));if constexpr (false)unset_attribute_value(1); } +std::vector< ::Ifc4x3_tc1::IfcLightDistributionData > Ifc4x3_tc1::IfcLightIntensityDistribution::DistributionData() const { std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3_tc1::IfcLightDistributionData>(es); } +void Ifc4x3_tc1::IfcLightIntensityDistribution::setDistributionData(const std::vector< ::Ifc4x3_tc1::IfcLightDistributionData >& v) { set_attribute_value(1, cast_vector(v));if constexpr (false)unset_attribute_value(1); } const ifcopenshell::entity& Ifc4x3_tc1::IfcLightIntensityDistribution::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[594]); } -Ifc4x3_tc1::IfcLightIntensityDistribution Ifc4x3_tc1::IfcLightIntensityDistribution::initialize(::Ifc4x3_tc1::IfcLightDistributionCurveEnum::Value v1_LightDistributionCurve, std::vector< ::Ifc4x3_tc1::IfcLightDistributionData > v2_DistributionData) { set_attribute_value(0, (enumeration_reference(&::Ifc4x3_tc1::IfcLightDistributionCurveEnum::Class(),(size_t)v1_LightDistributionCurve)));set_attribute_value(1, cast_vector(v2_DistributionData));; return *this; } +Ifc4x3_tc1::IfcLightIntensityDistribution Ifc4x3_tc1::IfcLightIntensityDistribution::initialize(::Ifc4x3_tc1::IfcLightDistributionCurveEnum::Value v1_LightDistributionCurve, std::vector< ::Ifc4x3_tc1::IfcLightDistributionData > v2_DistributionData) { set_attribute_value(0, (enumeration_reference(&::Ifc4x3_tc1::IfcLightDistributionCurveEnum::Class(),(size_t)v1_LightDistributionCurve)));set_attribute_value(1, cast_vector(v2_DistributionData));; return *this; } // Function implementations for IfcLightSource std::optional< std::string > Ifc4x3_tc1::IfcLightSource::Name() const { if(get_attribute_value(0).isNull()) { return std::nullopt; } std::string v = get_attribute_value(0); return v; } void Ifc4x3_tc1::IfcLightSource::setName(const std::optional< std::string >& v) { if (v) {set_attribute_value(0, *v);} else {unset_attribute_value(0);} } -::Ifc4x3_tc1::IfcColourRgb Ifc4x3_tc1::IfcLightSource::LightColour() const { return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3_tc1::IfcColourRgb>(); } +::Ifc4x3_tc1::IfcColourRgb Ifc4x3_tc1::IfcLightSource::LightColour() const { return ((express::base)(get_attribute_value(1))).as<::Ifc4x3_tc1::IfcColourRgb>(); } void Ifc4x3_tc1::IfcLightSource::setLightColour(const ::Ifc4x3_tc1::IfcColourRgb& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } std::optional< double > Ifc4x3_tc1::IfcLightSource::AmbientIntensity() const { if(get_attribute_value(2).isNull()) { return std::nullopt; } double v = get_attribute_value(2); return v; } void Ifc4x3_tc1::IfcLightSource::setAmbientIntensity(const std::optional< double >& v) { if (v) {set_attribute_value(2, *v);} else {unset_attribute_value(2);} } @@ -11565,7 +11565,7 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcLightSourceAmbient::Class() { return Ifc4x3_tc1::IfcLightSourceAmbient Ifc4x3_tc1::IfcLightSourceAmbient::initialize(std::optional< std::string > v1_Name, ::Ifc4x3_tc1::IfcColourRgb v2_LightColour, std::optional< double > v3_AmbientIntensity, std::optional< double > v4_Intensity) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); }set_attribute_value(1, (v2_LightColour)); if (v3_AmbientIntensity) {set_attribute_value(2, (*v3_AmbientIntensity)); } if (v4_Intensity) {set_attribute_value(3, (*v4_Intensity)); }; return *this; } // Function implementations for IfcLightSourceDirectional -::Ifc4x3_tc1::IfcDirection Ifc4x3_tc1::IfcLightSourceDirectional::Orientation() const { return ((express::Base)(get_attribute_value(4))).as<::Ifc4x3_tc1::IfcDirection>(); } +::Ifc4x3_tc1::IfcDirection Ifc4x3_tc1::IfcLightSourceDirectional::Orientation() const { return ((express::base)(get_attribute_value(4))).as<::Ifc4x3_tc1::IfcDirection>(); } void Ifc4x3_tc1::IfcLightSourceDirectional::setOrientation(const ::Ifc4x3_tc1::IfcDirection& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } @@ -11573,9 +11573,9 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcLightSourceDirectional::Class() { ret Ifc4x3_tc1::IfcLightSourceDirectional Ifc4x3_tc1::IfcLightSourceDirectional::initialize(std::optional< std::string > v1_Name, ::Ifc4x3_tc1::IfcColourRgb v2_LightColour, std::optional< double > v3_AmbientIntensity, std::optional< double > v4_Intensity, ::Ifc4x3_tc1::IfcDirection v5_Orientation) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); }set_attribute_value(1, (v2_LightColour)); if (v3_AmbientIntensity) {set_attribute_value(2, (*v3_AmbientIntensity)); } if (v4_Intensity) {set_attribute_value(3, (*v4_Intensity)); }set_attribute_value(4, (v5_Orientation));; return *this; } // Function implementations for IfcLightSourceGoniometric -::Ifc4x3_tc1::IfcAxis2Placement3D Ifc4x3_tc1::IfcLightSourceGoniometric::Position() const { return ((express::Base)(get_attribute_value(4))).as<::Ifc4x3_tc1::IfcAxis2Placement3D>(); } +::Ifc4x3_tc1::IfcAxis2Placement3D Ifc4x3_tc1::IfcLightSourceGoniometric::Position() const { return ((express::base)(get_attribute_value(4))).as<::Ifc4x3_tc1::IfcAxis2Placement3D>(); } void Ifc4x3_tc1::IfcLightSourceGoniometric::setPosition(const ::Ifc4x3_tc1::IfcAxis2Placement3D& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } -::Ifc4x3_tc1::IfcColourRgb Ifc4x3_tc1::IfcLightSourceGoniometric::ColourAppearance() const { if(get_attribute_value(5).isNull()) { return ::Ifc4x3_tc1::IfcColourRgb{}; } return ((express::Base)(get_attribute_value(5))).as<::Ifc4x3_tc1::IfcColourRgb>(); } +::Ifc4x3_tc1::IfcColourRgb Ifc4x3_tc1::IfcLightSourceGoniometric::ColourAppearance() const { if(get_attribute_value(5).isNull()) { return ::Ifc4x3_tc1::IfcColourRgb{}; } return ((express::base)(get_attribute_value(5))).as<::Ifc4x3_tc1::IfcColourRgb>(); } void Ifc4x3_tc1::IfcLightSourceGoniometric::setColourAppearance(const ::Ifc4x3_tc1::IfcColourRgb& v) { set_attribute_value(5, v);if constexpr (false)unset_attribute_value(5); } double Ifc4x3_tc1::IfcLightSourceGoniometric::ColourTemperature() const { double v = get_attribute_value(6); return v; } void Ifc4x3_tc1::IfcLightSourceGoniometric::setColourTemperature(const double& v) { set_attribute_value(6, v);if constexpr (false)unset_attribute_value(6); } @@ -11583,7 +11583,7 @@ double Ifc4x3_tc1::IfcLightSourceGoniometric::LuminousFlux() const { double v = void Ifc4x3_tc1::IfcLightSourceGoniometric::setLuminousFlux(const double& v) { set_attribute_value(7, v);if constexpr (false)unset_attribute_value(7); } ::Ifc4x3_tc1::IfcLightEmissionSourceEnum::Value Ifc4x3_tc1::IfcLightSourceGoniometric::LightEmissionSource() const { return ::Ifc4x3_tc1::IfcLightEmissionSourceEnum::FromString(get_attribute_value(8)); } void Ifc4x3_tc1::IfcLightSourceGoniometric::setLightEmissionSource(const ::Ifc4x3_tc1::IfcLightEmissionSourceEnum::Value& v) { set_attribute_value(8, enumeration_reference(&::Ifc4x3_tc1::IfcLightEmissionSourceEnum::Class(), (size_t) v));if constexpr (false)unset_attribute_value(8); } -::Ifc4x3_tc1::IfcLightDistributionDataSourceSelect Ifc4x3_tc1::IfcLightSourceGoniometric::LightDistributionDataSource() const { return ((express::Base)(get_attribute_value(9))).as<::Ifc4x3_tc1::IfcLightDistributionDataSourceSelect>(); } +::Ifc4x3_tc1::IfcLightDistributionDataSourceSelect Ifc4x3_tc1::IfcLightSourceGoniometric::LightDistributionDataSource() const { return ((express::base)(get_attribute_value(9))).as<::Ifc4x3_tc1::IfcLightDistributionDataSourceSelect>(); } void Ifc4x3_tc1::IfcLightSourceGoniometric::setLightDistributionDataSource(const ::Ifc4x3_tc1::IfcLightDistributionDataSourceSelect& v) { set_attribute_value(9, v);if constexpr (false)unset_attribute_value(9); } @@ -11591,7 +11591,7 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcLightSourceGoniometric::Class() { ret Ifc4x3_tc1::IfcLightSourceGoniometric Ifc4x3_tc1::IfcLightSourceGoniometric::initialize(std::optional< std::string > v1_Name, ::Ifc4x3_tc1::IfcColourRgb v2_LightColour, std::optional< double > v3_AmbientIntensity, std::optional< double > v4_Intensity, ::Ifc4x3_tc1::IfcAxis2Placement3D v5_Position, ::Ifc4x3_tc1::IfcColourRgb v6_ColourAppearance, double v7_ColourTemperature, double v8_LuminousFlux, ::Ifc4x3_tc1::IfcLightEmissionSourceEnum::Value v9_LightEmissionSource, ::Ifc4x3_tc1::IfcLightDistributionDataSourceSelect v10_LightDistributionDataSource) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); }set_attribute_value(1, (v2_LightColour)); if (v3_AmbientIntensity) {set_attribute_value(2, (*v3_AmbientIntensity)); } if (v4_Intensity) {set_attribute_value(3, (*v4_Intensity)); }set_attribute_value(4, (v5_Position));set_attribute_value(5, (v6_ColourAppearance));set_attribute_value(6, (v7_ColourTemperature));set_attribute_value(7, (v8_LuminousFlux));set_attribute_value(8, (enumeration_reference(&::Ifc4x3_tc1::IfcLightEmissionSourceEnum::Class(),(size_t)v9_LightEmissionSource)));set_attribute_value(9, (v10_LightDistributionDataSource));; return *this; } // Function implementations for IfcLightSourcePositional -::Ifc4x3_tc1::IfcCartesianPoint Ifc4x3_tc1::IfcLightSourcePositional::Position() const { return ((express::Base)(get_attribute_value(4))).as<::Ifc4x3_tc1::IfcCartesianPoint>(); } +::Ifc4x3_tc1::IfcCartesianPoint Ifc4x3_tc1::IfcLightSourcePositional::Position() const { return ((express::base)(get_attribute_value(4))).as<::Ifc4x3_tc1::IfcCartesianPoint>(); } void Ifc4x3_tc1::IfcLightSourcePositional::setPosition(const ::Ifc4x3_tc1::IfcCartesianPoint& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } double Ifc4x3_tc1::IfcLightSourcePositional::Radius() const { double v = get_attribute_value(5); return v; } void Ifc4x3_tc1::IfcLightSourcePositional::setRadius(const double& v) { set_attribute_value(5, v);if constexpr (false)unset_attribute_value(5); } @@ -11607,7 +11607,7 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcLightSourcePositional::Class() { retu Ifc4x3_tc1::IfcLightSourcePositional Ifc4x3_tc1::IfcLightSourcePositional::initialize(std::optional< std::string > v1_Name, ::Ifc4x3_tc1::IfcColourRgb v2_LightColour, std::optional< double > v3_AmbientIntensity, std::optional< double > v4_Intensity, ::Ifc4x3_tc1::IfcCartesianPoint v5_Position, double v6_Radius, double v7_ConstantAttenuation, double v8_DistanceAttenuation, double v9_QuadricAttenuation) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); }set_attribute_value(1, (v2_LightColour)); if (v3_AmbientIntensity) {set_attribute_value(2, (*v3_AmbientIntensity)); } if (v4_Intensity) {set_attribute_value(3, (*v4_Intensity)); }set_attribute_value(4, (v5_Position));set_attribute_value(5, (v6_Radius));set_attribute_value(6, (v7_ConstantAttenuation));set_attribute_value(7, (v8_DistanceAttenuation));set_attribute_value(8, (v9_QuadricAttenuation));; return *this; } // Function implementations for IfcLightSourceSpot -::Ifc4x3_tc1::IfcDirection Ifc4x3_tc1::IfcLightSourceSpot::Orientation() const { return ((express::Base)(get_attribute_value(9))).as<::Ifc4x3_tc1::IfcDirection>(); } +::Ifc4x3_tc1::IfcDirection Ifc4x3_tc1::IfcLightSourceSpot::Orientation() const { return ((express::base)(get_attribute_value(9))).as<::Ifc4x3_tc1::IfcDirection>(); } void Ifc4x3_tc1::IfcLightSourceSpot::setOrientation(const ::Ifc4x3_tc1::IfcDirection& v) { set_attribute_value(9, v);if constexpr (false)unset_attribute_value(9); } std::optional< double > Ifc4x3_tc1::IfcLightSourceSpot::ConcentrationExponent() const { if(get_attribute_value(10).isNull()) { return std::nullopt; } double v = get_attribute_value(10); return v; } void Ifc4x3_tc1::IfcLightSourceSpot::setConcentrationExponent(const std::optional< double >& v) { if (v) {set_attribute_value(10, *v);} else {unset_attribute_value(10);} } @@ -11621,9 +11621,9 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcLightSourceSpot::Class() { return *(( Ifc4x3_tc1::IfcLightSourceSpot Ifc4x3_tc1::IfcLightSourceSpot::initialize(std::optional< std::string > v1_Name, ::Ifc4x3_tc1::IfcColourRgb v2_LightColour, std::optional< double > v3_AmbientIntensity, std::optional< double > v4_Intensity, ::Ifc4x3_tc1::IfcCartesianPoint v5_Position, double v6_Radius, double v7_ConstantAttenuation, double v8_DistanceAttenuation, double v9_QuadricAttenuation, ::Ifc4x3_tc1::IfcDirection v10_Orientation, std::optional< double > v11_ConcentrationExponent, double v12_SpreadAngle, double v13_BeamWidthAngle) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); }set_attribute_value(1, (v2_LightColour)); if (v3_AmbientIntensity) {set_attribute_value(2, (*v3_AmbientIntensity)); } if (v4_Intensity) {set_attribute_value(3, (*v4_Intensity)); }set_attribute_value(4, (v5_Position));set_attribute_value(5, (v6_Radius));set_attribute_value(6, (v7_ConstantAttenuation));set_attribute_value(7, (v8_DistanceAttenuation));set_attribute_value(8, (v9_QuadricAttenuation));set_attribute_value(9, (v10_Orientation)); if (v11_ConcentrationExponent) {set_attribute_value(10, (*v11_ConcentrationExponent)); }set_attribute_value(11, (v12_SpreadAngle));set_attribute_value(12, (v13_BeamWidthAngle));; return *this; } // Function implementations for IfcLine -::Ifc4x3_tc1::IfcCartesianPoint Ifc4x3_tc1::IfcLine::Pnt() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcCartesianPoint>(); } +::Ifc4x3_tc1::IfcCartesianPoint Ifc4x3_tc1::IfcLine::Pnt() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcCartesianPoint>(); } void Ifc4x3_tc1::IfcLine::setPnt(const ::Ifc4x3_tc1::IfcCartesianPoint& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } -::Ifc4x3_tc1::IfcVector Ifc4x3_tc1::IfcLine::Dir() const { return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3_tc1::IfcVector>(); } +::Ifc4x3_tc1::IfcVector Ifc4x3_tc1::IfcLine::Dir() const { return ((express::base)(get_attribute_value(1))).as<::Ifc4x3_tc1::IfcVector>(); } void Ifc4x3_tc1::IfcLine::setDir(const ::Ifc4x3_tc1::IfcVector& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } @@ -11637,9 +11637,9 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcLinearElement::Class() { return *((if Ifc4x3_tc1::IfcLinearElement Ifc4x3_tc1::IfcLinearElement::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, ::Ifc4x3_tc1::IfcObjectPlacement v6_ObjectPlacement, ::Ifc4x3_tc1::IfcProductRepresentation v7_Representation) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); }set_attribute_value(5, (v6_ObjectPlacement));set_attribute_value(6, (v7_Representation));; return *this; } // Function implementations for IfcLinearPlacement -::Ifc4x3_tc1::IfcAxis2PlacementLinear Ifc4x3_tc1::IfcLinearPlacement::RelativePlacement() const { return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3_tc1::IfcAxis2PlacementLinear>(); } +::Ifc4x3_tc1::IfcAxis2PlacementLinear Ifc4x3_tc1::IfcLinearPlacement::RelativePlacement() const { return ((express::base)(get_attribute_value(1))).as<::Ifc4x3_tc1::IfcAxis2PlacementLinear>(); } void Ifc4x3_tc1::IfcLinearPlacement::setRelativePlacement(const ::Ifc4x3_tc1::IfcAxis2PlacementLinear& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } -::Ifc4x3_tc1::IfcAxis2Placement3D Ifc4x3_tc1::IfcLinearPlacement::CartesianPosition() const { if(get_attribute_value(2).isNull()) { return ::Ifc4x3_tc1::IfcAxis2Placement3D{}; } return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3_tc1::IfcAxis2Placement3D>(); } +::Ifc4x3_tc1::IfcAxis2Placement3D Ifc4x3_tc1::IfcLinearPlacement::CartesianPosition() const { if(get_attribute_value(2).isNull()) { return ::Ifc4x3_tc1::IfcAxis2Placement3D{}; } return ((express::base)(get_attribute_value(2))).as<::Ifc4x3_tc1::IfcAxis2Placement3D>(); } void Ifc4x3_tc1::IfcLinearPlacement::setCartesianPosition(const ::Ifc4x3_tc1::IfcAxis2Placement3D& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } @@ -11666,10 +11666,10 @@ void Ifc4x3_tc1::IfcLiquidTerminalType::setPredefinedType(const ::Ifc4x3_tc1::If const ifcopenshell::entity& Ifc4x3_tc1::IfcLiquidTerminalType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[611]); } -Ifc4x3_tc1::IfcLiquidTerminalType Ifc4x3_tc1::IfcLiquidTerminalType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcLiquidTerminalTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcLiquidTerminalTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_tc1::IfcLiquidTerminalType Ifc4x3_tc1::IfcLiquidTerminalType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcLiquidTerminalTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcLiquidTerminalTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcLocalPlacement -::Ifc4x3_tc1::IfcAxis2Placement Ifc4x3_tc1::IfcLocalPlacement::RelativePlacement() const { return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3_tc1::IfcAxis2Placement>(); } +::Ifc4x3_tc1::IfcAxis2Placement Ifc4x3_tc1::IfcLocalPlacement::RelativePlacement() const { return ((express::base)(get_attribute_value(1))).as<::Ifc4x3_tc1::IfcAxis2Placement>(); } void Ifc4x3_tc1::IfcLocalPlacement::setRelativePlacement(const ::Ifc4x3_tc1::IfcAxis2Placement& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } @@ -11683,7 +11683,7 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcLoop::Class() { return *((ifcopenshel Ifc4x3_tc1::IfcLoop Ifc4x3_tc1::IfcLoop::initialize() { ; return *this; } // Function implementations for IfcManifoldSolidBrep -::Ifc4x3_tc1::IfcClosedShell Ifc4x3_tc1::IfcManifoldSolidBrep::Outer() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcClosedShell>(); } +::Ifc4x3_tc1::IfcClosedShell Ifc4x3_tc1::IfcManifoldSolidBrep::Outer() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcClosedShell>(); } void Ifc4x3_tc1::IfcManifoldSolidBrep::setOuter(const ::Ifc4x3_tc1::IfcClosedShell& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } @@ -11713,9 +11713,9 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcMapConversion::Class() { return *((if Ifc4x3_tc1::IfcMapConversion Ifc4x3_tc1::IfcMapConversion::initialize(::Ifc4x3_tc1::IfcCoordinateReferenceSystemSelect v1_SourceCRS, ::Ifc4x3_tc1::IfcCoordinateReferenceSystem v2_TargetCRS, double v3_Eastings, double v4_Northings, double v5_OrthogonalHeight, std::optional< double > v6_XAxisAbscissa, std::optional< double > v7_XAxisOrdinate, std::optional< double > v8_Scale, std::optional< double > v9_ScaleY, std::optional< double > v10_ScaleZ) { set_attribute_value(0, (v1_SourceCRS));set_attribute_value(1, (v2_TargetCRS));set_attribute_value(2, (v3_Eastings));set_attribute_value(3, (v4_Northings));set_attribute_value(4, (v5_OrthogonalHeight)); if (v6_XAxisAbscissa) {set_attribute_value(5, (*v6_XAxisAbscissa)); } if (v7_XAxisOrdinate) {set_attribute_value(6, (*v7_XAxisOrdinate)); } if (v8_Scale) {set_attribute_value(7, (*v8_Scale)); } if (v9_ScaleY) {set_attribute_value(8, (*v9_ScaleY)); } if (v10_ScaleZ) {set_attribute_value(9, (*v10_ScaleZ)); }; return *this; } // Function implementations for IfcMappedItem -::Ifc4x3_tc1::IfcRepresentationMap Ifc4x3_tc1::IfcMappedItem::MappingSource() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcRepresentationMap>(); } +::Ifc4x3_tc1::IfcRepresentationMap Ifc4x3_tc1::IfcMappedItem::MappingSource() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcRepresentationMap>(); } void Ifc4x3_tc1::IfcMappedItem::setMappingSource(const ::Ifc4x3_tc1::IfcRepresentationMap& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } -::Ifc4x3_tc1::IfcCartesianTransformationOperator Ifc4x3_tc1::IfcMappedItem::MappingTarget() const { return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3_tc1::IfcCartesianTransformationOperator>(); } +::Ifc4x3_tc1::IfcCartesianTransformationOperator Ifc4x3_tc1::IfcMappedItem::MappingTarget() const { return ((express::base)(get_attribute_value(1))).as<::Ifc4x3_tc1::IfcCartesianTransformationOperator>(); } void Ifc4x3_tc1::IfcMappedItem::setMappingTarget(const ::Ifc4x3_tc1::IfcCartesianTransformationOperator& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } @@ -11754,21 +11754,21 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcMaterial::Class() { return *((ifcopen Ifc4x3_tc1::IfcMaterial Ifc4x3_tc1::IfcMaterial::initialize(std::string v1_Name, std::optional< std::string > v2_Description, std::optional< std::string > v3_Category) { set_attribute_value(0, (v1_Name)); if (v2_Description) {set_attribute_value(1, (*v2_Description)); } if (v3_Category) {set_attribute_value(2, (*v3_Category)); }; return *this; } // Function implementations for IfcMaterialClassificationRelationship -std::vector< ::Ifc4x3_tc1::IfcClassificationSelect > Ifc4x3_tc1::IfcMaterialClassificationRelationship::MaterialClassifications() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3_tc1::IfcClassificationSelect>(es); } -void Ifc4x3_tc1::IfcMaterialClassificationRelationship::setMaterialClassifications(const std::vector< ::Ifc4x3_tc1::IfcClassificationSelect >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } -::Ifc4x3_tc1::IfcMaterial Ifc4x3_tc1::IfcMaterialClassificationRelationship::ClassifiedMaterial() const { return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3_tc1::IfcMaterial>(); } +std::vector< ::Ifc4x3_tc1::IfcClassificationSelect > Ifc4x3_tc1::IfcMaterialClassificationRelationship::MaterialClassifications() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3_tc1::IfcClassificationSelect>(es); } +void Ifc4x3_tc1::IfcMaterialClassificationRelationship::setMaterialClassifications(const std::vector< ::Ifc4x3_tc1::IfcClassificationSelect >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } +::Ifc4x3_tc1::IfcMaterial Ifc4x3_tc1::IfcMaterialClassificationRelationship::ClassifiedMaterial() const { return ((express::base)(get_attribute_value(1))).as<::Ifc4x3_tc1::IfcMaterial>(); } void Ifc4x3_tc1::IfcMaterialClassificationRelationship::setClassifiedMaterial(const ::Ifc4x3_tc1::IfcMaterial& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } const ifcopenshell::entity& Ifc4x3_tc1::IfcMaterialClassificationRelationship::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[636]); } -Ifc4x3_tc1::IfcMaterialClassificationRelationship Ifc4x3_tc1::IfcMaterialClassificationRelationship::initialize(std::vector< ::Ifc4x3_tc1::IfcClassificationSelect > v1_MaterialClassifications, ::Ifc4x3_tc1::IfcMaterial v2_ClassifiedMaterial) { set_attribute_value(0, cast_vector(v1_MaterialClassifications));set_attribute_value(1, (v2_ClassifiedMaterial));; return *this; } +Ifc4x3_tc1::IfcMaterialClassificationRelationship Ifc4x3_tc1::IfcMaterialClassificationRelationship::initialize(std::vector< ::Ifc4x3_tc1::IfcClassificationSelect > v1_MaterialClassifications, ::Ifc4x3_tc1::IfcMaterial v2_ClassifiedMaterial) { set_attribute_value(0, cast_vector(v1_MaterialClassifications));set_attribute_value(1, (v2_ClassifiedMaterial));; return *this; } // Function implementations for IfcMaterialConstituent std::optional< std::string > Ifc4x3_tc1::IfcMaterialConstituent::Name() const { if(get_attribute_value(0).isNull()) { return std::nullopt; } std::string v = get_attribute_value(0); return v; } void Ifc4x3_tc1::IfcMaterialConstituent::setName(const std::optional< std::string >& v) { if (v) {set_attribute_value(0, *v);} else {unset_attribute_value(0);} } std::optional< std::string > Ifc4x3_tc1::IfcMaterialConstituent::Description() const { if(get_attribute_value(1).isNull()) { return std::nullopt; } std::string v = get_attribute_value(1); return v; } void Ifc4x3_tc1::IfcMaterialConstituent::setDescription(const std::optional< std::string >& v) { if (v) {set_attribute_value(1, *v);} else {unset_attribute_value(1);} } -::Ifc4x3_tc1::IfcMaterial Ifc4x3_tc1::IfcMaterialConstituent::Material() const { return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3_tc1::IfcMaterial>(); } +::Ifc4x3_tc1::IfcMaterial Ifc4x3_tc1::IfcMaterialConstituent::Material() const { return ((express::base)(get_attribute_value(2))).as<::Ifc4x3_tc1::IfcMaterial>(); } void Ifc4x3_tc1::IfcMaterialConstituent::setMaterial(const ::Ifc4x3_tc1::IfcMaterial& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } std::optional< double > Ifc4x3_tc1::IfcMaterialConstituent::Fraction() const { if(get_attribute_value(3).isNull()) { return std::nullopt; } double v = get_attribute_value(3); return v; } void Ifc4x3_tc1::IfcMaterialConstituent::setFraction(const std::optional< double >& v) { if (v) {set_attribute_value(3, *v);} else {unset_attribute_value(3);} } @@ -11785,12 +11785,12 @@ std::optional< std::string > Ifc4x3_tc1::IfcMaterialConstituentSet::Name() const void Ifc4x3_tc1::IfcMaterialConstituentSet::setName(const std::optional< std::string >& v) { if (v) {set_attribute_value(0, *v);} else {unset_attribute_value(0);} } std::optional< std::string > Ifc4x3_tc1::IfcMaterialConstituentSet::Description() const { if(get_attribute_value(1).isNull()) { return std::nullopt; } std::string v = get_attribute_value(1); return v; } void Ifc4x3_tc1::IfcMaterialConstituentSet::setDescription(const std::optional< std::string >& v) { if (v) {set_attribute_value(1, *v);} else {unset_attribute_value(1);} } -std::optional< std::vector< ::Ifc4x3_tc1::IfcMaterialConstituent > > Ifc4x3_tc1::IfcMaterialConstituentSet::MaterialConstituents() const { if(get_attribute_value(2).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(2); return cast_vector<::Ifc4x3_tc1::IfcMaterialConstituent>(es); } -void Ifc4x3_tc1::IfcMaterialConstituentSet::setMaterialConstituents(const std::optional< std::vector< ::Ifc4x3_tc1::IfcMaterialConstituent > >& v) { if (v) {set_attribute_value(2, cast_vector(*v));} else {unset_attribute_value(2);} } +std::optional< std::vector< ::Ifc4x3_tc1::IfcMaterialConstituent > > Ifc4x3_tc1::IfcMaterialConstituentSet::MaterialConstituents() const { if(get_attribute_value(2).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(2); return cast_vector<::Ifc4x3_tc1::IfcMaterialConstituent>(es); } +void Ifc4x3_tc1::IfcMaterialConstituentSet::setMaterialConstituents(const std::optional< std::vector< ::Ifc4x3_tc1::IfcMaterialConstituent > >& v) { if (v) {set_attribute_value(2, cast_vector(*v));} else {unset_attribute_value(2);} } const ifcopenshell::entity& Ifc4x3_tc1::IfcMaterialConstituentSet::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[638]); } -Ifc4x3_tc1::IfcMaterialConstituentSet Ifc4x3_tc1::IfcMaterialConstituentSet::initialize(std::optional< std::string > v1_Name, std::optional< std::string > v2_Description, std::optional< std::vector< ::Ifc4x3_tc1::IfcMaterialConstituent > > v3_MaterialConstituents) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); } if (v2_Description) {set_attribute_value(1, (*v2_Description)); } if (v3_MaterialConstituents) {set_attribute_value(2, cast_vector(*v3_MaterialConstituents)); }; return *this; } +Ifc4x3_tc1::IfcMaterialConstituentSet Ifc4x3_tc1::IfcMaterialConstituentSet::initialize(std::optional< std::string > v1_Name, std::optional< std::string > v2_Description, std::optional< std::vector< ::Ifc4x3_tc1::IfcMaterialConstituent > > v3_MaterialConstituents) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); } if (v2_Description) {set_attribute_value(1, (*v2_Description)); } if (v3_MaterialConstituents) {set_attribute_value(2, cast_vector(*v3_MaterialConstituents)); }; return *this; } // Function implementations for IfcMaterialDefinition @@ -11802,15 +11802,15 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcMaterialDefinition::Class() { return Ifc4x3_tc1::IfcMaterialDefinition Ifc4x3_tc1::IfcMaterialDefinition::initialize() { ; return *this; } // Function implementations for IfcMaterialDefinitionRepresentation -::Ifc4x3_tc1::IfcMaterial Ifc4x3_tc1::IfcMaterialDefinitionRepresentation::RepresentedMaterial() const { return ((express::Base)(get_attribute_value(3))).as<::Ifc4x3_tc1::IfcMaterial>(); } +::Ifc4x3_tc1::IfcMaterial Ifc4x3_tc1::IfcMaterialDefinitionRepresentation::RepresentedMaterial() const { return ((express::base)(get_attribute_value(3))).as<::Ifc4x3_tc1::IfcMaterial>(); } void Ifc4x3_tc1::IfcMaterialDefinitionRepresentation::setRepresentedMaterial(const ::Ifc4x3_tc1::IfcMaterial& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } const ifcopenshell::entity& Ifc4x3_tc1::IfcMaterialDefinitionRepresentation::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[640]); } -Ifc4x3_tc1::IfcMaterialDefinitionRepresentation Ifc4x3_tc1::IfcMaterialDefinitionRepresentation::initialize(std::optional< std::string > v1_Name, std::optional< std::string > v2_Description, std::vector< ::Ifc4x3_tc1::IfcRepresentation > v3_Representations, ::Ifc4x3_tc1::IfcMaterial v4_RepresentedMaterial) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); } if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, cast_vector(v3_Representations));set_attribute_value(3, (v4_RepresentedMaterial));; return *this; } +Ifc4x3_tc1::IfcMaterialDefinitionRepresentation Ifc4x3_tc1::IfcMaterialDefinitionRepresentation::initialize(std::optional< std::string > v1_Name, std::optional< std::string > v2_Description, std::vector< ::Ifc4x3_tc1::IfcRepresentation > v3_Representations, ::Ifc4x3_tc1::IfcMaterial v4_RepresentedMaterial) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); } if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, cast_vector(v3_Representations));set_attribute_value(3, (v4_RepresentedMaterial));; return *this; } // Function implementations for IfcMaterialLayer -::Ifc4x3_tc1::IfcMaterial Ifc4x3_tc1::IfcMaterialLayer::Material() const { if(get_attribute_value(0).isNull()) { return ::Ifc4x3_tc1::IfcMaterial{}; } return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcMaterial>(); } +::Ifc4x3_tc1::IfcMaterial Ifc4x3_tc1::IfcMaterialLayer::Material() const { if(get_attribute_value(0).isNull()) { return ::Ifc4x3_tc1::IfcMaterial{}; } return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcMaterial>(); } void Ifc4x3_tc1::IfcMaterialLayer::setMaterial(const ::Ifc4x3_tc1::IfcMaterial& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } double Ifc4x3_tc1::IfcMaterialLayer::LayerThickness() const { double v = get_attribute_value(1); return v; } void Ifc4x3_tc1::IfcMaterialLayer::setLayerThickness(const double& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } @@ -11831,8 +11831,8 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcMaterialLayer::Class() { return *((if Ifc4x3_tc1::IfcMaterialLayer Ifc4x3_tc1::IfcMaterialLayer::initialize(::Ifc4x3_tc1::IfcMaterial v1_Material, double v2_LayerThickness, std::optional< boost::logic::tribool > v3_IsVentilated, std::optional< std::string > v4_Name, std::optional< std::string > v5_Description, std::optional< std::string > v6_Category, std::optional< int64_t > v7_Priority) { set_attribute_value(0, (v1_Material));set_attribute_value(1, (v2_LayerThickness)); if (v3_IsVentilated) {set_attribute_value(2, (*v3_IsVentilated)); } if (v4_Name) {set_attribute_value(3, (*v4_Name)); } if (v5_Description) {set_attribute_value(4, (*v5_Description)); } if (v6_Category) {set_attribute_value(5, (*v6_Category)); } if (v7_Priority) {set_attribute_value(6, (*v7_Priority)); }; return *this; } // Function implementations for IfcMaterialLayerSet -std::vector< ::Ifc4x3_tc1::IfcMaterialLayer > Ifc4x3_tc1::IfcMaterialLayerSet::MaterialLayers() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3_tc1::IfcMaterialLayer>(es); } -void Ifc4x3_tc1::IfcMaterialLayerSet::setMaterialLayers(const std::vector< ::Ifc4x3_tc1::IfcMaterialLayer >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } +std::vector< ::Ifc4x3_tc1::IfcMaterialLayer > Ifc4x3_tc1::IfcMaterialLayerSet::MaterialLayers() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3_tc1::IfcMaterialLayer>(es); } +void Ifc4x3_tc1::IfcMaterialLayerSet::setMaterialLayers(const std::vector< ::Ifc4x3_tc1::IfcMaterialLayer >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } std::optional< std::string > Ifc4x3_tc1::IfcMaterialLayerSet::LayerSetName() const { if(get_attribute_value(1).isNull()) { return std::nullopt; } std::string v = get_attribute_value(1); return v; } void Ifc4x3_tc1::IfcMaterialLayerSet::setLayerSetName(const std::optional< std::string >& v) { if (v) {set_attribute_value(1, *v);} else {unset_attribute_value(1);} } std::optional< std::string > Ifc4x3_tc1::IfcMaterialLayerSet::Description() const { if(get_attribute_value(2).isNull()) { return std::nullopt; } std::string v = get_attribute_value(2); return v; } @@ -11840,10 +11840,10 @@ void Ifc4x3_tc1::IfcMaterialLayerSet::setDescription(const std::optional< std::s const ifcopenshell::entity& Ifc4x3_tc1::IfcMaterialLayerSet::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[642]); } -Ifc4x3_tc1::IfcMaterialLayerSet Ifc4x3_tc1::IfcMaterialLayerSet::initialize(std::vector< ::Ifc4x3_tc1::IfcMaterialLayer > v1_MaterialLayers, std::optional< std::string > v2_LayerSetName, std::optional< std::string > v3_Description) { set_attribute_value(0, cast_vector(v1_MaterialLayers)); if (v2_LayerSetName) {set_attribute_value(1, (*v2_LayerSetName)); } if (v3_Description) {set_attribute_value(2, (*v3_Description)); }; return *this; } +Ifc4x3_tc1::IfcMaterialLayerSet Ifc4x3_tc1::IfcMaterialLayerSet::initialize(std::vector< ::Ifc4x3_tc1::IfcMaterialLayer > v1_MaterialLayers, std::optional< std::string > v2_LayerSetName, std::optional< std::string > v3_Description) { set_attribute_value(0, cast_vector(v1_MaterialLayers)); if (v2_LayerSetName) {set_attribute_value(1, (*v2_LayerSetName)); } if (v3_Description) {set_attribute_value(2, (*v3_Description)); }; return *this; } // Function implementations for IfcMaterialLayerSetUsage -::Ifc4x3_tc1::IfcMaterialLayerSet Ifc4x3_tc1::IfcMaterialLayerSetUsage::ForLayerSet() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcMaterialLayerSet>(); } +::Ifc4x3_tc1::IfcMaterialLayerSet Ifc4x3_tc1::IfcMaterialLayerSetUsage::ForLayerSet() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcMaterialLayerSet>(); } void Ifc4x3_tc1::IfcMaterialLayerSetUsage::setForLayerSet(const ::Ifc4x3_tc1::IfcMaterialLayerSet& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } ::Ifc4x3_tc1::IfcLayerSetDirectionEnum::Value Ifc4x3_tc1::IfcMaterialLayerSetUsage::LayerSetDirection() const { return ::Ifc4x3_tc1::IfcLayerSetDirectionEnum::FromString(get_attribute_value(1)); } void Ifc4x3_tc1::IfcMaterialLayerSetUsage::setLayerSetDirection(const ::Ifc4x3_tc1::IfcLayerSetDirectionEnum::Value& v) { set_attribute_value(1, enumeration_reference(&::Ifc4x3_tc1::IfcLayerSetDirectionEnum::Class(), (size_t) v));if constexpr (false)unset_attribute_value(1); } @@ -11869,21 +11869,21 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcMaterialLayerWithOffsets::Class() { r Ifc4x3_tc1::IfcMaterialLayerWithOffsets Ifc4x3_tc1::IfcMaterialLayerWithOffsets::initialize(::Ifc4x3_tc1::IfcMaterial v1_Material, double v2_LayerThickness, std::optional< boost::logic::tribool > v3_IsVentilated, std::optional< std::string > v4_Name, std::optional< std::string > v5_Description, std::optional< std::string > v6_Category, std::optional< int64_t > v7_Priority, ::Ifc4x3_tc1::IfcLayerSetDirectionEnum::Value v8_OffsetDirection, std::vector< double > /*[1:2]*/ v9_OffsetValues) { set_attribute_value(0, (v1_Material));set_attribute_value(1, (v2_LayerThickness)); if (v3_IsVentilated) {set_attribute_value(2, (*v3_IsVentilated)); } if (v4_Name) {set_attribute_value(3, (*v4_Name)); } if (v5_Description) {set_attribute_value(4, (*v5_Description)); } if (v6_Category) {set_attribute_value(5, (*v6_Category)); } if (v7_Priority) {set_attribute_value(6, (*v7_Priority)); }set_attribute_value(7, (enumeration_reference(&::Ifc4x3_tc1::IfcLayerSetDirectionEnum::Class(),(size_t)v8_OffsetDirection)));set_attribute_value(8, (v9_OffsetValues));; return *this; } // Function implementations for IfcMaterialList -std::vector< ::Ifc4x3_tc1::IfcMaterial > Ifc4x3_tc1::IfcMaterialList::Materials() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3_tc1::IfcMaterial>(es); } -void Ifc4x3_tc1::IfcMaterialList::setMaterials(const std::vector< ::Ifc4x3_tc1::IfcMaterial >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } +std::vector< ::Ifc4x3_tc1::IfcMaterial > Ifc4x3_tc1::IfcMaterialList::Materials() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3_tc1::IfcMaterial>(es); } +void Ifc4x3_tc1::IfcMaterialList::setMaterials(const std::vector< ::Ifc4x3_tc1::IfcMaterial >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } const ifcopenshell::entity& Ifc4x3_tc1::IfcMaterialList::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[645]); } -Ifc4x3_tc1::IfcMaterialList Ifc4x3_tc1::IfcMaterialList::initialize(std::vector< ::Ifc4x3_tc1::IfcMaterial > v1_Materials) { set_attribute_value(0, cast_vector(v1_Materials));; return *this; } +Ifc4x3_tc1::IfcMaterialList Ifc4x3_tc1::IfcMaterialList::initialize(std::vector< ::Ifc4x3_tc1::IfcMaterial > v1_Materials) { set_attribute_value(0, cast_vector(v1_Materials));; return *this; } // Function implementations for IfcMaterialProfile std::optional< std::string > Ifc4x3_tc1::IfcMaterialProfile::Name() const { if(get_attribute_value(0).isNull()) { return std::nullopt; } std::string v = get_attribute_value(0); return v; } void Ifc4x3_tc1::IfcMaterialProfile::setName(const std::optional< std::string >& v) { if (v) {set_attribute_value(0, *v);} else {unset_attribute_value(0);} } std::optional< std::string > Ifc4x3_tc1::IfcMaterialProfile::Description() const { if(get_attribute_value(1).isNull()) { return std::nullopt; } std::string v = get_attribute_value(1); return v; } void Ifc4x3_tc1::IfcMaterialProfile::setDescription(const std::optional< std::string >& v) { if (v) {set_attribute_value(1, *v);} else {unset_attribute_value(1);} } -::Ifc4x3_tc1::IfcMaterial Ifc4x3_tc1::IfcMaterialProfile::Material() const { if(get_attribute_value(2).isNull()) { return ::Ifc4x3_tc1::IfcMaterial{}; } return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3_tc1::IfcMaterial>(); } +::Ifc4x3_tc1::IfcMaterial Ifc4x3_tc1::IfcMaterialProfile::Material() const { if(get_attribute_value(2).isNull()) { return ::Ifc4x3_tc1::IfcMaterial{}; } return ((express::base)(get_attribute_value(2))).as<::Ifc4x3_tc1::IfcMaterial>(); } void Ifc4x3_tc1::IfcMaterialProfile::setMaterial(const ::Ifc4x3_tc1::IfcMaterial& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } -::Ifc4x3_tc1::IfcProfileDef Ifc4x3_tc1::IfcMaterialProfile::Profile() const { return ((express::Base)(get_attribute_value(3))).as<::Ifc4x3_tc1::IfcProfileDef>(); } +::Ifc4x3_tc1::IfcProfileDef Ifc4x3_tc1::IfcMaterialProfile::Profile() const { return ((express::base)(get_attribute_value(3))).as<::Ifc4x3_tc1::IfcProfileDef>(); } void Ifc4x3_tc1::IfcMaterialProfile::setProfile(const ::Ifc4x3_tc1::IfcProfileDef& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } std::optional< int64_t > Ifc4x3_tc1::IfcMaterialProfile::Priority() const { if(get_attribute_value(4).isNull()) { return std::nullopt; } int64_t v = get_attribute_value(4); return v; } void Ifc4x3_tc1::IfcMaterialProfile::setPriority(const std::optional< int64_t >& v) { if (v) {set_attribute_value(4, *v);} else {unset_attribute_value(4);} } @@ -11900,17 +11900,17 @@ std::optional< std::string > Ifc4x3_tc1::IfcMaterialProfileSet::Name() const { i void Ifc4x3_tc1::IfcMaterialProfileSet::setName(const std::optional< std::string >& v) { if (v) {set_attribute_value(0, *v);} else {unset_attribute_value(0);} } std::optional< std::string > Ifc4x3_tc1::IfcMaterialProfileSet::Description() const { if(get_attribute_value(1).isNull()) { return std::nullopt; } std::string v = get_attribute_value(1); return v; } void Ifc4x3_tc1::IfcMaterialProfileSet::setDescription(const std::optional< std::string >& v) { if (v) {set_attribute_value(1, *v);} else {unset_attribute_value(1);} } -std::vector< ::Ifc4x3_tc1::IfcMaterialProfile > Ifc4x3_tc1::IfcMaterialProfileSet::MaterialProfiles() const { std::vector es = get_attribute_value(2); return cast_vector<::Ifc4x3_tc1::IfcMaterialProfile>(es); } -void Ifc4x3_tc1::IfcMaterialProfileSet::setMaterialProfiles(const std::vector< ::Ifc4x3_tc1::IfcMaterialProfile >& v) { set_attribute_value(2, cast_vector(v));if constexpr (false)unset_attribute_value(2); } -::Ifc4x3_tc1::IfcCompositeProfileDef Ifc4x3_tc1::IfcMaterialProfileSet::CompositeProfile() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3_tc1::IfcCompositeProfileDef{}; } return ((express::Base)(get_attribute_value(3))).as<::Ifc4x3_tc1::IfcCompositeProfileDef>(); } +std::vector< ::Ifc4x3_tc1::IfcMaterialProfile > Ifc4x3_tc1::IfcMaterialProfileSet::MaterialProfiles() const { std::vector es = get_attribute_value(2); return cast_vector<::Ifc4x3_tc1::IfcMaterialProfile>(es); } +void Ifc4x3_tc1::IfcMaterialProfileSet::setMaterialProfiles(const std::vector< ::Ifc4x3_tc1::IfcMaterialProfile >& v) { set_attribute_value(2, cast_vector(v));if constexpr (false)unset_attribute_value(2); } +::Ifc4x3_tc1::IfcCompositeProfileDef Ifc4x3_tc1::IfcMaterialProfileSet::CompositeProfile() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3_tc1::IfcCompositeProfileDef{}; } return ((express::base)(get_attribute_value(3))).as<::Ifc4x3_tc1::IfcCompositeProfileDef>(); } void Ifc4x3_tc1::IfcMaterialProfileSet::setCompositeProfile(const ::Ifc4x3_tc1::IfcCompositeProfileDef& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } const ifcopenshell::entity& Ifc4x3_tc1::IfcMaterialProfileSet::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[647]); } -Ifc4x3_tc1::IfcMaterialProfileSet Ifc4x3_tc1::IfcMaterialProfileSet::initialize(std::optional< std::string > v1_Name, std::optional< std::string > v2_Description, std::vector< ::Ifc4x3_tc1::IfcMaterialProfile > v3_MaterialProfiles, ::Ifc4x3_tc1::IfcCompositeProfileDef v4_CompositeProfile) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); } if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, cast_vector(v3_MaterialProfiles));set_attribute_value(3, (v4_CompositeProfile));; return *this; } +Ifc4x3_tc1::IfcMaterialProfileSet Ifc4x3_tc1::IfcMaterialProfileSet::initialize(std::optional< std::string > v1_Name, std::optional< std::string > v2_Description, std::vector< ::Ifc4x3_tc1::IfcMaterialProfile > v3_MaterialProfiles, ::Ifc4x3_tc1::IfcCompositeProfileDef v4_CompositeProfile) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); } if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, cast_vector(v3_MaterialProfiles));set_attribute_value(3, (v4_CompositeProfile));; return *this; } // Function implementations for IfcMaterialProfileSetUsage -::Ifc4x3_tc1::IfcMaterialProfileSet Ifc4x3_tc1::IfcMaterialProfileSetUsage::ForProfileSet() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcMaterialProfileSet>(); } +::Ifc4x3_tc1::IfcMaterialProfileSet Ifc4x3_tc1::IfcMaterialProfileSetUsage::ForProfileSet() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcMaterialProfileSet>(); } void Ifc4x3_tc1::IfcMaterialProfileSetUsage::setForProfileSet(const ::Ifc4x3_tc1::IfcMaterialProfileSet& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } std::optional< int64_t > Ifc4x3_tc1::IfcMaterialProfileSetUsage::CardinalPoint() const { if(get_attribute_value(1).isNull()) { return std::nullopt; } int64_t v = get_attribute_value(1); return v; } void Ifc4x3_tc1::IfcMaterialProfileSetUsage::setCardinalPoint(const std::optional< int64_t >& v) { if (v) {set_attribute_value(1, *v);} else {unset_attribute_value(1);} } @@ -11922,7 +11922,7 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcMaterialProfileSetUsage::Class() { re Ifc4x3_tc1::IfcMaterialProfileSetUsage Ifc4x3_tc1::IfcMaterialProfileSetUsage::initialize(::Ifc4x3_tc1::IfcMaterialProfileSet v1_ForProfileSet, std::optional< int64_t > v2_CardinalPoint, std::optional< double > v3_ReferenceExtent) { set_attribute_value(0, (v1_ForProfileSet)); if (v2_CardinalPoint) {set_attribute_value(1, (*v2_CardinalPoint)); } if (v3_ReferenceExtent) {set_attribute_value(2, (*v3_ReferenceExtent)); }; return *this; } // Function implementations for IfcMaterialProfileSetUsageTapering -::Ifc4x3_tc1::IfcMaterialProfileSet Ifc4x3_tc1::IfcMaterialProfileSetUsageTapering::ForProfileEndSet() const { return ((express::Base)(get_attribute_value(3))).as<::Ifc4x3_tc1::IfcMaterialProfileSet>(); } +::Ifc4x3_tc1::IfcMaterialProfileSet Ifc4x3_tc1::IfcMaterialProfileSetUsageTapering::ForProfileEndSet() const { return ((express::base)(get_attribute_value(3))).as<::Ifc4x3_tc1::IfcMaterialProfileSet>(); } void Ifc4x3_tc1::IfcMaterialProfileSetUsageTapering::setForProfileEndSet(const ::Ifc4x3_tc1::IfcMaterialProfileSet& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } std::optional< int64_t > Ifc4x3_tc1::IfcMaterialProfileSetUsageTapering::CardinalEndPoint() const { if(get_attribute_value(4).isNull()) { return std::nullopt; } int64_t v = get_attribute_value(4); return v; } void Ifc4x3_tc1::IfcMaterialProfileSetUsageTapering::setCardinalEndPoint(const std::optional< int64_t >& v) { if (v) {set_attribute_value(4, *v);} else {unset_attribute_value(4);} } @@ -11940,24 +11940,24 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcMaterialProfileWithOffsets::Class() { Ifc4x3_tc1::IfcMaterialProfileWithOffsets Ifc4x3_tc1::IfcMaterialProfileWithOffsets::initialize(std::optional< std::string > v1_Name, std::optional< std::string > v2_Description, ::Ifc4x3_tc1::IfcMaterial v3_Material, ::Ifc4x3_tc1::IfcProfileDef v4_Profile, std::optional< int64_t > v5_Priority, std::optional< std::string > v6_Category, std::vector< double > /*[1:2]*/ v7_OffsetValues) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); } if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, (v3_Material));set_attribute_value(3, (v4_Profile)); if (v5_Priority) {set_attribute_value(4, (*v5_Priority)); } if (v6_Category) {set_attribute_value(5, (*v6_Category)); }set_attribute_value(6, (v7_OffsetValues));; return *this; } // Function implementations for IfcMaterialProperties -::Ifc4x3_tc1::IfcMaterialDefinition Ifc4x3_tc1::IfcMaterialProperties::Material() const { return ((express::Base)(get_attribute_value(3))).as<::Ifc4x3_tc1::IfcMaterialDefinition>(); } +::Ifc4x3_tc1::IfcMaterialDefinition Ifc4x3_tc1::IfcMaterialProperties::Material() const { return ((express::base)(get_attribute_value(3))).as<::Ifc4x3_tc1::IfcMaterialDefinition>(); } void Ifc4x3_tc1::IfcMaterialProperties::setMaterial(const ::Ifc4x3_tc1::IfcMaterialDefinition& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } const ifcopenshell::entity& Ifc4x3_tc1::IfcMaterialProperties::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[651]); } -Ifc4x3_tc1::IfcMaterialProperties Ifc4x3_tc1::IfcMaterialProperties::initialize(std::optional< std::string > v1_Name, std::optional< std::string > v2_Description, std::vector< ::Ifc4x3_tc1::IfcProperty > v3_Properties, ::Ifc4x3_tc1::IfcMaterialDefinition v4_Material) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); } if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, cast_vector(v3_Properties));set_attribute_value(3, (v4_Material));; return *this; } +Ifc4x3_tc1::IfcMaterialProperties Ifc4x3_tc1::IfcMaterialProperties::initialize(std::optional< std::string > v1_Name, std::optional< std::string > v2_Description, std::vector< ::Ifc4x3_tc1::IfcProperty > v3_Properties, ::Ifc4x3_tc1::IfcMaterialDefinition v4_Material) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); } if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, cast_vector(v3_Properties));set_attribute_value(3, (v4_Material));; return *this; } // Function implementations for IfcMaterialRelationship -::Ifc4x3_tc1::IfcMaterial Ifc4x3_tc1::IfcMaterialRelationship::RelatingMaterial() const { return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3_tc1::IfcMaterial>(); } +::Ifc4x3_tc1::IfcMaterial Ifc4x3_tc1::IfcMaterialRelationship::RelatingMaterial() const { return ((express::base)(get_attribute_value(2))).as<::Ifc4x3_tc1::IfcMaterial>(); } void Ifc4x3_tc1::IfcMaterialRelationship::setRelatingMaterial(const ::Ifc4x3_tc1::IfcMaterial& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } -std::vector< ::Ifc4x3_tc1::IfcMaterial > Ifc4x3_tc1::IfcMaterialRelationship::RelatedMaterials() const { std::vector es = get_attribute_value(3); return cast_vector<::Ifc4x3_tc1::IfcMaterial>(es); } -void Ifc4x3_tc1::IfcMaterialRelationship::setRelatedMaterials(const std::vector< ::Ifc4x3_tc1::IfcMaterial >& v) { set_attribute_value(3, cast_vector(v));if constexpr (false)unset_attribute_value(3); } +std::vector< ::Ifc4x3_tc1::IfcMaterial > Ifc4x3_tc1::IfcMaterialRelationship::RelatedMaterials() const { std::vector es = get_attribute_value(3); return cast_vector<::Ifc4x3_tc1::IfcMaterial>(es); } +void Ifc4x3_tc1::IfcMaterialRelationship::setRelatedMaterials(const std::vector< ::Ifc4x3_tc1::IfcMaterial >& v) { set_attribute_value(3, cast_vector(v));if constexpr (false)unset_attribute_value(3); } std::optional< std::string > Ifc4x3_tc1::IfcMaterialRelationship::MaterialExpression() const { if(get_attribute_value(4).isNull()) { return std::nullopt; } std::string v = get_attribute_value(4); return v; } void Ifc4x3_tc1::IfcMaterialRelationship::setMaterialExpression(const std::optional< std::string >& v) { if (v) {set_attribute_value(4, *v);} else {unset_attribute_value(4);} } const ifcopenshell::entity& Ifc4x3_tc1::IfcMaterialRelationship::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[652]); } -Ifc4x3_tc1::IfcMaterialRelationship Ifc4x3_tc1::IfcMaterialRelationship::initialize(std::optional< std::string > v1_Name, std::optional< std::string > v2_Description, ::Ifc4x3_tc1::IfcMaterial v3_RelatingMaterial, std::vector< ::Ifc4x3_tc1::IfcMaterial > v4_RelatedMaterials, std::optional< std::string > v5_MaterialExpression) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); } if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, (v3_RelatingMaterial));set_attribute_value(3, cast_vector(v4_RelatedMaterials)); if (v5_MaterialExpression) {set_attribute_value(4, (*v5_MaterialExpression)); }; return *this; } +Ifc4x3_tc1::IfcMaterialRelationship Ifc4x3_tc1::IfcMaterialRelationship::initialize(std::optional< std::string > v1_Name, std::optional< std::string > v2_Description, ::Ifc4x3_tc1::IfcMaterial v3_RelatingMaterial, std::vector< ::Ifc4x3_tc1::IfcMaterial > v4_RelatedMaterials, std::optional< std::string > v5_MaterialExpression) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); } if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, (v3_RelatingMaterial));set_attribute_value(3, cast_vector(v4_RelatedMaterials)); if (v5_MaterialExpression) {set_attribute_value(4, (*v5_MaterialExpression)); }; return *this; } // Function implementations for IfcMaterialUsageDefinition @@ -11967,9 +11967,9 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcMaterialUsageDefinition::Class() { re Ifc4x3_tc1::IfcMaterialUsageDefinition Ifc4x3_tc1::IfcMaterialUsageDefinition::initialize() { ; return *this; } // Function implementations for IfcMeasureWithUnit -::Ifc4x3_tc1::IfcValue Ifc4x3_tc1::IfcMeasureWithUnit::ValueComponent() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcValue>(); } +::Ifc4x3_tc1::IfcValue Ifc4x3_tc1::IfcMeasureWithUnit::ValueComponent() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcValue>(); } void Ifc4x3_tc1::IfcMeasureWithUnit::setValueComponent(const ::Ifc4x3_tc1::IfcValue& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } -::Ifc4x3_tc1::IfcUnit Ifc4x3_tc1::IfcMeasureWithUnit::UnitComponent() const { return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3_tc1::IfcUnit>(); } +::Ifc4x3_tc1::IfcUnit Ifc4x3_tc1::IfcMeasureWithUnit::UnitComponent() const { return ((express::base)(get_attribute_value(1))).as<::Ifc4x3_tc1::IfcUnit>(); } void Ifc4x3_tc1::IfcMeasureWithUnit::setUnitComponent(const ::Ifc4x3_tc1::IfcUnit& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } @@ -11998,7 +11998,7 @@ void Ifc4x3_tc1::IfcMechanicalFastenerType::setNominalLength(const std::optional const ifcopenshell::entity& Ifc4x3_tc1::IfcMechanicalFastenerType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[658]); } -Ifc4x3_tc1::IfcMechanicalFastenerType Ifc4x3_tc1::IfcMechanicalFastenerType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcMechanicalFastenerTypeEnum::Value v10_PredefinedType, std::optional< double > v11_NominalDiameter, std::optional< double > v12_NominalLength) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcMechanicalFastenerTypeEnum::Class(),(size_t)v10_PredefinedType))); if (v11_NominalDiameter) {set_attribute_value(10, (*v11_NominalDiameter)); } if (v12_NominalLength) {set_attribute_value(11, (*v12_NominalLength)); }; return *this; } +Ifc4x3_tc1::IfcMechanicalFastenerType Ifc4x3_tc1::IfcMechanicalFastenerType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcMechanicalFastenerTypeEnum::Value v10_PredefinedType, std::optional< double > v11_NominalDiameter, std::optional< double > v12_NominalLength) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcMechanicalFastenerTypeEnum::Class(),(size_t)v10_PredefinedType))); if (v11_NominalDiameter) {set_attribute_value(10, (*v11_NominalDiameter)); } if (v12_NominalLength) {set_attribute_value(11, (*v12_NominalLength)); }; return *this; } // Function implementations for IfcMedicalDevice std::optional< ::Ifc4x3_tc1::IfcMedicalDeviceTypeEnum::Value > Ifc4x3_tc1::IfcMedicalDevice::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_tc1::IfcMedicalDeviceTypeEnum::FromString(get_attribute_value(8)); } @@ -12014,7 +12014,7 @@ void Ifc4x3_tc1::IfcMedicalDeviceType::setPredefinedType(const ::Ifc4x3_tc1::Ifc const ifcopenshell::entity& Ifc4x3_tc1::IfcMedicalDeviceType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[661]); } -Ifc4x3_tc1::IfcMedicalDeviceType Ifc4x3_tc1::IfcMedicalDeviceType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcMedicalDeviceTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcMedicalDeviceTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_tc1::IfcMedicalDeviceType Ifc4x3_tc1::IfcMedicalDeviceType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcMedicalDeviceTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcMedicalDeviceTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcMember std::optional< ::Ifc4x3_tc1::IfcMemberTypeEnum::Value > Ifc4x3_tc1::IfcMember::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_tc1::IfcMemberTypeEnum::FromString(get_attribute_value(8)); } @@ -12030,16 +12030,16 @@ void Ifc4x3_tc1::IfcMemberType::setPredefinedType(const ::Ifc4x3_tc1::IfcMemberT const ifcopenshell::entity& Ifc4x3_tc1::IfcMemberType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[664]); } -Ifc4x3_tc1::IfcMemberType Ifc4x3_tc1::IfcMemberType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcMemberTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcMemberTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_tc1::IfcMemberType Ifc4x3_tc1::IfcMemberType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcMemberTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcMemberTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcMetric ::Ifc4x3_tc1::IfcBenchmarkEnum::Value Ifc4x3_tc1::IfcMetric::Benchmark() const { return ::Ifc4x3_tc1::IfcBenchmarkEnum::FromString(get_attribute_value(7)); } void Ifc4x3_tc1::IfcMetric::setBenchmark(const ::Ifc4x3_tc1::IfcBenchmarkEnum::Value& v) { set_attribute_value(7, enumeration_reference(&::Ifc4x3_tc1::IfcBenchmarkEnum::Class(), (size_t) v));if constexpr (false)unset_attribute_value(7); } std::optional< std::string > Ifc4x3_tc1::IfcMetric::ValueSource() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } std::string v = get_attribute_value(8); return v; } void Ifc4x3_tc1::IfcMetric::setValueSource(const std::optional< std::string >& v) { if (v) {set_attribute_value(8, *v);} else {unset_attribute_value(8);} } -::Ifc4x3_tc1::IfcMetricValueSelect Ifc4x3_tc1::IfcMetric::DataValue() const { if(get_attribute_value(9).isNull()) { return ::Ifc4x3_tc1::IfcMetricValueSelect{}; } return ((express::Base)(get_attribute_value(9))).as<::Ifc4x3_tc1::IfcMetricValueSelect>(); } +::Ifc4x3_tc1::IfcMetricValueSelect Ifc4x3_tc1::IfcMetric::DataValue() const { if(get_attribute_value(9).isNull()) { return ::Ifc4x3_tc1::IfcMetricValueSelect{}; } return ((express::base)(get_attribute_value(9))).as<::Ifc4x3_tc1::IfcMetricValueSelect>(); } void Ifc4x3_tc1::IfcMetric::setDataValue(const ::Ifc4x3_tc1::IfcMetricValueSelect& v) { set_attribute_value(9, v);if constexpr (false)unset_attribute_value(9); } -::Ifc4x3_tc1::IfcReference Ifc4x3_tc1::IfcMetric::ReferencePath() const { if(get_attribute_value(10).isNull()) { return ::Ifc4x3_tc1::IfcReference{}; } return ((express::Base)(get_attribute_value(10))).as<::Ifc4x3_tc1::IfcReference>(); } +::Ifc4x3_tc1::IfcReference Ifc4x3_tc1::IfcMetric::ReferencePath() const { if(get_attribute_value(10).isNull()) { return ::Ifc4x3_tc1::IfcReference{}; } return ((express::base)(get_attribute_value(10))).as<::Ifc4x3_tc1::IfcReference>(); } void Ifc4x3_tc1::IfcMetric::setReferencePath(const ::Ifc4x3_tc1::IfcReference& v) { set_attribute_value(10, v);if constexpr (false)unset_attribute_value(10); } @@ -12066,7 +12066,7 @@ void Ifc4x3_tc1::IfcMobileTelecommunicationsApplianceType::setPredefinedType(con const ifcopenshell::entity& Ifc4x3_tc1::IfcMobileTelecommunicationsApplianceType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[670]); } -Ifc4x3_tc1::IfcMobileTelecommunicationsApplianceType Ifc4x3_tc1::IfcMobileTelecommunicationsApplianceType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcMobileTelecommunicationsApplianceTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcMobileTelecommunicationsApplianceTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_tc1::IfcMobileTelecommunicationsApplianceType Ifc4x3_tc1::IfcMobileTelecommunicationsApplianceType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcMobileTelecommunicationsApplianceTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcMobileTelecommunicationsApplianceTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcMonetaryUnit std::string Ifc4x3_tc1::IfcMonetaryUnit::Currency() const { std::string v = get_attribute_value(0); return v; } @@ -12090,7 +12090,7 @@ void Ifc4x3_tc1::IfcMooringDeviceType::setPredefinedType(const ::Ifc4x3_tc1::Ifc const ifcopenshell::entity& Ifc4x3_tc1::IfcMooringDeviceType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[686]); } -Ifc4x3_tc1::IfcMooringDeviceType Ifc4x3_tc1::IfcMooringDeviceType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcMooringDeviceTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcMooringDeviceTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_tc1::IfcMooringDeviceType Ifc4x3_tc1::IfcMooringDeviceType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcMooringDeviceTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcMooringDeviceTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcMotorConnection std::optional< ::Ifc4x3_tc1::IfcMotorConnectionTypeEnum::Value > Ifc4x3_tc1::IfcMotorConnection::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_tc1::IfcMotorConnectionTypeEnum::FromString(get_attribute_value(8)); } @@ -12106,10 +12106,10 @@ void Ifc4x3_tc1::IfcMotorConnectionType::setPredefinedType(const ::Ifc4x3_tc1::I const ifcopenshell::entity& Ifc4x3_tc1::IfcMotorConnectionType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[689]); } -Ifc4x3_tc1::IfcMotorConnectionType Ifc4x3_tc1::IfcMotorConnectionType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcMotorConnectionTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcMotorConnectionTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_tc1::IfcMotorConnectionType Ifc4x3_tc1::IfcMotorConnectionType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcMotorConnectionTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcMotorConnectionTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcNamedUnit -::Ifc4x3_tc1::IfcDimensionalExponents Ifc4x3_tc1::IfcNamedUnit::Dimensions() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcDimensionalExponents>(); } +::Ifc4x3_tc1::IfcDimensionalExponents Ifc4x3_tc1::IfcNamedUnit::Dimensions() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcDimensionalExponents>(); } void Ifc4x3_tc1::IfcNamedUnit::setDimensions(const ::Ifc4x3_tc1::IfcDimensionalExponents& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } ::Ifc4x3_tc1::IfcUnitEnum::Value Ifc4x3_tc1::IfcNamedUnit::UnitType() const { return ::Ifc4x3_tc1::IfcUnitEnum::FromString(get_attribute_value(1)); } void Ifc4x3_tc1::IfcNamedUnit::setUnitType(const ::Ifc4x3_tc1::IfcUnitEnum::Value& v) { set_attribute_value(1, enumeration_reference(&::Ifc4x3_tc1::IfcUnitEnum::Class(), (size_t) v));if constexpr (false)unset_attribute_value(1); } @@ -12132,7 +12132,7 @@ void Ifc4x3_tc1::IfcNavigationElementType::setPredefinedType(const ::Ifc4x3_tc1: const ifcopenshell::entity& Ifc4x3_tc1::IfcNavigationElementType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[693]); } -Ifc4x3_tc1::IfcNavigationElementType Ifc4x3_tc1::IfcNavigationElementType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcNavigationElementTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcNavigationElementTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_tc1::IfcNavigationElementType Ifc4x3_tc1::IfcNavigationElementType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcNavigationElementTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcNavigationElementTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcObject std::optional< std::string > Ifc4x3_tc1::IfcObject::ObjectType() const { if(get_attribute_value(4).isNull()) { return std::nullopt; } std::string v = get_attribute_value(4); return v; } @@ -12160,7 +12160,7 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcObjectDefinition::Class() { return *( Ifc4x3_tc1::IfcObjectDefinition Ifc4x3_tc1::IfcObjectDefinition::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }; return *this; } // Function implementations for IfcObjectPlacement -::Ifc4x3_tc1::IfcObjectPlacement Ifc4x3_tc1::IfcObjectPlacement::PlacementRelTo() const { if(get_attribute_value(0).isNull()) { return ::Ifc4x3_tc1::IfcObjectPlacement{}; } return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcObjectPlacement>(); } +::Ifc4x3_tc1::IfcObjectPlacement Ifc4x3_tc1::IfcObjectPlacement::PlacementRelTo() const { if(get_attribute_value(0).isNull()) { return ::Ifc4x3_tc1::IfcObjectPlacement{}; } return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcObjectPlacement>(); } void Ifc4x3_tc1::IfcObjectPlacement::setPlacementRelTo(const ::Ifc4x3_tc1::IfcObjectPlacement& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } std::vector<::Ifc4x3_tc1::IfcProduct> Ifc4x3_tc1::IfcObjectPlacement::PlacesObject() const { return cast_vector(file()->get_inverse(data()->id(), IFC4X3_TC1_types[798], 5)); } @@ -12170,8 +12170,8 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcObjectPlacement::Class() { return *(( Ifc4x3_tc1::IfcObjectPlacement Ifc4x3_tc1::IfcObjectPlacement::initialize(::Ifc4x3_tc1::IfcObjectPlacement v1_PlacementRelTo) { set_attribute_value(0, (v1_PlacementRelTo));; return *this; } // Function implementations for IfcObjective -std::optional< std::vector< ::Ifc4x3_tc1::IfcConstraint > > Ifc4x3_tc1::IfcObjective::BenchmarkValues() const { if(get_attribute_value(7).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(7); return cast_vector<::Ifc4x3_tc1::IfcConstraint>(es); } -void Ifc4x3_tc1::IfcObjective::setBenchmarkValues(const std::optional< std::vector< ::Ifc4x3_tc1::IfcConstraint > >& v) { if (v) {set_attribute_value(7, cast_vector(*v));} else {unset_attribute_value(7);} } +std::optional< std::vector< ::Ifc4x3_tc1::IfcConstraint > > Ifc4x3_tc1::IfcObjective::BenchmarkValues() const { if(get_attribute_value(7).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(7); return cast_vector<::Ifc4x3_tc1::IfcConstraint>(es); } +void Ifc4x3_tc1::IfcObjective::setBenchmarkValues(const std::optional< std::vector< ::Ifc4x3_tc1::IfcConstraint > >& v) { if (v) {set_attribute_value(7, cast_vector(*v));} else {unset_attribute_value(7);} } std::optional< ::Ifc4x3_tc1::IfcLogicalOperatorEnum::Value > Ifc4x3_tc1::IfcObjective::LogicalAggregator() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_tc1::IfcLogicalOperatorEnum::FromString(get_attribute_value(8)); } void Ifc4x3_tc1::IfcObjective::setLogicalAggregator(const std::optional< ::Ifc4x3_tc1::IfcLogicalOperatorEnum::Value >& v) { if (v) {set_attribute_value(8, enumeration_reference(&::Ifc4x3_tc1::IfcLogicalOperatorEnum::Class(), (size_t) *v));} else {unset_attribute_value(8);} } ::Ifc4x3_tc1::IfcObjectiveEnum::Value Ifc4x3_tc1::IfcObjective::ObjectiveQualifier() const { return ::Ifc4x3_tc1::IfcObjectiveEnum::FromString(get_attribute_value(9)); } @@ -12181,7 +12181,7 @@ void Ifc4x3_tc1::IfcObjective::setUserDefinedQualifier(const std::optional< std: const ifcopenshell::entity& Ifc4x3_tc1::IfcObjective::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[700]); } -Ifc4x3_tc1::IfcObjective Ifc4x3_tc1::IfcObjective::initialize(std::string v1_Name, std::optional< std::string > v2_Description, ::Ifc4x3_tc1::IfcConstraintEnum::Value v3_ConstraintGrade, std::optional< std::string > v4_ConstraintSource, ::Ifc4x3_tc1::IfcActorSelect v5_CreatingActor, std::optional< std::string > v6_CreationTime, std::optional< std::string > v7_UserDefinedGrade, std::optional< std::vector< ::Ifc4x3_tc1::IfcConstraint > > v8_BenchmarkValues, std::optional< ::Ifc4x3_tc1::IfcLogicalOperatorEnum::Value > v9_LogicalAggregator, ::Ifc4x3_tc1::IfcObjectiveEnum::Value v10_ObjectiveQualifier, std::optional< std::string > v11_UserDefinedQualifier) { set_attribute_value(0, (v1_Name)); if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, (enumeration_reference(&::Ifc4x3_tc1::IfcConstraintEnum::Class(),(size_t)v3_ConstraintGrade))); if (v4_ConstraintSource) {set_attribute_value(3, (*v4_ConstraintSource)); }set_attribute_value(4, (v5_CreatingActor)); if (v6_CreationTime) {set_attribute_value(5, (*v6_CreationTime)); } if (v7_UserDefinedGrade) {set_attribute_value(6, (*v7_UserDefinedGrade)); } if (v8_BenchmarkValues) {set_attribute_value(7, cast_vector(*v8_BenchmarkValues)); } if (v9_LogicalAggregator) {set_attribute_value(8, (enumeration_reference(&::Ifc4x3_tc1::IfcLogicalOperatorEnum::Class(),(size_t)*v9_LogicalAggregator))); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcObjectiveEnum::Class(),(size_t)v10_ObjectiveQualifier))); if (v11_UserDefinedQualifier) {set_attribute_value(10, (*v11_UserDefinedQualifier)); }; return *this; } +Ifc4x3_tc1::IfcObjective Ifc4x3_tc1::IfcObjective::initialize(std::string v1_Name, std::optional< std::string > v2_Description, ::Ifc4x3_tc1::IfcConstraintEnum::Value v3_ConstraintGrade, std::optional< std::string > v4_ConstraintSource, ::Ifc4x3_tc1::IfcActorSelect v5_CreatingActor, std::optional< std::string > v6_CreationTime, std::optional< std::string > v7_UserDefinedGrade, std::optional< std::vector< ::Ifc4x3_tc1::IfcConstraint > > v8_BenchmarkValues, std::optional< ::Ifc4x3_tc1::IfcLogicalOperatorEnum::Value > v9_LogicalAggregator, ::Ifc4x3_tc1::IfcObjectiveEnum::Value v10_ObjectiveQualifier, std::optional< std::string > v11_UserDefinedQualifier) { set_attribute_value(0, (v1_Name)); if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, (enumeration_reference(&::Ifc4x3_tc1::IfcConstraintEnum::Class(),(size_t)v3_ConstraintGrade))); if (v4_ConstraintSource) {set_attribute_value(3, (*v4_ConstraintSource)); }set_attribute_value(4, (v5_CreatingActor)); if (v6_CreationTime) {set_attribute_value(5, (*v6_CreationTime)); } if (v7_UserDefinedGrade) {set_attribute_value(6, (*v7_UserDefinedGrade)); } if (v8_BenchmarkValues) {set_attribute_value(7, cast_vector(*v8_BenchmarkValues)); } if (v9_LogicalAggregator) {set_attribute_value(8, (enumeration_reference(&::Ifc4x3_tc1::IfcLogicalOperatorEnum::Class(),(size_t)*v9_LogicalAggregator))); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcObjectiveEnum::Class(),(size_t)v10_ObjectiveQualifier))); if (v11_UserDefinedQualifier) {set_attribute_value(10, (*v11_UserDefinedQualifier)); }; return *this; } // Function implementations for IfcOccupant std::optional< ::Ifc4x3_tc1::IfcOccupantTypeEnum::Value > Ifc4x3_tc1::IfcOccupant::PredefinedType() const { if(get_attribute_value(6).isNull()) { return std::nullopt; } return ::Ifc4x3_tc1::IfcOccupantTypeEnum::FromString(get_attribute_value(6)); } @@ -12192,7 +12192,7 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcOccupant::Class() { return *((ifcopen Ifc4x3_tc1::IfcOccupant Ifc4x3_tc1::IfcOccupant::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, ::Ifc4x3_tc1::IfcActorSelect v6_TheActor, std::optional< ::Ifc4x3_tc1::IfcOccupantTypeEnum::Value > v7_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); }set_attribute_value(5, (v6_TheActor)); if (v7_PredefinedType) {set_attribute_value(6, (enumeration_reference(&::Ifc4x3_tc1::IfcOccupantTypeEnum::Class(),(size_t)*v7_PredefinedType))); }; return *this; } // Function implementations for IfcOffsetCurve -::Ifc4x3_tc1::IfcCurve Ifc4x3_tc1::IfcOffsetCurve::BasisCurve() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcCurve>(); } +::Ifc4x3_tc1::IfcCurve Ifc4x3_tc1::IfcOffsetCurve::BasisCurve() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcCurve>(); } void Ifc4x3_tc1::IfcOffsetCurve::setBasisCurve(const ::Ifc4x3_tc1::IfcCurve& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } @@ -12214,7 +12214,7 @@ double Ifc4x3_tc1::IfcOffsetCurve3D::Distance() const { double v = get_attribut void Ifc4x3_tc1::IfcOffsetCurve3D::setDistance(const double& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } boost::logic::tribool Ifc4x3_tc1::IfcOffsetCurve3D::SelfIntersect() const { boost::logic::tribool v = get_attribute_value(2); return v; } void Ifc4x3_tc1::IfcOffsetCurve3D::setSelfIntersect(const boost::logic::tribool& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } -::Ifc4x3_tc1::IfcDirection Ifc4x3_tc1::IfcOffsetCurve3D::RefDirection() const { return ((express::Base)(get_attribute_value(3))).as<::Ifc4x3_tc1::IfcDirection>(); } +::Ifc4x3_tc1::IfcDirection Ifc4x3_tc1::IfcOffsetCurve3D::RefDirection() const { return ((express::base)(get_attribute_value(3))).as<::Ifc4x3_tc1::IfcDirection>(); } void Ifc4x3_tc1::IfcOffsetCurve3D::setRefDirection(const ::Ifc4x3_tc1::IfcDirection& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } @@ -12222,14 +12222,14 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcOffsetCurve3D::Class() { return *((if Ifc4x3_tc1::IfcOffsetCurve3D Ifc4x3_tc1::IfcOffsetCurve3D::initialize(::Ifc4x3_tc1::IfcCurve v1_BasisCurve, double v2_Distance, boost::logic::tribool v3_SelfIntersect, ::Ifc4x3_tc1::IfcDirection v4_RefDirection) { set_attribute_value(0, (v1_BasisCurve));set_attribute_value(1, (v2_Distance));set_attribute_value(2, (v3_SelfIntersect));set_attribute_value(3, (v4_RefDirection));; return *this; } // Function implementations for IfcOffsetCurveByDistances -std::vector< ::Ifc4x3_tc1::IfcPointByDistanceExpression > Ifc4x3_tc1::IfcOffsetCurveByDistances::OffsetValues() const { std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3_tc1::IfcPointByDistanceExpression>(es); } -void Ifc4x3_tc1::IfcOffsetCurveByDistances::setOffsetValues(const std::vector< ::Ifc4x3_tc1::IfcPointByDistanceExpression >& v) { set_attribute_value(1, cast_vector(v));if constexpr (false)unset_attribute_value(1); } +std::vector< ::Ifc4x3_tc1::IfcPointByDistanceExpression > Ifc4x3_tc1::IfcOffsetCurveByDistances::OffsetValues() const { std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3_tc1::IfcPointByDistanceExpression>(es); } +void Ifc4x3_tc1::IfcOffsetCurveByDistances::setOffsetValues(const std::vector< ::Ifc4x3_tc1::IfcPointByDistanceExpression >& v) { set_attribute_value(1, cast_vector(v));if constexpr (false)unset_attribute_value(1); } std::optional< std::string > Ifc4x3_tc1::IfcOffsetCurveByDistances::Tag() const { if(get_attribute_value(2).isNull()) { return std::nullopt; } std::string v = get_attribute_value(2); return v; } void Ifc4x3_tc1::IfcOffsetCurveByDistances::setTag(const std::optional< std::string >& v) { if (v) {set_attribute_value(2, *v);} else {unset_attribute_value(2);} } const ifcopenshell::entity& Ifc4x3_tc1::IfcOffsetCurveByDistances::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[709]); } -Ifc4x3_tc1::IfcOffsetCurveByDistances Ifc4x3_tc1::IfcOffsetCurveByDistances::initialize(::Ifc4x3_tc1::IfcCurve v1_BasisCurve, std::vector< ::Ifc4x3_tc1::IfcPointByDistanceExpression > v2_OffsetValues, std::optional< std::string > v3_Tag) { set_attribute_value(0, (v1_BasisCurve));set_attribute_value(1, cast_vector(v2_OffsetValues)); if (v3_Tag) {set_attribute_value(2, (*v3_Tag)); }; return *this; } +Ifc4x3_tc1::IfcOffsetCurveByDistances Ifc4x3_tc1::IfcOffsetCurveByDistances::initialize(::Ifc4x3_tc1::IfcCurve v1_BasisCurve, std::vector< ::Ifc4x3_tc1::IfcPointByDistanceExpression > v2_OffsetValues, std::optional< std::string > v3_Tag) { set_attribute_value(0, (v1_BasisCurve));set_attribute_value(1, cast_vector(v2_OffsetValues)); if (v3_Tag) {set_attribute_value(2, (*v3_Tag)); }; return *this; } // Function implementations for IfcOpenCrossProfileDef bool Ifc4x3_tc1::IfcOpenCrossProfileDef::HorizontalWidths() const { bool v = get_attribute_value(2); return v; } @@ -12240,7 +12240,7 @@ std::vector< double > /*[1:?]*/ Ifc4x3_tc1::IfcOpenCrossProfileDef::Slopes() con void Ifc4x3_tc1::IfcOpenCrossProfileDef::setSlopes(const std::vector< double > /*[1:?]*/& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } std::optional< std::vector< std::string > /*[2:?]*/ > Ifc4x3_tc1::IfcOpenCrossProfileDef::Tags() const { if(get_attribute_value(5).isNull()) { return std::nullopt; } std::vector< std::string > /*[2:?]*/ v = get_attribute_value(5); return v; } void Ifc4x3_tc1::IfcOpenCrossProfileDef::setTags(const std::optional< std::vector< std::string > /*[2:?]*/ >& v) { if (v) {set_attribute_value(5, *v);} else {unset_attribute_value(5);} } -::Ifc4x3_tc1::IfcCartesianPoint Ifc4x3_tc1::IfcOpenCrossProfileDef::OffsetPoint() const { if(get_attribute_value(6).isNull()) { return ::Ifc4x3_tc1::IfcCartesianPoint{}; } return ((express::Base)(get_attribute_value(6))).as<::Ifc4x3_tc1::IfcCartesianPoint>(); } +::Ifc4x3_tc1::IfcCartesianPoint Ifc4x3_tc1::IfcOpenCrossProfileDef::OffsetPoint() const { if(get_attribute_value(6).isNull()) { return ::Ifc4x3_tc1::IfcCartesianPoint{}; } return ((express::base)(get_attribute_value(6))).as<::Ifc4x3_tc1::IfcCartesianPoint>(); } void Ifc4x3_tc1::IfcOpenCrossProfileDef::setOffsetPoint(const ::Ifc4x3_tc1::IfcCartesianPoint& v) { set_attribute_value(6, v);if constexpr (false)unset_attribute_value(6); } @@ -12251,7 +12251,7 @@ Ifc4x3_tc1::IfcOpenCrossProfileDef Ifc4x3_tc1::IfcOpenCrossProfileDef::initializ const ifcopenshell::entity& Ifc4x3_tc1::IfcOpenShell::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[713]); } -Ifc4x3_tc1::IfcOpenShell Ifc4x3_tc1::IfcOpenShell::initialize(std::vector< ::Ifc4x3_tc1::IfcFace > v1_CfsFaces) { set_attribute_value(0, cast_vector(v1_CfsFaces));; return *this; } +Ifc4x3_tc1::IfcOpenShell Ifc4x3_tc1::IfcOpenShell::initialize(std::vector< ::Ifc4x3_tc1::IfcFace > v1_CfsFaces) { set_attribute_value(0, cast_vector(v1_CfsFaces));; return *this; } // Function implementations for IfcOpeningElement std::optional< ::Ifc4x3_tc1::IfcOpeningElementTypeEnum::Value > Ifc4x3_tc1::IfcOpeningElement::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_tc1::IfcOpeningElementTypeEnum::FromString(get_attribute_value(8)); } @@ -12269,30 +12269,30 @@ std::string Ifc4x3_tc1::IfcOrganization::Name() const { std::string v = get_att void Ifc4x3_tc1::IfcOrganization::setName(const std::string& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } std::optional< std::string > Ifc4x3_tc1::IfcOrganization::Description() const { if(get_attribute_value(2).isNull()) { return std::nullopt; } std::string v = get_attribute_value(2); return v; } void Ifc4x3_tc1::IfcOrganization::setDescription(const std::optional< std::string >& v) { if (v) {set_attribute_value(2, *v);} else {unset_attribute_value(2);} } -std::optional< std::vector< ::Ifc4x3_tc1::IfcActorRole > > Ifc4x3_tc1::IfcOrganization::Roles() const { if(get_attribute_value(3).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(3); return cast_vector<::Ifc4x3_tc1::IfcActorRole>(es); } -void Ifc4x3_tc1::IfcOrganization::setRoles(const std::optional< std::vector< ::Ifc4x3_tc1::IfcActorRole > >& v) { if (v) {set_attribute_value(3, cast_vector(*v));} else {unset_attribute_value(3);} } -std::optional< std::vector< ::Ifc4x3_tc1::IfcAddress > > Ifc4x3_tc1::IfcOrganization::Addresses() const { if(get_attribute_value(4).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(4); return cast_vector<::Ifc4x3_tc1::IfcAddress>(es); } -void Ifc4x3_tc1::IfcOrganization::setAddresses(const std::optional< std::vector< ::Ifc4x3_tc1::IfcAddress > >& v) { if (v) {set_attribute_value(4, cast_vector(*v));} else {unset_attribute_value(4);} } +std::optional< std::vector< ::Ifc4x3_tc1::IfcActorRole > > Ifc4x3_tc1::IfcOrganization::Roles() const { if(get_attribute_value(3).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(3); return cast_vector<::Ifc4x3_tc1::IfcActorRole>(es); } +void Ifc4x3_tc1::IfcOrganization::setRoles(const std::optional< std::vector< ::Ifc4x3_tc1::IfcActorRole > >& v) { if (v) {set_attribute_value(3, cast_vector(*v));} else {unset_attribute_value(3);} } +std::optional< std::vector< ::Ifc4x3_tc1::IfcAddress > > Ifc4x3_tc1::IfcOrganization::Addresses() const { if(get_attribute_value(4).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(4); return cast_vector<::Ifc4x3_tc1::IfcAddress>(es); } +void Ifc4x3_tc1::IfcOrganization::setAddresses(const std::optional< std::vector< ::Ifc4x3_tc1::IfcAddress > >& v) { if (v) {set_attribute_value(4, cast_vector(*v));} else {unset_attribute_value(4);} } std::vector<::Ifc4x3_tc1::IfcOrganizationRelationship> Ifc4x3_tc1::IfcOrganization::IsRelatedBy() const { return cast_vector(file()->get_inverse(data()->id(), IFC4X3_TC1_types[715], 3)); } std::vector<::Ifc4x3_tc1::IfcOrganizationRelationship> Ifc4x3_tc1::IfcOrganization::Relates() const { return cast_vector(file()->get_inverse(data()->id(), IFC4X3_TC1_types[715], 2)); } std::vector<::Ifc4x3_tc1::IfcPersonAndOrganization> Ifc4x3_tc1::IfcOrganization::Engages() const { return cast_vector(file()->get_inverse(data()->id(), IFC4X3_TC1_types[736], 1)); } const ifcopenshell::entity& Ifc4x3_tc1::IfcOrganization::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[714]); } -Ifc4x3_tc1::IfcOrganization Ifc4x3_tc1::IfcOrganization::initialize(std::optional< std::string > v1_Identification, std::string v2_Name, std::optional< std::string > v3_Description, std::optional< std::vector< ::Ifc4x3_tc1::IfcActorRole > > v4_Roles, std::optional< std::vector< ::Ifc4x3_tc1::IfcAddress > > v5_Addresses) { if (v1_Identification) {set_attribute_value(0, (*v1_Identification)); }set_attribute_value(1, (v2_Name)); if (v3_Description) {set_attribute_value(2, (*v3_Description)); } if (v4_Roles) {set_attribute_value(3, cast_vector(*v4_Roles)); } if (v5_Addresses) {set_attribute_value(4, cast_vector(*v5_Addresses)); }; return *this; } +Ifc4x3_tc1::IfcOrganization Ifc4x3_tc1::IfcOrganization::initialize(std::optional< std::string > v1_Identification, std::string v2_Name, std::optional< std::string > v3_Description, std::optional< std::vector< ::Ifc4x3_tc1::IfcActorRole > > v4_Roles, std::optional< std::vector< ::Ifc4x3_tc1::IfcAddress > > v5_Addresses) { if (v1_Identification) {set_attribute_value(0, (*v1_Identification)); }set_attribute_value(1, (v2_Name)); if (v3_Description) {set_attribute_value(2, (*v3_Description)); } if (v4_Roles) {set_attribute_value(3, cast_vector(*v4_Roles)); } if (v5_Addresses) {set_attribute_value(4, cast_vector(*v5_Addresses)); }; return *this; } // Function implementations for IfcOrganizationRelationship -::Ifc4x3_tc1::IfcOrganization Ifc4x3_tc1::IfcOrganizationRelationship::RelatingOrganization() const { return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3_tc1::IfcOrganization>(); } +::Ifc4x3_tc1::IfcOrganization Ifc4x3_tc1::IfcOrganizationRelationship::RelatingOrganization() const { return ((express::base)(get_attribute_value(2))).as<::Ifc4x3_tc1::IfcOrganization>(); } void Ifc4x3_tc1::IfcOrganizationRelationship::setRelatingOrganization(const ::Ifc4x3_tc1::IfcOrganization& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } -std::vector< ::Ifc4x3_tc1::IfcOrganization > Ifc4x3_tc1::IfcOrganizationRelationship::RelatedOrganizations() const { std::vector es = get_attribute_value(3); return cast_vector<::Ifc4x3_tc1::IfcOrganization>(es); } -void Ifc4x3_tc1::IfcOrganizationRelationship::setRelatedOrganizations(const std::vector< ::Ifc4x3_tc1::IfcOrganization >& v) { set_attribute_value(3, cast_vector(v));if constexpr (false)unset_attribute_value(3); } +std::vector< ::Ifc4x3_tc1::IfcOrganization > Ifc4x3_tc1::IfcOrganizationRelationship::RelatedOrganizations() const { std::vector es = get_attribute_value(3); return cast_vector<::Ifc4x3_tc1::IfcOrganization>(es); } +void Ifc4x3_tc1::IfcOrganizationRelationship::setRelatedOrganizations(const std::vector< ::Ifc4x3_tc1::IfcOrganization >& v) { set_attribute_value(3, cast_vector(v));if constexpr (false)unset_attribute_value(3); } const ifcopenshell::entity& Ifc4x3_tc1::IfcOrganizationRelationship::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[715]); } -Ifc4x3_tc1::IfcOrganizationRelationship Ifc4x3_tc1::IfcOrganizationRelationship::initialize(std::optional< std::string > v1_Name, std::optional< std::string > v2_Description, ::Ifc4x3_tc1::IfcOrganization v3_RelatingOrganization, std::vector< ::Ifc4x3_tc1::IfcOrganization > v4_RelatedOrganizations) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); } if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, (v3_RelatingOrganization));set_attribute_value(3, cast_vector(v4_RelatedOrganizations));; return *this; } +Ifc4x3_tc1::IfcOrganizationRelationship Ifc4x3_tc1::IfcOrganizationRelationship::initialize(std::optional< std::string > v1_Name, std::optional< std::string > v2_Description, ::Ifc4x3_tc1::IfcOrganization v3_RelatingOrganization, std::vector< ::Ifc4x3_tc1::IfcOrganization > v4_RelatedOrganizations) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); } if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, (v3_RelatingOrganization));set_attribute_value(3, cast_vector(v4_RelatedOrganizations));; return *this; } // Function implementations for IfcOrientedEdge -::Ifc4x3_tc1::IfcEdge Ifc4x3_tc1::IfcOrientedEdge::EdgeElement() const { return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3_tc1::IfcEdge>(); } +::Ifc4x3_tc1::IfcEdge Ifc4x3_tc1::IfcOrientedEdge::EdgeElement() const { return ((express::base)(get_attribute_value(2))).as<::Ifc4x3_tc1::IfcEdge>(); } void Ifc4x3_tc1::IfcOrientedEdge::setEdgeElement(const ::Ifc4x3_tc1::IfcEdge& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } bool Ifc4x3_tc1::IfcOrientedEdge::Orientation() const { bool v = get_attribute_value(3); return v; } void Ifc4x3_tc1::IfcOrientedEdge::setOrientation(const bool& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } @@ -12305,7 +12305,7 @@ Ifc4x3_tc1::IfcOrientedEdge Ifc4x3_tc1::IfcOrientedEdge::initialize(::Ifc4x3_tc1 const ifcopenshell::entity& Ifc4x3_tc1::IfcOuterBoundaryCurve::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[717]); } -Ifc4x3_tc1::IfcOuterBoundaryCurve Ifc4x3_tc1::IfcOuterBoundaryCurve::initialize(std::vector< ::Ifc4x3_tc1::IfcSegment > v1_Segments, boost::logic::tribool v2_SelfIntersect) { set_attribute_value(0, cast_vector(v1_Segments));set_attribute_value(1, (v2_SelfIntersect));; return *this; } +Ifc4x3_tc1::IfcOuterBoundaryCurve Ifc4x3_tc1::IfcOuterBoundaryCurve::initialize(std::vector< ::Ifc4x3_tc1::IfcSegment > v1_Segments, boost::logic::tribool v2_SelfIntersect) { set_attribute_value(0, cast_vector(v1_Segments));set_attribute_value(1, (v2_SelfIntersect));; return *this; } // Function implementations for IfcOutlet std::optional< ::Ifc4x3_tc1::IfcOutletTypeEnum::Value > Ifc4x3_tc1::IfcOutlet::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_tc1::IfcOutletTypeEnum::FromString(get_attribute_value(8)); } @@ -12321,12 +12321,12 @@ void Ifc4x3_tc1::IfcOutletType::setPredefinedType(const ::Ifc4x3_tc1::IfcOutletT const ifcopenshell::entity& Ifc4x3_tc1::IfcOutletType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[719]); } -Ifc4x3_tc1::IfcOutletType Ifc4x3_tc1::IfcOutletType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcOutletTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcOutletTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_tc1::IfcOutletType Ifc4x3_tc1::IfcOutletType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcOutletTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcOutletTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcOwnerHistory -::Ifc4x3_tc1::IfcPersonAndOrganization Ifc4x3_tc1::IfcOwnerHistory::OwningUser() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcPersonAndOrganization>(); } +::Ifc4x3_tc1::IfcPersonAndOrganization Ifc4x3_tc1::IfcOwnerHistory::OwningUser() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcPersonAndOrganization>(); } void Ifc4x3_tc1::IfcOwnerHistory::setOwningUser(const ::Ifc4x3_tc1::IfcPersonAndOrganization& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } -::Ifc4x3_tc1::IfcApplication Ifc4x3_tc1::IfcOwnerHistory::OwningApplication() const { return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3_tc1::IfcApplication>(); } +::Ifc4x3_tc1::IfcApplication Ifc4x3_tc1::IfcOwnerHistory::OwningApplication() const { return ((express::base)(get_attribute_value(1))).as<::Ifc4x3_tc1::IfcApplication>(); } void Ifc4x3_tc1::IfcOwnerHistory::setOwningApplication(const ::Ifc4x3_tc1::IfcApplication& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } std::optional< ::Ifc4x3_tc1::IfcStateEnum::Value > Ifc4x3_tc1::IfcOwnerHistory::State() const { if(get_attribute_value(2).isNull()) { return std::nullopt; } return ::Ifc4x3_tc1::IfcStateEnum::FromString(get_attribute_value(2)); } void Ifc4x3_tc1::IfcOwnerHistory::setState(const std::optional< ::Ifc4x3_tc1::IfcStateEnum::Value >& v) { if (v) {set_attribute_value(2, enumeration_reference(&::Ifc4x3_tc1::IfcStateEnum::Class(), (size_t) *v));} else {unset_attribute_value(2);} } @@ -12334,9 +12334,9 @@ std::optional< ::Ifc4x3_tc1::IfcChangeActionEnum::Value > Ifc4x3_tc1::IfcOwnerHi void Ifc4x3_tc1::IfcOwnerHistory::setChangeAction(const std::optional< ::Ifc4x3_tc1::IfcChangeActionEnum::Value >& v) { if (v) {set_attribute_value(3, enumeration_reference(&::Ifc4x3_tc1::IfcChangeActionEnum::Class(), (size_t) *v));} else {unset_attribute_value(3);} } std::optional< int64_t > Ifc4x3_tc1::IfcOwnerHistory::LastModifiedDate() const { if(get_attribute_value(4).isNull()) { return std::nullopt; } int64_t v = get_attribute_value(4); return v; } void Ifc4x3_tc1::IfcOwnerHistory::setLastModifiedDate(const std::optional< int64_t >& v) { if (v) {set_attribute_value(4, *v);} else {unset_attribute_value(4);} } -::Ifc4x3_tc1::IfcPersonAndOrganization Ifc4x3_tc1::IfcOwnerHistory::LastModifyingUser() const { if(get_attribute_value(5).isNull()) { return ::Ifc4x3_tc1::IfcPersonAndOrganization{}; } return ((express::Base)(get_attribute_value(5))).as<::Ifc4x3_tc1::IfcPersonAndOrganization>(); } +::Ifc4x3_tc1::IfcPersonAndOrganization Ifc4x3_tc1::IfcOwnerHistory::LastModifyingUser() const { if(get_attribute_value(5).isNull()) { return ::Ifc4x3_tc1::IfcPersonAndOrganization{}; } return ((express::base)(get_attribute_value(5))).as<::Ifc4x3_tc1::IfcPersonAndOrganization>(); } void Ifc4x3_tc1::IfcOwnerHistory::setLastModifyingUser(const ::Ifc4x3_tc1::IfcPersonAndOrganization& v) { set_attribute_value(5, v);if constexpr (false)unset_attribute_value(5); } -::Ifc4x3_tc1::IfcApplication Ifc4x3_tc1::IfcOwnerHistory::LastModifyingApplication() const { if(get_attribute_value(6).isNull()) { return ::Ifc4x3_tc1::IfcApplication{}; } return ((express::Base)(get_attribute_value(6))).as<::Ifc4x3_tc1::IfcApplication>(); } +::Ifc4x3_tc1::IfcApplication Ifc4x3_tc1::IfcOwnerHistory::LastModifyingApplication() const { if(get_attribute_value(6).isNull()) { return ::Ifc4x3_tc1::IfcApplication{}; } return ((express::base)(get_attribute_value(6))).as<::Ifc4x3_tc1::IfcApplication>(); } void Ifc4x3_tc1::IfcOwnerHistory::setLastModifyingApplication(const ::Ifc4x3_tc1::IfcApplication& v) { set_attribute_value(6, v);if constexpr (false)unset_attribute_value(6); } int64_t Ifc4x3_tc1::IfcOwnerHistory::CreationDate() const { int64_t v = get_attribute_value(7); return v; } void Ifc4x3_tc1::IfcOwnerHistory::setCreationDate(const int64_t& v) { set_attribute_value(7, v);if constexpr (false)unset_attribute_value(7); } @@ -12346,7 +12346,7 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcOwnerHistory::Class() { return *((ifc Ifc4x3_tc1::IfcOwnerHistory Ifc4x3_tc1::IfcOwnerHistory::initialize(::Ifc4x3_tc1::IfcPersonAndOrganization v1_OwningUser, ::Ifc4x3_tc1::IfcApplication v2_OwningApplication, std::optional< ::Ifc4x3_tc1::IfcStateEnum::Value > v3_State, std::optional< ::Ifc4x3_tc1::IfcChangeActionEnum::Value > v4_ChangeAction, std::optional< int64_t > v5_LastModifiedDate, ::Ifc4x3_tc1::IfcPersonAndOrganization v6_LastModifyingUser, ::Ifc4x3_tc1::IfcApplication v7_LastModifyingApplication, int64_t v8_CreationDate) { set_attribute_value(0, (v1_OwningUser));set_attribute_value(1, (v2_OwningApplication)); if (v3_State) {set_attribute_value(2, (enumeration_reference(&::Ifc4x3_tc1::IfcStateEnum::Class(),(size_t)*v3_State))); } if (v4_ChangeAction) {set_attribute_value(3, (enumeration_reference(&::Ifc4x3_tc1::IfcChangeActionEnum::Class(),(size_t)*v4_ChangeAction))); } if (v5_LastModifiedDate) {set_attribute_value(4, (*v5_LastModifiedDate)); }set_attribute_value(5, (v6_LastModifyingUser));set_attribute_value(6, (v7_LastModifyingApplication));set_attribute_value(7, (v8_CreationDate));; return *this; } // Function implementations for IfcParameterizedProfileDef -::Ifc4x3_tc1::IfcAxis2Placement2D Ifc4x3_tc1::IfcParameterizedProfileDef::Position() const { if(get_attribute_value(2).isNull()) { return ::Ifc4x3_tc1::IfcAxis2Placement2D{}; } return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3_tc1::IfcAxis2Placement2D>(); } +::Ifc4x3_tc1::IfcAxis2Placement2D Ifc4x3_tc1::IfcParameterizedProfileDef::Position() const { if(get_attribute_value(2).isNull()) { return ::Ifc4x3_tc1::IfcAxis2Placement2D{}; } return ((express::base)(get_attribute_value(2))).as<::Ifc4x3_tc1::IfcAxis2Placement2D>(); } void Ifc4x3_tc1::IfcParameterizedProfileDef::setPosition(const ::Ifc4x3_tc1::IfcAxis2Placement2D& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } @@ -12354,12 +12354,12 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcParameterizedProfileDef::Class() { re Ifc4x3_tc1::IfcParameterizedProfileDef Ifc4x3_tc1::IfcParameterizedProfileDef::initialize(::Ifc4x3_tc1::IfcProfileTypeEnum::Value v1_ProfileType, std::optional< std::string > v2_ProfileName, ::Ifc4x3_tc1::IfcAxis2Placement2D v3_Position) { set_attribute_value(0, (enumeration_reference(&::Ifc4x3_tc1::IfcProfileTypeEnum::Class(),(size_t)v1_ProfileType))); if (v2_ProfileName) {set_attribute_value(1, (*v2_ProfileName)); }set_attribute_value(2, (v3_Position));; return *this; } // Function implementations for IfcPath -std::vector< ::Ifc4x3_tc1::IfcOrientedEdge > Ifc4x3_tc1::IfcPath::EdgeList() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3_tc1::IfcOrientedEdge>(es); } -void Ifc4x3_tc1::IfcPath::setEdgeList(const std::vector< ::Ifc4x3_tc1::IfcOrientedEdge >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } +std::vector< ::Ifc4x3_tc1::IfcOrientedEdge > Ifc4x3_tc1::IfcPath::EdgeList() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3_tc1::IfcOrientedEdge>(es); } +void Ifc4x3_tc1::IfcPath::setEdgeList(const std::vector< ::Ifc4x3_tc1::IfcOrientedEdge >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } const ifcopenshell::entity& Ifc4x3_tc1::IfcPath::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[724]); } -Ifc4x3_tc1::IfcPath Ifc4x3_tc1::IfcPath::initialize(std::vector< ::Ifc4x3_tc1::IfcOrientedEdge > v1_EdgeList) { set_attribute_value(0, cast_vector(v1_EdgeList));; return *this; } +Ifc4x3_tc1::IfcPath Ifc4x3_tc1::IfcPath::initialize(std::vector< ::Ifc4x3_tc1::IfcOrientedEdge > v1_EdgeList) { set_attribute_value(0, cast_vector(v1_EdgeList));; return *this; } // Function implementations for IfcPavement std::optional< ::Ifc4x3_tc1::IfcPavementTypeEnum::Value > Ifc4x3_tc1::IfcPavement::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_tc1::IfcPavementTypeEnum::FromString(get_attribute_value(8)); } @@ -12375,12 +12375,12 @@ void Ifc4x3_tc1::IfcPavementType::setPredefinedType(const ::Ifc4x3_tc1::IfcPavem const ifcopenshell::entity& Ifc4x3_tc1::IfcPavementType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[726]); } -Ifc4x3_tc1::IfcPavementType Ifc4x3_tc1::IfcPavementType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcPavementTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcPavementTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_tc1::IfcPavementType Ifc4x3_tc1::IfcPavementType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcPavementTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcPavementTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcPcurve -::Ifc4x3_tc1::IfcSurface Ifc4x3_tc1::IfcPcurve::BasisSurface() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcSurface>(); } +::Ifc4x3_tc1::IfcSurface Ifc4x3_tc1::IfcPcurve::BasisSurface() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcSurface>(); } void Ifc4x3_tc1::IfcPcurve::setBasisSurface(const ::Ifc4x3_tc1::IfcSurface& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } -::Ifc4x3_tc1::IfcCurve Ifc4x3_tc1::IfcPcurve::ReferenceCurve() const { return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3_tc1::IfcCurve>(); } +::Ifc4x3_tc1::IfcCurve Ifc4x3_tc1::IfcPcurve::ReferenceCurve() const { return ((express::base)(get_attribute_value(1))).as<::Ifc4x3_tc1::IfcCurve>(); } void Ifc4x3_tc1::IfcPcurve::setReferenceCurve(const ::Ifc4x3_tc1::IfcCurve& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } @@ -12406,7 +12406,7 @@ std::optional< double > Ifc4x3_tc1::IfcPermeableCoveringProperties::FrameDepth() void Ifc4x3_tc1::IfcPermeableCoveringProperties::setFrameDepth(const std::optional< double >& v) { if (v) {set_attribute_value(6, *v);} else {unset_attribute_value(6);} } std::optional< double > Ifc4x3_tc1::IfcPermeableCoveringProperties::FrameThickness() const { if(get_attribute_value(7).isNull()) { return std::nullopt; } double v = get_attribute_value(7); return v; } void Ifc4x3_tc1::IfcPermeableCoveringProperties::setFrameThickness(const std::optional< double >& v) { if (v) {set_attribute_value(7, *v);} else {unset_attribute_value(7);} } -::Ifc4x3_tc1::IfcShapeAspect Ifc4x3_tc1::IfcPermeableCoveringProperties::ShapeAspectStyle() const { if(get_attribute_value(8).isNull()) { return ::Ifc4x3_tc1::IfcShapeAspect{}; } return ((express::Base)(get_attribute_value(8))).as<::Ifc4x3_tc1::IfcShapeAspect>(); } +::Ifc4x3_tc1::IfcShapeAspect Ifc4x3_tc1::IfcPermeableCoveringProperties::ShapeAspectStyle() const { if(get_attribute_value(8).isNull()) { return ::Ifc4x3_tc1::IfcShapeAspect{}; } return ((express::base)(get_attribute_value(8))).as<::Ifc4x3_tc1::IfcShapeAspect>(); } void Ifc4x3_tc1::IfcPermeableCoveringProperties::setShapeAspectStyle(const ::Ifc4x3_tc1::IfcShapeAspect& v) { set_attribute_value(8, v);if constexpr (false)unset_attribute_value(8); } @@ -12438,31 +12438,31 @@ std::optional< std::vector< std::string > /*[1:?]*/ > Ifc4x3_tc1::IfcPerson::Pre void Ifc4x3_tc1::IfcPerson::setPrefixTitles(const std::optional< std::vector< std::string > /*[1:?]*/ >& v) { if (v) {set_attribute_value(4, *v);} else {unset_attribute_value(4);} } std::optional< std::vector< std::string > /*[1:?]*/ > Ifc4x3_tc1::IfcPerson::SuffixTitles() const { if(get_attribute_value(5).isNull()) { return std::nullopt; } std::vector< std::string > /*[1:?]*/ v = get_attribute_value(5); return v; } void Ifc4x3_tc1::IfcPerson::setSuffixTitles(const std::optional< std::vector< std::string > /*[1:?]*/ >& v) { if (v) {set_attribute_value(5, *v);} else {unset_attribute_value(5);} } -std::optional< std::vector< ::Ifc4x3_tc1::IfcActorRole > > Ifc4x3_tc1::IfcPerson::Roles() const { if(get_attribute_value(6).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(6); return cast_vector<::Ifc4x3_tc1::IfcActorRole>(es); } -void Ifc4x3_tc1::IfcPerson::setRoles(const std::optional< std::vector< ::Ifc4x3_tc1::IfcActorRole > >& v) { if (v) {set_attribute_value(6, cast_vector(*v));} else {unset_attribute_value(6);} } -std::optional< std::vector< ::Ifc4x3_tc1::IfcAddress > > Ifc4x3_tc1::IfcPerson::Addresses() const { if(get_attribute_value(7).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(7); return cast_vector<::Ifc4x3_tc1::IfcAddress>(es); } -void Ifc4x3_tc1::IfcPerson::setAddresses(const std::optional< std::vector< ::Ifc4x3_tc1::IfcAddress > >& v) { if (v) {set_attribute_value(7, cast_vector(*v));} else {unset_attribute_value(7);} } +std::optional< std::vector< ::Ifc4x3_tc1::IfcActorRole > > Ifc4x3_tc1::IfcPerson::Roles() const { if(get_attribute_value(6).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(6); return cast_vector<::Ifc4x3_tc1::IfcActorRole>(es); } +void Ifc4x3_tc1::IfcPerson::setRoles(const std::optional< std::vector< ::Ifc4x3_tc1::IfcActorRole > >& v) { if (v) {set_attribute_value(6, cast_vector(*v));} else {unset_attribute_value(6);} } +std::optional< std::vector< ::Ifc4x3_tc1::IfcAddress > > Ifc4x3_tc1::IfcPerson::Addresses() const { if(get_attribute_value(7).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(7); return cast_vector<::Ifc4x3_tc1::IfcAddress>(es); } +void Ifc4x3_tc1::IfcPerson::setAddresses(const std::optional< std::vector< ::Ifc4x3_tc1::IfcAddress > >& v) { if (v) {set_attribute_value(7, cast_vector(*v));} else {unset_attribute_value(7);} } std::vector<::Ifc4x3_tc1::IfcPersonAndOrganization> Ifc4x3_tc1::IfcPerson::EngagedIn() const { return cast_vector(file()->get_inverse(data()->id(), IFC4X3_TC1_types[736], 0)); } const ifcopenshell::entity& Ifc4x3_tc1::IfcPerson::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[735]); } -Ifc4x3_tc1::IfcPerson Ifc4x3_tc1::IfcPerson::initialize(std::optional< std::string > v1_Identification, std::optional< std::string > v2_FamilyName, std::optional< std::string > v3_GivenName, std::optional< std::vector< std::string > /*[1:?]*/ > v4_MiddleNames, std::optional< std::vector< std::string > /*[1:?]*/ > v5_PrefixTitles, std::optional< std::vector< std::string > /*[1:?]*/ > v6_SuffixTitles, std::optional< std::vector< ::Ifc4x3_tc1::IfcActorRole > > v7_Roles, std::optional< std::vector< ::Ifc4x3_tc1::IfcAddress > > v8_Addresses) { if (v1_Identification) {set_attribute_value(0, (*v1_Identification)); } if (v2_FamilyName) {set_attribute_value(1, (*v2_FamilyName)); } if (v3_GivenName) {set_attribute_value(2, (*v3_GivenName)); } if (v4_MiddleNames) {set_attribute_value(3, (*v4_MiddleNames)); } if (v5_PrefixTitles) {set_attribute_value(4, (*v5_PrefixTitles)); } if (v6_SuffixTitles) {set_attribute_value(5, (*v6_SuffixTitles)); } if (v7_Roles) {set_attribute_value(6, cast_vector(*v7_Roles)); } if (v8_Addresses) {set_attribute_value(7, cast_vector(*v8_Addresses)); }; return *this; } +Ifc4x3_tc1::IfcPerson Ifc4x3_tc1::IfcPerson::initialize(std::optional< std::string > v1_Identification, std::optional< std::string > v2_FamilyName, std::optional< std::string > v3_GivenName, std::optional< std::vector< std::string > /*[1:?]*/ > v4_MiddleNames, std::optional< std::vector< std::string > /*[1:?]*/ > v5_PrefixTitles, std::optional< std::vector< std::string > /*[1:?]*/ > v6_SuffixTitles, std::optional< std::vector< ::Ifc4x3_tc1::IfcActorRole > > v7_Roles, std::optional< std::vector< ::Ifc4x3_tc1::IfcAddress > > v8_Addresses) { if (v1_Identification) {set_attribute_value(0, (*v1_Identification)); } if (v2_FamilyName) {set_attribute_value(1, (*v2_FamilyName)); } if (v3_GivenName) {set_attribute_value(2, (*v3_GivenName)); } if (v4_MiddleNames) {set_attribute_value(3, (*v4_MiddleNames)); } if (v5_PrefixTitles) {set_attribute_value(4, (*v5_PrefixTitles)); } if (v6_SuffixTitles) {set_attribute_value(5, (*v6_SuffixTitles)); } if (v7_Roles) {set_attribute_value(6, cast_vector(*v7_Roles)); } if (v8_Addresses) {set_attribute_value(7, cast_vector(*v8_Addresses)); }; return *this; } // Function implementations for IfcPersonAndOrganization -::Ifc4x3_tc1::IfcPerson Ifc4x3_tc1::IfcPersonAndOrganization::ThePerson() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcPerson>(); } +::Ifc4x3_tc1::IfcPerson Ifc4x3_tc1::IfcPersonAndOrganization::ThePerson() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcPerson>(); } void Ifc4x3_tc1::IfcPersonAndOrganization::setThePerson(const ::Ifc4x3_tc1::IfcPerson& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } -::Ifc4x3_tc1::IfcOrganization Ifc4x3_tc1::IfcPersonAndOrganization::TheOrganization() const { return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3_tc1::IfcOrganization>(); } +::Ifc4x3_tc1::IfcOrganization Ifc4x3_tc1::IfcPersonAndOrganization::TheOrganization() const { return ((express::base)(get_attribute_value(1))).as<::Ifc4x3_tc1::IfcOrganization>(); } void Ifc4x3_tc1::IfcPersonAndOrganization::setTheOrganization(const ::Ifc4x3_tc1::IfcOrganization& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } -std::optional< std::vector< ::Ifc4x3_tc1::IfcActorRole > > Ifc4x3_tc1::IfcPersonAndOrganization::Roles() const { if(get_attribute_value(2).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(2); return cast_vector<::Ifc4x3_tc1::IfcActorRole>(es); } -void Ifc4x3_tc1::IfcPersonAndOrganization::setRoles(const std::optional< std::vector< ::Ifc4x3_tc1::IfcActorRole > >& v) { if (v) {set_attribute_value(2, cast_vector(*v));} else {unset_attribute_value(2);} } +std::optional< std::vector< ::Ifc4x3_tc1::IfcActorRole > > Ifc4x3_tc1::IfcPersonAndOrganization::Roles() const { if(get_attribute_value(2).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(2); return cast_vector<::Ifc4x3_tc1::IfcActorRole>(es); } +void Ifc4x3_tc1::IfcPersonAndOrganization::setRoles(const std::optional< std::vector< ::Ifc4x3_tc1::IfcActorRole > >& v) { if (v) {set_attribute_value(2, cast_vector(*v));} else {unset_attribute_value(2);} } const ifcopenshell::entity& Ifc4x3_tc1::IfcPersonAndOrganization::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[736]); } -Ifc4x3_tc1::IfcPersonAndOrganization Ifc4x3_tc1::IfcPersonAndOrganization::initialize(::Ifc4x3_tc1::IfcPerson v1_ThePerson, ::Ifc4x3_tc1::IfcOrganization v2_TheOrganization, std::optional< std::vector< ::Ifc4x3_tc1::IfcActorRole > > v3_Roles) { set_attribute_value(0, (v1_ThePerson));set_attribute_value(1, (v2_TheOrganization)); if (v3_Roles) {set_attribute_value(2, cast_vector(*v3_Roles)); }; return *this; } +Ifc4x3_tc1::IfcPersonAndOrganization Ifc4x3_tc1::IfcPersonAndOrganization::initialize(::Ifc4x3_tc1::IfcPerson v1_ThePerson, ::Ifc4x3_tc1::IfcOrganization v2_TheOrganization, std::optional< std::vector< ::Ifc4x3_tc1::IfcActorRole > > v3_Roles) { set_attribute_value(0, (v1_ThePerson));set_attribute_value(1, (v2_TheOrganization)); if (v3_Roles) {set_attribute_value(2, cast_vector(*v3_Roles)); }; return *this; } // Function implementations for IfcPhysicalComplexQuantity -std::vector< ::Ifc4x3_tc1::IfcPhysicalQuantity > Ifc4x3_tc1::IfcPhysicalComplexQuantity::HasQuantities() const { std::vector es = get_attribute_value(2); return cast_vector<::Ifc4x3_tc1::IfcPhysicalQuantity>(es); } -void Ifc4x3_tc1::IfcPhysicalComplexQuantity::setHasQuantities(const std::vector< ::Ifc4x3_tc1::IfcPhysicalQuantity >& v) { set_attribute_value(2, cast_vector(v));if constexpr (false)unset_attribute_value(2); } +std::vector< ::Ifc4x3_tc1::IfcPhysicalQuantity > Ifc4x3_tc1::IfcPhysicalComplexQuantity::HasQuantities() const { std::vector es = get_attribute_value(2); return cast_vector<::Ifc4x3_tc1::IfcPhysicalQuantity>(es); } +void Ifc4x3_tc1::IfcPhysicalComplexQuantity::setHasQuantities(const std::vector< ::Ifc4x3_tc1::IfcPhysicalQuantity >& v) { set_attribute_value(2, cast_vector(v));if constexpr (false)unset_attribute_value(2); } std::string Ifc4x3_tc1::IfcPhysicalComplexQuantity::Discrimination() const { std::string v = get_attribute_value(3); return v; } void Ifc4x3_tc1::IfcPhysicalComplexQuantity::setDiscrimination(const std::string& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } std::optional< std::string > Ifc4x3_tc1::IfcPhysicalComplexQuantity::Quality() const { if(get_attribute_value(4).isNull()) { return std::nullopt; } std::string v = get_attribute_value(4); return v; } @@ -12472,7 +12472,7 @@ void Ifc4x3_tc1::IfcPhysicalComplexQuantity::setUsage(const std::optional< std:: const ifcopenshell::entity& Ifc4x3_tc1::IfcPhysicalComplexQuantity::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[738]); } -Ifc4x3_tc1::IfcPhysicalComplexQuantity Ifc4x3_tc1::IfcPhysicalComplexQuantity::initialize(std::string v1_Name, std::optional< std::string > v2_Description, std::vector< ::Ifc4x3_tc1::IfcPhysicalQuantity > v3_HasQuantities, std::string v4_Discrimination, std::optional< std::string > v5_Quality, std::optional< std::string > v6_Usage) { set_attribute_value(0, (v1_Name)); if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, cast_vector(v3_HasQuantities));set_attribute_value(3, (v4_Discrimination)); if (v5_Quality) {set_attribute_value(4, (*v5_Quality)); } if (v6_Usage) {set_attribute_value(5, (*v6_Usage)); }; return *this; } +Ifc4x3_tc1::IfcPhysicalComplexQuantity Ifc4x3_tc1::IfcPhysicalComplexQuantity::initialize(std::string v1_Name, std::optional< std::string > v2_Description, std::vector< ::Ifc4x3_tc1::IfcPhysicalQuantity > v3_HasQuantities, std::string v4_Discrimination, std::optional< std::string > v5_Quality, std::optional< std::string > v6_Usage) { set_attribute_value(0, (v1_Name)); if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, cast_vector(v3_HasQuantities));set_attribute_value(3, (v4_Discrimination)); if (v5_Quality) {set_attribute_value(4, (*v5_Quality)); } if (v6_Usage) {set_attribute_value(5, (*v6_Usage)); }; return *this; } // Function implementations for IfcPhysicalQuantity std::string Ifc4x3_tc1::IfcPhysicalQuantity::Name() const { std::string v = get_attribute_value(0); return v; } @@ -12487,7 +12487,7 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcPhysicalQuantity::Class() { return *( Ifc4x3_tc1::IfcPhysicalQuantity Ifc4x3_tc1::IfcPhysicalQuantity::initialize(std::string v1_Name, std::optional< std::string > v2_Description) { set_attribute_value(0, (v1_Name)); if (v2_Description) {set_attribute_value(1, (*v2_Description)); }; return *this; } // Function implementations for IfcPhysicalSimpleQuantity -::Ifc4x3_tc1::IfcNamedUnit Ifc4x3_tc1::IfcPhysicalSimpleQuantity::Unit() const { if(get_attribute_value(2).isNull()) { return ::Ifc4x3_tc1::IfcNamedUnit{}; } return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3_tc1::IfcNamedUnit>(); } +::Ifc4x3_tc1::IfcNamedUnit Ifc4x3_tc1::IfcPhysicalSimpleQuantity::Unit() const { if(get_attribute_value(2).isNull()) { return ::Ifc4x3_tc1::IfcNamedUnit{}; } return ((express::base)(get_attribute_value(2))).as<::Ifc4x3_tc1::IfcNamedUnit>(); } void Ifc4x3_tc1::IfcPhysicalSimpleQuantity::setUnit(const ::Ifc4x3_tc1::IfcNamedUnit& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } @@ -12510,7 +12510,7 @@ void Ifc4x3_tc1::IfcPileType::setPredefinedType(const ::Ifc4x3_tc1::IfcPileTypeE const ifcopenshell::entity& Ifc4x3_tc1::IfcPileType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[744]); } -Ifc4x3_tc1::IfcPileType Ifc4x3_tc1::IfcPileType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcPileTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcPileTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_tc1::IfcPileType Ifc4x3_tc1::IfcPileType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcPileTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcPileTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcPipeFitting std::optional< ::Ifc4x3_tc1::IfcPipeFittingTypeEnum::Value > Ifc4x3_tc1::IfcPipeFitting::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_tc1::IfcPipeFittingTypeEnum::FromString(get_attribute_value(8)); } @@ -12526,7 +12526,7 @@ void Ifc4x3_tc1::IfcPipeFittingType::setPredefinedType(const ::Ifc4x3_tc1::IfcPi const ifcopenshell::entity& Ifc4x3_tc1::IfcPipeFittingType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[747]); } -Ifc4x3_tc1::IfcPipeFittingType Ifc4x3_tc1::IfcPipeFittingType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcPipeFittingTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcPipeFittingTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_tc1::IfcPipeFittingType Ifc4x3_tc1::IfcPipeFittingType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcPipeFittingTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcPipeFittingTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcPipeSegment std::optional< ::Ifc4x3_tc1::IfcPipeSegmentTypeEnum::Value > Ifc4x3_tc1::IfcPipeSegment::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_tc1::IfcPipeSegmentTypeEnum::FromString(get_attribute_value(8)); } @@ -12542,7 +12542,7 @@ void Ifc4x3_tc1::IfcPipeSegmentType::setPredefinedType(const ::Ifc4x3_tc1::IfcPi const ifcopenshell::entity& Ifc4x3_tc1::IfcPipeSegmentType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[750]); } -Ifc4x3_tc1::IfcPipeSegmentType Ifc4x3_tc1::IfcPipeSegmentType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcPipeSegmentTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcPipeSegmentTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_tc1::IfcPipeSegmentType Ifc4x3_tc1::IfcPipeSegmentType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcPipeSegmentTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcPipeSegmentTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcPixelTexture int64_t Ifc4x3_tc1::IfcPixelTexture::Width() const { int64_t v = get_attribute_value(5); return v; } @@ -12559,7 +12559,7 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcPixelTexture::Class() { return *((ifc Ifc4x3_tc1::IfcPixelTexture Ifc4x3_tc1::IfcPixelTexture::initialize(bool v1_RepeatS, bool v2_RepeatT, std::optional< std::string > v3_Mode, ::Ifc4x3_tc1::IfcCartesianTransformationOperator2D v4_TextureTransform, std::optional< std::vector< std::string > /*[1:?]*/ > v5_Parameter, int64_t v6_Width, int64_t v7_Height, int64_t v8_ColourComponents, std::vector< boost::dynamic_bitset<> > /*[1:?]*/ v9_Pixel) { set_attribute_value(0, (v1_RepeatS));set_attribute_value(1, (v2_RepeatT)); if (v3_Mode) {set_attribute_value(2, (*v3_Mode)); }set_attribute_value(3, (v4_TextureTransform)); if (v5_Parameter) {set_attribute_value(4, (*v5_Parameter)); }set_attribute_value(5, (v6_Width));set_attribute_value(6, (v7_Height));set_attribute_value(7, (v8_ColourComponents));set_attribute_value(8, (v9_Pixel));; return *this; } // Function implementations for IfcPlacement -::Ifc4x3_tc1::IfcPoint Ifc4x3_tc1::IfcPlacement::Location() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcPoint>(); } +::Ifc4x3_tc1::IfcPoint Ifc4x3_tc1::IfcPlacement::Location() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcPoint>(); } void Ifc4x3_tc1::IfcPlacement::setLocation(const ::Ifc4x3_tc1::IfcPoint& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } @@ -12567,7 +12567,7 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcPlacement::Class() { return *((ifcope Ifc4x3_tc1::IfcPlacement Ifc4x3_tc1::IfcPlacement::initialize(::Ifc4x3_tc1::IfcPoint v1_Location) { set_attribute_value(0, (v1_Location));; return *this; } // Function implementations for IfcPlanarBox -::Ifc4x3_tc1::IfcAxis2Placement Ifc4x3_tc1::IfcPlanarBox::Placement() const { return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3_tc1::IfcAxis2Placement>(); } +::Ifc4x3_tc1::IfcAxis2Placement Ifc4x3_tc1::IfcPlanarBox::Placement() const { return ((express::base)(get_attribute_value(2))).as<::Ifc4x3_tc1::IfcAxis2Placement>(); } void Ifc4x3_tc1::IfcPlanarBox::setPlacement(const ::Ifc4x3_tc1::IfcAxis2Placement& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } @@ -12604,7 +12604,7 @@ void Ifc4x3_tc1::IfcPlateType::setPredefinedType(const ::Ifc4x3_tc1::IfcPlateTyp const ifcopenshell::entity& Ifc4x3_tc1::IfcPlateType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[760]); } -Ifc4x3_tc1::IfcPlateType Ifc4x3_tc1::IfcPlateType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcPlateTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcPlateTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_tc1::IfcPlateType Ifc4x3_tc1::IfcPlateType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcPlateTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcPlateTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcPoint @@ -12613,7 +12613,7 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcPoint::Class() { return *((ifcopenshe Ifc4x3_tc1::IfcPoint Ifc4x3_tc1::IfcPoint::initialize() { ; return *this; } // Function implementations for IfcPointByDistanceExpression -::Ifc4x3_tc1::IfcCurveMeasureSelect Ifc4x3_tc1::IfcPointByDistanceExpression::DistanceAlong() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcCurveMeasureSelect>(); } +::Ifc4x3_tc1::IfcCurveMeasureSelect Ifc4x3_tc1::IfcPointByDistanceExpression::DistanceAlong() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcCurveMeasureSelect>(); } void Ifc4x3_tc1::IfcPointByDistanceExpression::setDistanceAlong(const ::Ifc4x3_tc1::IfcCurveMeasureSelect& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } std::optional< double > Ifc4x3_tc1::IfcPointByDistanceExpression::OffsetLateral() const { if(get_attribute_value(1).isNull()) { return std::nullopt; } double v = get_attribute_value(1); return v; } void Ifc4x3_tc1::IfcPointByDistanceExpression::setOffsetLateral(const std::optional< double >& v) { if (v) {set_attribute_value(1, *v);} else {unset_attribute_value(1);} } @@ -12621,7 +12621,7 @@ std::optional< double > Ifc4x3_tc1::IfcPointByDistanceExpression::OffsetVertical void Ifc4x3_tc1::IfcPointByDistanceExpression::setOffsetVertical(const std::optional< double >& v) { if (v) {set_attribute_value(2, *v);} else {unset_attribute_value(2);} } std::optional< double > Ifc4x3_tc1::IfcPointByDistanceExpression::OffsetLongitudinal() const { if(get_attribute_value(3).isNull()) { return std::nullopt; } double v = get_attribute_value(3); return v; } void Ifc4x3_tc1::IfcPointByDistanceExpression::setOffsetLongitudinal(const std::optional< double >& v) { if (v) {set_attribute_value(3, *v);} else {unset_attribute_value(3);} } -::Ifc4x3_tc1::IfcCurve Ifc4x3_tc1::IfcPointByDistanceExpression::BasisCurve() const { return ((express::Base)(get_attribute_value(4))).as<::Ifc4x3_tc1::IfcCurve>(); } +::Ifc4x3_tc1::IfcCurve Ifc4x3_tc1::IfcPointByDistanceExpression::BasisCurve() const { return ((express::base)(get_attribute_value(4))).as<::Ifc4x3_tc1::IfcCurve>(); } void Ifc4x3_tc1::IfcPointByDistanceExpression::setBasisCurve(const ::Ifc4x3_tc1::IfcCurve& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } @@ -12629,7 +12629,7 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcPointByDistanceExpression::Class() { Ifc4x3_tc1::IfcPointByDistanceExpression Ifc4x3_tc1::IfcPointByDistanceExpression::initialize(::Ifc4x3_tc1::IfcCurveMeasureSelect v1_DistanceAlong, std::optional< double > v2_OffsetLateral, std::optional< double > v3_OffsetVertical, std::optional< double > v4_OffsetLongitudinal, ::Ifc4x3_tc1::IfcCurve v5_BasisCurve) { set_attribute_value(0, (v1_DistanceAlong)); if (v2_OffsetLateral) {set_attribute_value(1, (*v2_OffsetLateral)); } if (v3_OffsetVertical) {set_attribute_value(2, (*v3_OffsetVertical)); } if (v4_OffsetLongitudinal) {set_attribute_value(3, (*v4_OffsetLongitudinal)); }set_attribute_value(4, (v5_BasisCurve));; return *this; } // Function implementations for IfcPointOnCurve -::Ifc4x3_tc1::IfcCurve Ifc4x3_tc1::IfcPointOnCurve::BasisCurve() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcCurve>(); } +::Ifc4x3_tc1::IfcCurve Ifc4x3_tc1::IfcPointOnCurve::BasisCurve() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcCurve>(); } void Ifc4x3_tc1::IfcPointOnCurve::setBasisCurve(const ::Ifc4x3_tc1::IfcCurve& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } double Ifc4x3_tc1::IfcPointOnCurve::PointParameter() const { double v = get_attribute_value(1); return v; } void Ifc4x3_tc1::IfcPointOnCurve::setPointParameter(const double& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } @@ -12639,7 +12639,7 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcPointOnCurve::Class() { return *((ifc Ifc4x3_tc1::IfcPointOnCurve Ifc4x3_tc1::IfcPointOnCurve::initialize(::Ifc4x3_tc1::IfcCurve v1_BasisCurve, double v2_PointParameter) { set_attribute_value(0, (v1_BasisCurve));set_attribute_value(1, (v2_PointParameter));; return *this; } // Function implementations for IfcPointOnSurface -::Ifc4x3_tc1::IfcSurface Ifc4x3_tc1::IfcPointOnSurface::BasisSurface() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcSurface>(); } +::Ifc4x3_tc1::IfcSurface Ifc4x3_tc1::IfcPointOnSurface::BasisSurface() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcSurface>(); } void Ifc4x3_tc1::IfcPointOnSurface::setBasisSurface(const ::Ifc4x3_tc1::IfcSurface& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } double Ifc4x3_tc1::IfcPointOnSurface::PointParameterU() const { double v = get_attribute_value(1); return v; } void Ifc4x3_tc1::IfcPointOnSurface::setPointParameterU(const double& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } @@ -12651,17 +12651,17 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcPointOnSurface::Class() { return *((i Ifc4x3_tc1::IfcPointOnSurface Ifc4x3_tc1::IfcPointOnSurface::initialize(::Ifc4x3_tc1::IfcSurface v1_BasisSurface, double v2_PointParameterU, double v3_PointParameterV) { set_attribute_value(0, (v1_BasisSurface));set_attribute_value(1, (v2_PointParameterU));set_attribute_value(2, (v3_PointParameterV));; return *this; } // Function implementations for IfcPolyLoop -std::vector< ::Ifc4x3_tc1::IfcCartesianPoint > Ifc4x3_tc1::IfcPolyLoop::Polygon() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3_tc1::IfcCartesianPoint>(es); } -void Ifc4x3_tc1::IfcPolyLoop::setPolygon(const std::vector< ::Ifc4x3_tc1::IfcCartesianPoint >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } +std::vector< ::Ifc4x3_tc1::IfcCartesianPoint > Ifc4x3_tc1::IfcPolyLoop::Polygon() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3_tc1::IfcCartesianPoint>(es); } +void Ifc4x3_tc1::IfcPolyLoop::setPolygon(const std::vector< ::Ifc4x3_tc1::IfcCartesianPoint >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } const ifcopenshell::entity& Ifc4x3_tc1::IfcPolyLoop::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[770]); } -Ifc4x3_tc1::IfcPolyLoop Ifc4x3_tc1::IfcPolyLoop::initialize(std::vector< ::Ifc4x3_tc1::IfcCartesianPoint > v1_Polygon) { set_attribute_value(0, cast_vector(v1_Polygon));; return *this; } +Ifc4x3_tc1::IfcPolyLoop Ifc4x3_tc1::IfcPolyLoop::initialize(std::vector< ::Ifc4x3_tc1::IfcCartesianPoint > v1_Polygon) { set_attribute_value(0, cast_vector(v1_Polygon));; return *this; } // Function implementations for IfcPolygonalBoundedHalfSpace -::Ifc4x3_tc1::IfcAxis2Placement3D Ifc4x3_tc1::IfcPolygonalBoundedHalfSpace::Position() const { return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3_tc1::IfcAxis2Placement3D>(); } +::Ifc4x3_tc1::IfcAxis2Placement3D Ifc4x3_tc1::IfcPolygonalBoundedHalfSpace::Position() const { return ((express::base)(get_attribute_value(2))).as<::Ifc4x3_tc1::IfcAxis2Placement3D>(); } void Ifc4x3_tc1::IfcPolygonalBoundedHalfSpace::setPosition(const ::Ifc4x3_tc1::IfcAxis2Placement3D& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } -::Ifc4x3_tc1::IfcBoundedCurve Ifc4x3_tc1::IfcPolygonalBoundedHalfSpace::PolygonalBoundary() const { return ((express::Base)(get_attribute_value(3))).as<::Ifc4x3_tc1::IfcBoundedCurve>(); } +::Ifc4x3_tc1::IfcBoundedCurve Ifc4x3_tc1::IfcPolygonalBoundedHalfSpace::PolygonalBoundary() const { return ((express::base)(get_attribute_value(3))).as<::Ifc4x3_tc1::IfcBoundedCurve>(); } void Ifc4x3_tc1::IfcPolygonalBoundedHalfSpace::setPolygonalBoundary(const ::Ifc4x3_tc1::IfcBoundedCurve& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } @@ -12671,25 +12671,25 @@ Ifc4x3_tc1::IfcPolygonalBoundedHalfSpace Ifc4x3_tc1::IfcPolygonalBoundedHalfSpac // Function implementations for IfcPolygonalFaceSet std::optional< bool > Ifc4x3_tc1::IfcPolygonalFaceSet::Closed() const { if(get_attribute_value(1).isNull()) { return std::nullopt; } bool v = get_attribute_value(1); return v; } void Ifc4x3_tc1::IfcPolygonalFaceSet::setClosed(const std::optional< bool >& v) { if (v) {set_attribute_value(1, *v);} else {unset_attribute_value(1);} } -std::vector< ::Ifc4x3_tc1::IfcIndexedPolygonalFace > Ifc4x3_tc1::IfcPolygonalFaceSet::Faces() const { std::vector es = get_attribute_value(2); return cast_vector<::Ifc4x3_tc1::IfcIndexedPolygonalFace>(es); } -void Ifc4x3_tc1::IfcPolygonalFaceSet::setFaces(const std::vector< ::Ifc4x3_tc1::IfcIndexedPolygonalFace >& v) { set_attribute_value(2, cast_vector(v));if constexpr (false)unset_attribute_value(2); } +std::vector< ::Ifc4x3_tc1::IfcIndexedPolygonalFace > Ifc4x3_tc1::IfcPolygonalFaceSet::Faces() const { std::vector es = get_attribute_value(2); return cast_vector<::Ifc4x3_tc1::IfcIndexedPolygonalFace>(es); } +void Ifc4x3_tc1::IfcPolygonalFaceSet::setFaces(const std::vector< ::Ifc4x3_tc1::IfcIndexedPolygonalFace >& v) { set_attribute_value(2, cast_vector(v));if constexpr (false)unset_attribute_value(2); } std::optional< std::vector< int64_t > /*[1:?]*/ > Ifc4x3_tc1::IfcPolygonalFaceSet::PnIndex() const { if(get_attribute_value(3).isNull()) { return std::nullopt; } std::vector< int64_t > /*[1:?]*/ v = get_attribute_value(3); return v; } void Ifc4x3_tc1::IfcPolygonalFaceSet::setPnIndex(const std::optional< std::vector< int64_t > /*[1:?]*/ >& v) { if (v) {set_attribute_value(3, *v);} else {unset_attribute_value(3);} } const ifcopenshell::entity& Ifc4x3_tc1::IfcPolygonalFaceSet::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[768]); } -Ifc4x3_tc1::IfcPolygonalFaceSet Ifc4x3_tc1::IfcPolygonalFaceSet::initialize(::Ifc4x3_tc1::IfcCartesianPointList3D v1_Coordinates, std::optional< bool > v2_Closed, std::vector< ::Ifc4x3_tc1::IfcIndexedPolygonalFace > v3_Faces, std::optional< std::vector< int64_t > /*[1:?]*/ > v4_PnIndex) { set_attribute_value(0, (v1_Coordinates)); if (v2_Closed) {set_attribute_value(1, (*v2_Closed)); }set_attribute_value(2, cast_vector(v3_Faces)); if (v4_PnIndex) {set_attribute_value(3, (*v4_PnIndex)); }; return *this; } +Ifc4x3_tc1::IfcPolygonalFaceSet Ifc4x3_tc1::IfcPolygonalFaceSet::initialize(::Ifc4x3_tc1::IfcCartesianPointList3D v1_Coordinates, std::optional< bool > v2_Closed, std::vector< ::Ifc4x3_tc1::IfcIndexedPolygonalFace > v3_Faces, std::optional< std::vector< int64_t > /*[1:?]*/ > v4_PnIndex) { set_attribute_value(0, (v1_Coordinates)); if (v2_Closed) {set_attribute_value(1, (*v2_Closed)); }set_attribute_value(2, cast_vector(v3_Faces)); if (v4_PnIndex) {set_attribute_value(3, (*v4_PnIndex)); }; return *this; } // Function implementations for IfcPolyline -std::vector< ::Ifc4x3_tc1::IfcCartesianPoint > Ifc4x3_tc1::IfcPolyline::Points() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3_tc1::IfcCartesianPoint>(es); } -void Ifc4x3_tc1::IfcPolyline::setPoints(const std::vector< ::Ifc4x3_tc1::IfcCartesianPoint >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } +std::vector< ::Ifc4x3_tc1::IfcCartesianPoint > Ifc4x3_tc1::IfcPolyline::Points() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3_tc1::IfcCartesianPoint>(es); } +void Ifc4x3_tc1::IfcPolyline::setPoints(const std::vector< ::Ifc4x3_tc1::IfcCartesianPoint >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } const ifcopenshell::entity& Ifc4x3_tc1::IfcPolyline::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[769]); } -Ifc4x3_tc1::IfcPolyline Ifc4x3_tc1::IfcPolyline::initialize(std::vector< ::Ifc4x3_tc1::IfcCartesianPoint > v1_Points) { set_attribute_value(0, cast_vector(v1_Points));; return *this; } +Ifc4x3_tc1::IfcPolyline Ifc4x3_tc1::IfcPolyline::initialize(std::vector< ::Ifc4x3_tc1::IfcCartesianPoint > v1_Points) { set_attribute_value(0, cast_vector(v1_Points));; return *this; } // Function implementations for IfcPolynomialCurve -::Ifc4x3_tc1::IfcPlacement Ifc4x3_tc1::IfcPolynomialCurve::Position() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcPlacement>(); } +::Ifc4x3_tc1::IfcPlacement Ifc4x3_tc1::IfcPolynomialCurve::Position() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcPlacement>(); } void Ifc4x3_tc1::IfcPolynomialCurve::setPosition(const ::Ifc4x3_tc1::IfcPlacement& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } std::optional< std::vector< double > /*[2:?]*/ > Ifc4x3_tc1::IfcPolynomialCurve::CoefficientsX() const { if(get_attribute_value(1).isNull()) { return std::nullopt; } std::vector< double > /*[2:?]*/ v = get_attribute_value(1); return v; } void Ifc4x3_tc1::IfcPolynomialCurve::setCoefficientsX(const std::optional< std::vector< double > /*[2:?]*/ >& v) { if (v) {set_attribute_value(1, *v);} else {unset_attribute_value(1);} } @@ -12788,14 +12788,14 @@ std::string Ifc4x3_tc1::IfcPresentationLayerAssignment::Name() const { std::str void Ifc4x3_tc1::IfcPresentationLayerAssignment::setName(const std::string& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } std::optional< std::string > Ifc4x3_tc1::IfcPresentationLayerAssignment::Description() const { if(get_attribute_value(1).isNull()) { return std::nullopt; } std::string v = get_attribute_value(1); return v; } void Ifc4x3_tc1::IfcPresentationLayerAssignment::setDescription(const std::optional< std::string >& v) { if (v) {set_attribute_value(1, *v);} else {unset_attribute_value(1);} } -std::vector< ::Ifc4x3_tc1::IfcLayeredItem > Ifc4x3_tc1::IfcPresentationLayerAssignment::AssignedItems() const { std::vector es = get_attribute_value(2); return cast_vector<::Ifc4x3_tc1::IfcLayeredItem>(es); } -void Ifc4x3_tc1::IfcPresentationLayerAssignment::setAssignedItems(const std::vector< ::Ifc4x3_tc1::IfcLayeredItem >& v) { set_attribute_value(2, cast_vector(v));if constexpr (false)unset_attribute_value(2); } +std::vector< ::Ifc4x3_tc1::IfcLayeredItem > Ifc4x3_tc1::IfcPresentationLayerAssignment::AssignedItems() const { std::vector es = get_attribute_value(2); return cast_vector<::Ifc4x3_tc1::IfcLayeredItem>(es); } +void Ifc4x3_tc1::IfcPresentationLayerAssignment::setAssignedItems(const std::vector< ::Ifc4x3_tc1::IfcLayeredItem >& v) { set_attribute_value(2, cast_vector(v));if constexpr (false)unset_attribute_value(2); } std::optional< std::string > Ifc4x3_tc1::IfcPresentationLayerAssignment::Identifier() const { if(get_attribute_value(3).isNull()) { return std::nullopt; } std::string v = get_attribute_value(3); return v; } void Ifc4x3_tc1::IfcPresentationLayerAssignment::setIdentifier(const std::optional< std::string >& v) { if (v) {set_attribute_value(3, *v);} else {unset_attribute_value(3);} } const ifcopenshell::entity& Ifc4x3_tc1::IfcPresentationLayerAssignment::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[789]); } -Ifc4x3_tc1::IfcPresentationLayerAssignment Ifc4x3_tc1::IfcPresentationLayerAssignment::initialize(std::string v1_Name, std::optional< std::string > v2_Description, std::vector< ::Ifc4x3_tc1::IfcLayeredItem > v3_AssignedItems, std::optional< std::string > v4_Identifier) { set_attribute_value(0, (v1_Name)); if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, cast_vector(v3_AssignedItems)); if (v4_Identifier) {set_attribute_value(3, (*v4_Identifier)); }; return *this; } +Ifc4x3_tc1::IfcPresentationLayerAssignment Ifc4x3_tc1::IfcPresentationLayerAssignment::initialize(std::string v1_Name, std::optional< std::string > v2_Description, std::vector< ::Ifc4x3_tc1::IfcLayeredItem > v3_AssignedItems, std::optional< std::string > v4_Identifier) { set_attribute_value(0, (v1_Name)); if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, cast_vector(v3_AssignedItems)); if (v4_Identifier) {set_attribute_value(3, (*v4_Identifier)); }; return *this; } // Function implementations for IfcPresentationLayerWithStyle boost::logic::tribool Ifc4x3_tc1::IfcPresentationLayerWithStyle::LayerOn() const { boost::logic::tribool v = get_attribute_value(4); return v; } @@ -12804,12 +12804,12 @@ boost::logic::tribool Ifc4x3_tc1::IfcPresentationLayerWithStyle::LayerFrozen() c void Ifc4x3_tc1::IfcPresentationLayerWithStyle::setLayerFrozen(const boost::logic::tribool& v) { set_attribute_value(5, v);if constexpr (false)unset_attribute_value(5); } boost::logic::tribool Ifc4x3_tc1::IfcPresentationLayerWithStyle::LayerBlocked() const { boost::logic::tribool v = get_attribute_value(6); return v; } void Ifc4x3_tc1::IfcPresentationLayerWithStyle::setLayerBlocked(const boost::logic::tribool& v) { set_attribute_value(6, v);if constexpr (false)unset_attribute_value(6); } -std::vector< ::Ifc4x3_tc1::IfcPresentationStyle > Ifc4x3_tc1::IfcPresentationLayerWithStyle::LayerStyles() const { std::vector es = get_attribute_value(7); return cast_vector<::Ifc4x3_tc1::IfcPresentationStyle>(es); } -void Ifc4x3_tc1::IfcPresentationLayerWithStyle::setLayerStyles(const std::vector< ::Ifc4x3_tc1::IfcPresentationStyle >& v) { set_attribute_value(7, cast_vector(v));if constexpr (false)unset_attribute_value(7); } +std::vector< ::Ifc4x3_tc1::IfcPresentationStyle > Ifc4x3_tc1::IfcPresentationLayerWithStyle::LayerStyles() const { std::vector es = get_attribute_value(7); return cast_vector<::Ifc4x3_tc1::IfcPresentationStyle>(es); } +void Ifc4x3_tc1::IfcPresentationLayerWithStyle::setLayerStyles(const std::vector< ::Ifc4x3_tc1::IfcPresentationStyle >& v) { set_attribute_value(7, cast_vector(v));if constexpr (false)unset_attribute_value(7); } const ifcopenshell::entity& Ifc4x3_tc1::IfcPresentationLayerWithStyle::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[790]); } -Ifc4x3_tc1::IfcPresentationLayerWithStyle Ifc4x3_tc1::IfcPresentationLayerWithStyle::initialize(std::string v1_Name, std::optional< std::string > v2_Description, std::vector< ::Ifc4x3_tc1::IfcLayeredItem > v3_AssignedItems, std::optional< std::string > v4_Identifier, boost::logic::tribool v5_LayerOn, boost::logic::tribool v6_LayerFrozen, boost::logic::tribool v7_LayerBlocked, std::vector< ::Ifc4x3_tc1::IfcPresentationStyle > v8_LayerStyles) { set_attribute_value(0, (v1_Name)); if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, cast_vector(v3_AssignedItems)); if (v4_Identifier) {set_attribute_value(3, (*v4_Identifier)); }set_attribute_value(4, (v5_LayerOn));set_attribute_value(5, (v6_LayerFrozen));set_attribute_value(6, (v7_LayerBlocked));set_attribute_value(7, cast_vector(v8_LayerStyles));; return *this; } +Ifc4x3_tc1::IfcPresentationLayerWithStyle Ifc4x3_tc1::IfcPresentationLayerWithStyle::initialize(std::string v1_Name, std::optional< std::string > v2_Description, std::vector< ::Ifc4x3_tc1::IfcLayeredItem > v3_AssignedItems, std::optional< std::string > v4_Identifier, boost::logic::tribool v5_LayerOn, boost::logic::tribool v6_LayerFrozen, boost::logic::tribool v7_LayerBlocked, std::vector< ::Ifc4x3_tc1::IfcPresentationStyle > v8_LayerStyles) { set_attribute_value(0, (v1_Name)); if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, cast_vector(v3_AssignedItems)); if (v4_Identifier) {set_attribute_value(3, (*v4_Identifier)); }set_attribute_value(4, (v5_LayerOn));set_attribute_value(5, (v6_LayerFrozen));set_attribute_value(6, (v7_LayerBlocked));set_attribute_value(7, cast_vector(v8_LayerStyles));; return *this; } // Function implementations for IfcPresentationStyle std::optional< std::string > Ifc4x3_tc1::IfcPresentationStyle::Name() const { if(get_attribute_value(0).isNull()) { return std::nullopt; } std::string v = get_attribute_value(0); return v; } @@ -12833,7 +12833,7 @@ void Ifc4x3_tc1::IfcProcedureType::setPredefinedType(const ::Ifc4x3_tc1::IfcProc const ifcopenshell::entity& Ifc4x3_tc1::IfcProcedureType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[794]); } -Ifc4x3_tc1::IfcProcedureType Ifc4x3_tc1::IfcProcedureType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::string > v7_Identification, std::optional< std::string > v8_LongDescription, std::optional< std::string > v9_ProcessType, ::Ifc4x3_tc1::IfcProcedureTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_Identification) {set_attribute_value(6, (*v7_Identification)); } if (v8_LongDescription) {set_attribute_value(7, (*v8_LongDescription)); } if (v9_ProcessType) {set_attribute_value(8, (*v9_ProcessType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcProcedureTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_tc1::IfcProcedureType Ifc4x3_tc1::IfcProcedureType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::string > v7_Identification, std::optional< std::string > v8_LongDescription, std::optional< std::string > v9_ProcessType, ::Ifc4x3_tc1::IfcProcedureTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_Identification) {set_attribute_value(6, (*v7_Identification)); } if (v8_LongDescription) {set_attribute_value(7, (*v8_LongDescription)); } if (v9_ProcessType) {set_attribute_value(8, (*v9_ProcessType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcProcedureTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcProcess std::optional< std::string > Ifc4x3_tc1::IfcProcess::Identification() const { if(get_attribute_value(5).isNull()) { return std::nullopt; } std::string v = get_attribute_value(5); return v; } @@ -12849,9 +12849,9 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcProcess::Class() { return *((ifcopens Ifc4x3_tc1::IfcProcess Ifc4x3_tc1::IfcProcess::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, std::optional< std::string > v6_Identification, std::optional< std::string > v7_LongDescription) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); } if (v6_Identification) {set_attribute_value(5, (*v6_Identification)); } if (v7_LongDescription) {set_attribute_value(6, (*v7_LongDescription)); }; return *this; } // Function implementations for IfcProduct -::Ifc4x3_tc1::IfcObjectPlacement Ifc4x3_tc1::IfcProduct::ObjectPlacement() const { if(get_attribute_value(5).isNull()) { return ::Ifc4x3_tc1::IfcObjectPlacement{}; } return ((express::Base)(get_attribute_value(5))).as<::Ifc4x3_tc1::IfcObjectPlacement>(); } +::Ifc4x3_tc1::IfcObjectPlacement Ifc4x3_tc1::IfcProduct::ObjectPlacement() const { if(get_attribute_value(5).isNull()) { return ::Ifc4x3_tc1::IfcObjectPlacement{}; } return ((express::base)(get_attribute_value(5))).as<::Ifc4x3_tc1::IfcObjectPlacement>(); } void Ifc4x3_tc1::IfcProduct::setObjectPlacement(const ::Ifc4x3_tc1::IfcObjectPlacement& v) { set_attribute_value(5, v);if constexpr (false)unset_attribute_value(5); } -::Ifc4x3_tc1::IfcProductRepresentation Ifc4x3_tc1::IfcProduct::Representation() const { if(get_attribute_value(6).isNull()) { return ::Ifc4x3_tc1::IfcProductRepresentation{}; } return ((express::Base)(get_attribute_value(6))).as<::Ifc4x3_tc1::IfcProductRepresentation>(); } +::Ifc4x3_tc1::IfcProductRepresentation Ifc4x3_tc1::IfcProduct::Representation() const { if(get_attribute_value(6).isNull()) { return ::Ifc4x3_tc1::IfcProductRepresentation{}; } return ((express::base)(get_attribute_value(6))).as<::Ifc4x3_tc1::IfcProductRepresentation>(); } void Ifc4x3_tc1::IfcProduct::setRepresentation(const ::Ifc4x3_tc1::IfcProductRepresentation& v) { set_attribute_value(6, v);if constexpr (false)unset_attribute_value(6); } std::vector<::Ifc4x3_tc1::IfcRelAssignsToProduct> Ifc4x3_tc1::IfcProduct::ReferencedBy() const { return cast_vector(file()->get_inverse(data()->id(), IFC4X3_TC1_types[904], 6)); } @@ -12867,19 +12867,19 @@ std::vector<::Ifc4x3_tc1::IfcProduct> Ifc4x3_tc1::IfcProductDefinitionShape::Sha std::vector<::Ifc4x3_tc1::IfcShapeAspect> Ifc4x3_tc1::IfcProductDefinitionShape::HasShapeAspects() const { return cast_vector(file()->get_inverse(data()->id(), IFC4X3_TC1_types[1003], 4)); } const ifcopenshell::entity& Ifc4x3_tc1::IfcProductDefinitionShape::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[799]); } -Ifc4x3_tc1::IfcProductDefinitionShape Ifc4x3_tc1::IfcProductDefinitionShape::initialize(std::optional< std::string > v1_Name, std::optional< std::string > v2_Description, std::vector< ::Ifc4x3_tc1::IfcRepresentation > v3_Representations) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); } if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, cast_vector(v3_Representations));; return *this; } +Ifc4x3_tc1::IfcProductDefinitionShape Ifc4x3_tc1::IfcProductDefinitionShape::initialize(std::optional< std::string > v1_Name, std::optional< std::string > v2_Description, std::vector< ::Ifc4x3_tc1::IfcRepresentation > v3_Representations) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); } if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, cast_vector(v3_Representations));; return *this; } // Function implementations for IfcProductRepresentation std::optional< std::string > Ifc4x3_tc1::IfcProductRepresentation::Name() const { if(get_attribute_value(0).isNull()) { return std::nullopt; } std::string v = get_attribute_value(0); return v; } void Ifc4x3_tc1::IfcProductRepresentation::setName(const std::optional< std::string >& v) { if (v) {set_attribute_value(0, *v);} else {unset_attribute_value(0);} } std::optional< std::string > Ifc4x3_tc1::IfcProductRepresentation::Description() const { if(get_attribute_value(1).isNull()) { return std::nullopt; } std::string v = get_attribute_value(1); return v; } void Ifc4x3_tc1::IfcProductRepresentation::setDescription(const std::optional< std::string >& v) { if (v) {set_attribute_value(1, *v);} else {unset_attribute_value(1);} } -std::vector< ::Ifc4x3_tc1::IfcRepresentation > Ifc4x3_tc1::IfcProductRepresentation::Representations() const { std::vector es = get_attribute_value(2); return cast_vector<::Ifc4x3_tc1::IfcRepresentation>(es); } -void Ifc4x3_tc1::IfcProductRepresentation::setRepresentations(const std::vector< ::Ifc4x3_tc1::IfcRepresentation >& v) { set_attribute_value(2, cast_vector(v));if constexpr (false)unset_attribute_value(2); } +std::vector< ::Ifc4x3_tc1::IfcRepresentation > Ifc4x3_tc1::IfcProductRepresentation::Representations() const { std::vector es = get_attribute_value(2); return cast_vector<::Ifc4x3_tc1::IfcRepresentation>(es); } +void Ifc4x3_tc1::IfcProductRepresentation::setRepresentations(const std::vector< ::Ifc4x3_tc1::IfcRepresentation >& v) { set_attribute_value(2, cast_vector(v));if constexpr (false)unset_attribute_value(2); } const ifcopenshell::entity& Ifc4x3_tc1::IfcProductRepresentation::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[800]); } -Ifc4x3_tc1::IfcProductRepresentation Ifc4x3_tc1::IfcProductRepresentation::initialize(std::optional< std::string > v1_Name, std::optional< std::string > v2_Description, std::vector< ::Ifc4x3_tc1::IfcRepresentation > v3_Representations) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); } if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, cast_vector(v3_Representations));; return *this; } +Ifc4x3_tc1::IfcProductRepresentation Ifc4x3_tc1::IfcProductRepresentation::initialize(std::optional< std::string > v1_Name, std::optional< std::string > v2_Description, std::vector< ::Ifc4x3_tc1::IfcRepresentation > v3_Representations) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); } if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, cast_vector(v3_Representations));; return *this; } // Function implementations for IfcProfileDef ::Ifc4x3_tc1::IfcProfileTypeEnum::Value Ifc4x3_tc1::IfcProfileDef::ProfileType() const { return ::Ifc4x3_tc1::IfcProfileTypeEnum::FromString(get_attribute_value(0)); } @@ -12894,24 +12894,24 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcProfileDef::Class() { return *((ifcop Ifc4x3_tc1::IfcProfileDef Ifc4x3_tc1::IfcProfileDef::initialize(::Ifc4x3_tc1::IfcProfileTypeEnum::Value v1_ProfileType, std::optional< std::string > v2_ProfileName) { set_attribute_value(0, (enumeration_reference(&::Ifc4x3_tc1::IfcProfileTypeEnum::Class(),(size_t)v1_ProfileType))); if (v2_ProfileName) {set_attribute_value(1, (*v2_ProfileName)); }; return *this; } // Function implementations for IfcProfileProperties -::Ifc4x3_tc1::IfcProfileDef Ifc4x3_tc1::IfcProfileProperties::ProfileDefinition() const { return ((express::Base)(get_attribute_value(3))).as<::Ifc4x3_tc1::IfcProfileDef>(); } +::Ifc4x3_tc1::IfcProfileDef Ifc4x3_tc1::IfcProfileProperties::ProfileDefinition() const { return ((express::base)(get_attribute_value(3))).as<::Ifc4x3_tc1::IfcProfileDef>(); } void Ifc4x3_tc1::IfcProfileProperties::setProfileDefinition(const ::Ifc4x3_tc1::IfcProfileDef& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } const ifcopenshell::entity& Ifc4x3_tc1::IfcProfileProperties::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[804]); } -Ifc4x3_tc1::IfcProfileProperties Ifc4x3_tc1::IfcProfileProperties::initialize(std::optional< std::string > v1_Name, std::optional< std::string > v2_Description, std::vector< ::Ifc4x3_tc1::IfcProperty > v3_Properties, ::Ifc4x3_tc1::IfcProfileDef v4_ProfileDefinition) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); } if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, cast_vector(v3_Properties));set_attribute_value(3, (v4_ProfileDefinition));; return *this; } +Ifc4x3_tc1::IfcProfileProperties Ifc4x3_tc1::IfcProfileProperties::initialize(std::optional< std::string > v1_Name, std::optional< std::string > v2_Description, std::vector< ::Ifc4x3_tc1::IfcProperty > v3_Properties, ::Ifc4x3_tc1::IfcProfileDef v4_ProfileDefinition) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); } if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, cast_vector(v3_Properties));set_attribute_value(3, (v4_ProfileDefinition));; return *this; } // Function implementations for IfcProject const ifcopenshell::entity& Ifc4x3_tc1::IfcProject::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[806]); } -Ifc4x3_tc1::IfcProject Ifc4x3_tc1::IfcProject::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, std::optional< std::string > v6_LongName, std::optional< std::string > v7_Phase, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationContext > > v8_RepresentationContexts, ::Ifc4x3_tc1::IfcUnitAssignment v9_UnitsInContext) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); } if (v6_LongName) {set_attribute_value(5, (*v6_LongName)); } if (v7_Phase) {set_attribute_value(6, (*v7_Phase)); } if (v8_RepresentationContexts) {set_attribute_value(7, cast_vector(*v8_RepresentationContexts)); }set_attribute_value(8, (v9_UnitsInContext));; return *this; } +Ifc4x3_tc1::IfcProject Ifc4x3_tc1::IfcProject::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, std::optional< std::string > v6_LongName, std::optional< std::string > v7_Phase, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationContext > > v8_RepresentationContexts, ::Ifc4x3_tc1::IfcUnitAssignment v9_UnitsInContext) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); } if (v6_LongName) {set_attribute_value(5, (*v6_LongName)); } if (v7_Phase) {set_attribute_value(6, (*v7_Phase)); } if (v8_RepresentationContexts) {set_attribute_value(7, cast_vector(*v8_RepresentationContexts)); }set_attribute_value(8, (v9_UnitsInContext));; return *this; } // Function implementations for IfcProjectLibrary const ifcopenshell::entity& Ifc4x3_tc1::IfcProjectLibrary::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[811]); } -Ifc4x3_tc1::IfcProjectLibrary Ifc4x3_tc1::IfcProjectLibrary::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, std::optional< std::string > v6_LongName, std::optional< std::string > v7_Phase, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationContext > > v8_RepresentationContexts, ::Ifc4x3_tc1::IfcUnitAssignment v9_UnitsInContext) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); } if (v6_LongName) {set_attribute_value(5, (*v6_LongName)); } if (v7_Phase) {set_attribute_value(6, (*v7_Phase)); } if (v8_RepresentationContexts) {set_attribute_value(7, cast_vector(*v8_RepresentationContexts)); }set_attribute_value(8, (v9_UnitsInContext));; return *this; } +Ifc4x3_tc1::IfcProjectLibrary Ifc4x3_tc1::IfcProjectLibrary::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, std::optional< std::string > v6_LongName, std::optional< std::string > v7_Phase, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationContext > > v8_RepresentationContexts, ::Ifc4x3_tc1::IfcUnitAssignment v9_UnitsInContext) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); } if (v6_LongName) {set_attribute_value(5, (*v6_LongName)); } if (v7_Phase) {set_attribute_value(6, (*v7_Phase)); } if (v8_RepresentationContexts) {set_attribute_value(7, cast_vector(*v8_RepresentationContexts)); }set_attribute_value(8, (v9_UnitsInContext));; return *this; } // Function implementations for IfcProjectOrder std::optional< ::Ifc4x3_tc1::IfcProjectOrderTypeEnum::Value > Ifc4x3_tc1::IfcProjectOrder::PredefinedType() const { if(get_attribute_value(6).isNull()) { return std::nullopt; } return ::Ifc4x3_tc1::IfcProjectOrderTypeEnum::FromString(get_attribute_value(6)); } @@ -12930,7 +12930,7 @@ std::optional< std::string > Ifc4x3_tc1::IfcProjectedCRS::MapProjection() const void Ifc4x3_tc1::IfcProjectedCRS::setMapProjection(const std::optional< std::string >& v) { if (v) {set_attribute_value(4, *v);} else {unset_attribute_value(4);} } std::optional< std::string > Ifc4x3_tc1::IfcProjectedCRS::MapZone() const { if(get_attribute_value(5).isNull()) { return std::nullopt; } std::string v = get_attribute_value(5); return v; } void Ifc4x3_tc1::IfcProjectedCRS::setMapZone(const std::optional< std::string >& v) { if (v) {set_attribute_value(5, *v);} else {unset_attribute_value(5);} } -::Ifc4x3_tc1::IfcNamedUnit Ifc4x3_tc1::IfcProjectedCRS::MapUnit() const { if(get_attribute_value(6).isNull()) { return ::Ifc4x3_tc1::IfcNamedUnit{}; } return ((express::Base)(get_attribute_value(6))).as<::Ifc4x3_tc1::IfcNamedUnit>(); } +::Ifc4x3_tc1::IfcNamedUnit Ifc4x3_tc1::IfcProjectedCRS::MapUnit() const { if(get_attribute_value(6).isNull()) { return ::Ifc4x3_tc1::IfcNamedUnit{}; } return ((express::base)(get_attribute_value(6))).as<::Ifc4x3_tc1::IfcNamedUnit>(); } void Ifc4x3_tc1::IfcProjectedCRS::setMapUnit(const ::Ifc4x3_tc1::IfcNamedUnit& v) { set_attribute_value(6, v);if constexpr (false)unset_attribute_value(6); } @@ -12969,13 +12969,13 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcPropertyAbstraction::Class() { return Ifc4x3_tc1::IfcPropertyAbstraction Ifc4x3_tc1::IfcPropertyAbstraction::initialize() { ; return *this; } // Function implementations for IfcPropertyBoundedValue -::Ifc4x3_tc1::IfcValue Ifc4x3_tc1::IfcPropertyBoundedValue::UpperBoundValue() const { if(get_attribute_value(2).isNull()) { return ::Ifc4x3_tc1::IfcValue{}; } return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3_tc1::IfcValue>(); } +::Ifc4x3_tc1::IfcValue Ifc4x3_tc1::IfcPropertyBoundedValue::UpperBoundValue() const { if(get_attribute_value(2).isNull()) { return ::Ifc4x3_tc1::IfcValue{}; } return ((express::base)(get_attribute_value(2))).as<::Ifc4x3_tc1::IfcValue>(); } void Ifc4x3_tc1::IfcPropertyBoundedValue::setUpperBoundValue(const ::Ifc4x3_tc1::IfcValue& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } -::Ifc4x3_tc1::IfcValue Ifc4x3_tc1::IfcPropertyBoundedValue::LowerBoundValue() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3_tc1::IfcValue{}; } return ((express::Base)(get_attribute_value(3))).as<::Ifc4x3_tc1::IfcValue>(); } +::Ifc4x3_tc1::IfcValue Ifc4x3_tc1::IfcPropertyBoundedValue::LowerBoundValue() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3_tc1::IfcValue{}; } return ((express::base)(get_attribute_value(3))).as<::Ifc4x3_tc1::IfcValue>(); } void Ifc4x3_tc1::IfcPropertyBoundedValue::setLowerBoundValue(const ::Ifc4x3_tc1::IfcValue& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } -::Ifc4x3_tc1::IfcUnit Ifc4x3_tc1::IfcPropertyBoundedValue::Unit() const { if(get_attribute_value(4).isNull()) { return ::Ifc4x3_tc1::IfcUnit{}; } return ((express::Base)(get_attribute_value(4))).as<::Ifc4x3_tc1::IfcUnit>(); } +::Ifc4x3_tc1::IfcUnit Ifc4x3_tc1::IfcPropertyBoundedValue::Unit() const { if(get_attribute_value(4).isNull()) { return ::Ifc4x3_tc1::IfcUnit{}; } return ((express::base)(get_attribute_value(4))).as<::Ifc4x3_tc1::IfcUnit>(); } void Ifc4x3_tc1::IfcPropertyBoundedValue::setUnit(const ::Ifc4x3_tc1::IfcUnit& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } -::Ifc4x3_tc1::IfcValue Ifc4x3_tc1::IfcPropertyBoundedValue::SetPointValue() const { if(get_attribute_value(5).isNull()) { return ::Ifc4x3_tc1::IfcValue{}; } return ((express::Base)(get_attribute_value(5))).as<::Ifc4x3_tc1::IfcValue>(); } +::Ifc4x3_tc1::IfcValue Ifc4x3_tc1::IfcPropertyBoundedValue::SetPointValue() const { if(get_attribute_value(5).isNull()) { return ::Ifc4x3_tc1::IfcValue{}; } return ((express::base)(get_attribute_value(5))).as<::Ifc4x3_tc1::IfcValue>(); } void Ifc4x3_tc1::IfcPropertyBoundedValue::setSetPointValue(const ::Ifc4x3_tc1::IfcValue& v) { set_attribute_value(5, v);if constexpr (false)unset_attribute_value(5); } @@ -12991,9 +12991,9 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcPropertyDefinition::Class() { return Ifc4x3_tc1::IfcPropertyDefinition Ifc4x3_tc1::IfcPropertyDefinition::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }; return *this; } // Function implementations for IfcPropertyDependencyRelationship -::Ifc4x3_tc1::IfcProperty Ifc4x3_tc1::IfcPropertyDependencyRelationship::DependingProperty() const { return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3_tc1::IfcProperty>(); } +::Ifc4x3_tc1::IfcProperty Ifc4x3_tc1::IfcPropertyDependencyRelationship::DependingProperty() const { return ((express::base)(get_attribute_value(2))).as<::Ifc4x3_tc1::IfcProperty>(); } void Ifc4x3_tc1::IfcPropertyDependencyRelationship::setDependingProperty(const ::Ifc4x3_tc1::IfcProperty& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } -::Ifc4x3_tc1::IfcProperty Ifc4x3_tc1::IfcPropertyDependencyRelationship::DependantProperty() const { return ((express::Base)(get_attribute_value(3))).as<::Ifc4x3_tc1::IfcProperty>(); } +::Ifc4x3_tc1::IfcProperty Ifc4x3_tc1::IfcPropertyDependencyRelationship::DependantProperty() const { return ((express::base)(get_attribute_value(3))).as<::Ifc4x3_tc1::IfcProperty>(); } void Ifc4x3_tc1::IfcPropertyDependencyRelationship::setDependantProperty(const ::Ifc4x3_tc1::IfcProperty& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } std::optional< std::string > Ifc4x3_tc1::IfcPropertyDependencyRelationship::Expression() const { if(get_attribute_value(4).isNull()) { return std::nullopt; } std::string v = get_attribute_value(4); return v; } void Ifc4x3_tc1::IfcPropertyDependencyRelationship::setExpression(const std::optional< std::string >& v) { if (v) {set_attribute_value(4, *v);} else {unset_attribute_value(4);} } @@ -13003,41 +13003,41 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcPropertyDependencyRelationship::Class Ifc4x3_tc1::IfcPropertyDependencyRelationship Ifc4x3_tc1::IfcPropertyDependencyRelationship::initialize(std::optional< std::string > v1_Name, std::optional< std::string > v2_Description, ::Ifc4x3_tc1::IfcProperty v3_DependingProperty, ::Ifc4x3_tc1::IfcProperty v4_DependantProperty, std::optional< std::string > v5_Expression) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); } if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, (v3_DependingProperty));set_attribute_value(3, (v4_DependantProperty)); if (v5_Expression) {set_attribute_value(4, (*v5_Expression)); }; return *this; } // Function implementations for IfcPropertyEnumeratedValue -std::optional< std::vector< ::Ifc4x3_tc1::IfcValue > > Ifc4x3_tc1::IfcPropertyEnumeratedValue::EnumerationValues() const { if(get_attribute_value(2).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(2); return cast_vector<::Ifc4x3_tc1::IfcValue>(es); } -void Ifc4x3_tc1::IfcPropertyEnumeratedValue::setEnumerationValues(const std::optional< std::vector< ::Ifc4x3_tc1::IfcValue > >& v) { if (v) {set_attribute_value(2, cast_vector(*v));} else {unset_attribute_value(2);} } -::Ifc4x3_tc1::IfcPropertyEnumeration Ifc4x3_tc1::IfcPropertyEnumeratedValue::EnumerationReference() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3_tc1::IfcPropertyEnumeration{}; } return ((express::Base)(get_attribute_value(3))).as<::Ifc4x3_tc1::IfcPropertyEnumeration>(); } +std::optional< std::vector< ::Ifc4x3_tc1::IfcValue > > Ifc4x3_tc1::IfcPropertyEnumeratedValue::EnumerationValues() const { if(get_attribute_value(2).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(2); return cast_vector<::Ifc4x3_tc1::IfcValue>(es); } +void Ifc4x3_tc1::IfcPropertyEnumeratedValue::setEnumerationValues(const std::optional< std::vector< ::Ifc4x3_tc1::IfcValue > >& v) { if (v) {set_attribute_value(2, cast_vector(*v));} else {unset_attribute_value(2);} } +::Ifc4x3_tc1::IfcPropertyEnumeration Ifc4x3_tc1::IfcPropertyEnumeratedValue::EnumerationReference() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3_tc1::IfcPropertyEnumeration{}; } return ((express::base)(get_attribute_value(3))).as<::Ifc4x3_tc1::IfcPropertyEnumeration>(); } void Ifc4x3_tc1::IfcPropertyEnumeratedValue::setEnumerationReference(const ::Ifc4x3_tc1::IfcPropertyEnumeration& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } const ifcopenshell::entity& Ifc4x3_tc1::IfcPropertyEnumeratedValue::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[819]); } -Ifc4x3_tc1::IfcPropertyEnumeratedValue Ifc4x3_tc1::IfcPropertyEnumeratedValue::initialize(std::string v1_Name, std::optional< std::string > v2_Specification, std::optional< std::vector< ::Ifc4x3_tc1::IfcValue > > v3_EnumerationValues, ::Ifc4x3_tc1::IfcPropertyEnumeration v4_EnumerationReference) { set_attribute_value(0, (v1_Name)); if (v2_Specification) {set_attribute_value(1, (*v2_Specification)); } if (v3_EnumerationValues) {set_attribute_value(2, cast_vector(*v3_EnumerationValues)); }set_attribute_value(3, (v4_EnumerationReference));; return *this; } +Ifc4x3_tc1::IfcPropertyEnumeratedValue Ifc4x3_tc1::IfcPropertyEnumeratedValue::initialize(std::string v1_Name, std::optional< std::string > v2_Specification, std::optional< std::vector< ::Ifc4x3_tc1::IfcValue > > v3_EnumerationValues, ::Ifc4x3_tc1::IfcPropertyEnumeration v4_EnumerationReference) { set_attribute_value(0, (v1_Name)); if (v2_Specification) {set_attribute_value(1, (*v2_Specification)); } if (v3_EnumerationValues) {set_attribute_value(2, cast_vector(*v3_EnumerationValues)); }set_attribute_value(3, (v4_EnumerationReference));; return *this; } // Function implementations for IfcPropertyEnumeration std::string Ifc4x3_tc1::IfcPropertyEnumeration::Name() const { std::string v = get_attribute_value(0); return v; } void Ifc4x3_tc1::IfcPropertyEnumeration::setName(const std::string& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } -std::vector< ::Ifc4x3_tc1::IfcValue > Ifc4x3_tc1::IfcPropertyEnumeration::EnumerationValues() const { std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3_tc1::IfcValue>(es); } -void Ifc4x3_tc1::IfcPropertyEnumeration::setEnumerationValues(const std::vector< ::Ifc4x3_tc1::IfcValue >& v) { set_attribute_value(1, cast_vector(v));if constexpr (false)unset_attribute_value(1); } -::Ifc4x3_tc1::IfcUnit Ifc4x3_tc1::IfcPropertyEnumeration::Unit() const { if(get_attribute_value(2).isNull()) { return ::Ifc4x3_tc1::IfcUnit{}; } return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3_tc1::IfcUnit>(); } +std::vector< ::Ifc4x3_tc1::IfcValue > Ifc4x3_tc1::IfcPropertyEnumeration::EnumerationValues() const { std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3_tc1::IfcValue>(es); } +void Ifc4x3_tc1::IfcPropertyEnumeration::setEnumerationValues(const std::vector< ::Ifc4x3_tc1::IfcValue >& v) { set_attribute_value(1, cast_vector(v));if constexpr (false)unset_attribute_value(1); } +::Ifc4x3_tc1::IfcUnit Ifc4x3_tc1::IfcPropertyEnumeration::Unit() const { if(get_attribute_value(2).isNull()) { return ::Ifc4x3_tc1::IfcUnit{}; } return ((express::base)(get_attribute_value(2))).as<::Ifc4x3_tc1::IfcUnit>(); } void Ifc4x3_tc1::IfcPropertyEnumeration::setUnit(const ::Ifc4x3_tc1::IfcUnit& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } const ifcopenshell::entity& Ifc4x3_tc1::IfcPropertyEnumeration::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[820]); } -Ifc4x3_tc1::IfcPropertyEnumeration Ifc4x3_tc1::IfcPropertyEnumeration::initialize(std::string v1_Name, std::vector< ::Ifc4x3_tc1::IfcValue > v2_EnumerationValues, ::Ifc4x3_tc1::IfcUnit v3_Unit) { set_attribute_value(0, (v1_Name));set_attribute_value(1, cast_vector(v2_EnumerationValues));set_attribute_value(2, (v3_Unit));; return *this; } +Ifc4x3_tc1::IfcPropertyEnumeration Ifc4x3_tc1::IfcPropertyEnumeration::initialize(std::string v1_Name, std::vector< ::Ifc4x3_tc1::IfcValue > v2_EnumerationValues, ::Ifc4x3_tc1::IfcUnit v3_Unit) { set_attribute_value(0, (v1_Name));set_attribute_value(1, cast_vector(v2_EnumerationValues));set_attribute_value(2, (v3_Unit));; return *this; } // Function implementations for IfcPropertyListValue -std::optional< std::vector< ::Ifc4x3_tc1::IfcValue > > Ifc4x3_tc1::IfcPropertyListValue::ListValues() const { if(get_attribute_value(2).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(2); return cast_vector<::Ifc4x3_tc1::IfcValue>(es); } -void Ifc4x3_tc1::IfcPropertyListValue::setListValues(const std::optional< std::vector< ::Ifc4x3_tc1::IfcValue > >& v) { if (v) {set_attribute_value(2, cast_vector(*v));} else {unset_attribute_value(2);} } -::Ifc4x3_tc1::IfcUnit Ifc4x3_tc1::IfcPropertyListValue::Unit() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3_tc1::IfcUnit{}; } return ((express::Base)(get_attribute_value(3))).as<::Ifc4x3_tc1::IfcUnit>(); } +std::optional< std::vector< ::Ifc4x3_tc1::IfcValue > > Ifc4x3_tc1::IfcPropertyListValue::ListValues() const { if(get_attribute_value(2).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(2); return cast_vector<::Ifc4x3_tc1::IfcValue>(es); } +void Ifc4x3_tc1::IfcPropertyListValue::setListValues(const std::optional< std::vector< ::Ifc4x3_tc1::IfcValue > >& v) { if (v) {set_attribute_value(2, cast_vector(*v));} else {unset_attribute_value(2);} } +::Ifc4x3_tc1::IfcUnit Ifc4x3_tc1::IfcPropertyListValue::Unit() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3_tc1::IfcUnit{}; } return ((express::base)(get_attribute_value(3))).as<::Ifc4x3_tc1::IfcUnit>(); } void Ifc4x3_tc1::IfcPropertyListValue::setUnit(const ::Ifc4x3_tc1::IfcUnit& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } const ifcopenshell::entity& Ifc4x3_tc1::IfcPropertyListValue::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[821]); } -Ifc4x3_tc1::IfcPropertyListValue Ifc4x3_tc1::IfcPropertyListValue::initialize(std::string v1_Name, std::optional< std::string > v2_Specification, std::optional< std::vector< ::Ifc4x3_tc1::IfcValue > > v3_ListValues, ::Ifc4x3_tc1::IfcUnit v4_Unit) { set_attribute_value(0, (v1_Name)); if (v2_Specification) {set_attribute_value(1, (*v2_Specification)); } if (v3_ListValues) {set_attribute_value(2, cast_vector(*v3_ListValues)); }set_attribute_value(3, (v4_Unit));; return *this; } +Ifc4x3_tc1::IfcPropertyListValue Ifc4x3_tc1::IfcPropertyListValue::initialize(std::string v1_Name, std::optional< std::string > v2_Specification, std::optional< std::vector< ::Ifc4x3_tc1::IfcValue > > v3_ListValues, ::Ifc4x3_tc1::IfcUnit v4_Unit) { set_attribute_value(0, (v1_Name)); if (v2_Specification) {set_attribute_value(1, (*v2_Specification)); } if (v3_ListValues) {set_attribute_value(2, cast_vector(*v3_ListValues)); }set_attribute_value(3, (v4_Unit));; return *this; } // Function implementations for IfcPropertyReferenceValue std::optional< std::string > Ifc4x3_tc1::IfcPropertyReferenceValue::UsageName() const { if(get_attribute_value(2).isNull()) { return std::nullopt; } std::string v = get_attribute_value(2); return v; } void Ifc4x3_tc1::IfcPropertyReferenceValue::setUsageName(const std::optional< std::string >& v) { if (v) {set_attribute_value(2, *v);} else {unset_attribute_value(2);} } -::Ifc4x3_tc1::IfcObjectReferenceSelect Ifc4x3_tc1::IfcPropertyReferenceValue::PropertyReference() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3_tc1::IfcObjectReferenceSelect{}; } return ((express::Base)(get_attribute_value(3))).as<::Ifc4x3_tc1::IfcObjectReferenceSelect>(); } +::Ifc4x3_tc1::IfcObjectReferenceSelect Ifc4x3_tc1::IfcPropertyReferenceValue::PropertyReference() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3_tc1::IfcObjectReferenceSelect{}; } return ((express::base)(get_attribute_value(3))).as<::Ifc4x3_tc1::IfcObjectReferenceSelect>(); } void Ifc4x3_tc1::IfcPropertyReferenceValue::setPropertyReference(const ::Ifc4x3_tc1::IfcObjectReferenceSelect& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } @@ -13045,12 +13045,12 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcPropertyReferenceValue::Class() { ret Ifc4x3_tc1::IfcPropertyReferenceValue Ifc4x3_tc1::IfcPropertyReferenceValue::initialize(std::string v1_Name, std::optional< std::string > v2_Specification, std::optional< std::string > v3_UsageName, ::Ifc4x3_tc1::IfcObjectReferenceSelect v4_PropertyReference) { set_attribute_value(0, (v1_Name)); if (v2_Specification) {set_attribute_value(1, (*v2_Specification)); } if (v3_UsageName) {set_attribute_value(2, (*v3_UsageName)); }set_attribute_value(3, (v4_PropertyReference));; return *this; } // Function implementations for IfcPropertySet -std::vector< ::Ifc4x3_tc1::IfcProperty > Ifc4x3_tc1::IfcPropertySet::HasProperties() const { std::vector es = get_attribute_value(4); return cast_vector<::Ifc4x3_tc1::IfcProperty>(es); } -void Ifc4x3_tc1::IfcPropertySet::setHasProperties(const std::vector< ::Ifc4x3_tc1::IfcProperty >& v) { set_attribute_value(4, cast_vector(v));if constexpr (false)unset_attribute_value(4); } +std::vector< ::Ifc4x3_tc1::IfcProperty > Ifc4x3_tc1::IfcPropertySet::HasProperties() const { std::vector es = get_attribute_value(4); return cast_vector<::Ifc4x3_tc1::IfcProperty>(es); } +void Ifc4x3_tc1::IfcPropertySet::setHasProperties(const std::vector< ::Ifc4x3_tc1::IfcProperty >& v) { set_attribute_value(4, cast_vector(v));if constexpr (false)unset_attribute_value(4); } const ifcopenshell::entity& Ifc4x3_tc1::IfcPropertySet::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[823]); } -Ifc4x3_tc1::IfcPropertySet Ifc4x3_tc1::IfcPropertySet::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3_tc1::IfcProperty > v5_HasProperties) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_HasProperties));; return *this; } +Ifc4x3_tc1::IfcPropertySet Ifc4x3_tc1::IfcPropertySet::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3_tc1::IfcProperty > v5_HasProperties) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_HasProperties));; return *this; } // Function implementations for IfcPropertySetDefinition @@ -13066,18 +13066,18 @@ std::optional< ::Ifc4x3_tc1::IfcPropertySetTemplateTypeEnum::Value > Ifc4x3_tc1: void Ifc4x3_tc1::IfcPropertySetTemplate::setTemplateType(const std::optional< ::Ifc4x3_tc1::IfcPropertySetTemplateTypeEnum::Value >& v) { if (v) {set_attribute_value(4, enumeration_reference(&::Ifc4x3_tc1::IfcPropertySetTemplateTypeEnum::Class(), (size_t) *v));} else {unset_attribute_value(4);} } std::optional< std::string > Ifc4x3_tc1::IfcPropertySetTemplate::ApplicableEntity() const { if(get_attribute_value(5).isNull()) { return std::nullopt; } std::string v = get_attribute_value(5); return v; } void Ifc4x3_tc1::IfcPropertySetTemplate::setApplicableEntity(const std::optional< std::string >& v) { if (v) {set_attribute_value(5, *v);} else {unset_attribute_value(5);} } -std::vector< ::Ifc4x3_tc1::IfcPropertyTemplate > Ifc4x3_tc1::IfcPropertySetTemplate::HasPropertyTemplates() const { std::vector es = get_attribute_value(6); return cast_vector<::Ifc4x3_tc1::IfcPropertyTemplate>(es); } -void Ifc4x3_tc1::IfcPropertySetTemplate::setHasPropertyTemplates(const std::vector< ::Ifc4x3_tc1::IfcPropertyTemplate >& v) { set_attribute_value(6, cast_vector(v));if constexpr (false)unset_attribute_value(6); } +std::vector< ::Ifc4x3_tc1::IfcPropertyTemplate > Ifc4x3_tc1::IfcPropertySetTemplate::HasPropertyTemplates() const { std::vector es = get_attribute_value(6); return cast_vector<::Ifc4x3_tc1::IfcPropertyTemplate>(es); } +void Ifc4x3_tc1::IfcPropertySetTemplate::setHasPropertyTemplates(const std::vector< ::Ifc4x3_tc1::IfcPropertyTemplate >& v) { set_attribute_value(6, cast_vector(v));if constexpr (false)unset_attribute_value(6); } std::vector<::Ifc4x3_tc1::IfcRelDefinesByTemplate> Ifc4x3_tc1::IfcPropertySetTemplate::Defines() const { return cast_vector(file()->get_inverse(data()->id(), IFC4X3_TC1_types[932], 5)); } const ifcopenshell::entity& Ifc4x3_tc1::IfcPropertySetTemplate::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[827]); } -Ifc4x3_tc1::IfcPropertySetTemplate Ifc4x3_tc1::IfcPropertySetTemplate::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< ::Ifc4x3_tc1::IfcPropertySetTemplateTypeEnum::Value > v5_TemplateType, std::optional< std::string > v6_ApplicableEntity, std::vector< ::Ifc4x3_tc1::IfcPropertyTemplate > v7_HasPropertyTemplates) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_TemplateType) {set_attribute_value(4, (enumeration_reference(&::Ifc4x3_tc1::IfcPropertySetTemplateTypeEnum::Class(),(size_t)*v5_TemplateType))); } if (v6_ApplicableEntity) {set_attribute_value(5, (*v6_ApplicableEntity)); }set_attribute_value(6, cast_vector(v7_HasPropertyTemplates));; return *this; } +Ifc4x3_tc1::IfcPropertySetTemplate Ifc4x3_tc1::IfcPropertySetTemplate::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< ::Ifc4x3_tc1::IfcPropertySetTemplateTypeEnum::Value > v5_TemplateType, std::optional< std::string > v6_ApplicableEntity, std::vector< ::Ifc4x3_tc1::IfcPropertyTemplate > v7_HasPropertyTemplates) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_TemplateType) {set_attribute_value(4, (enumeration_reference(&::Ifc4x3_tc1::IfcPropertySetTemplateTypeEnum::Class(),(size_t)*v5_TemplateType))); } if (v6_ApplicableEntity) {set_attribute_value(5, (*v6_ApplicableEntity)); }set_attribute_value(6, cast_vector(v7_HasPropertyTemplates));; return *this; } // Function implementations for IfcPropertySingleValue -::Ifc4x3_tc1::IfcValue Ifc4x3_tc1::IfcPropertySingleValue::NominalValue() const { if(get_attribute_value(2).isNull()) { return ::Ifc4x3_tc1::IfcValue{}; } return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3_tc1::IfcValue>(); } +::Ifc4x3_tc1::IfcValue Ifc4x3_tc1::IfcPropertySingleValue::NominalValue() const { if(get_attribute_value(2).isNull()) { return ::Ifc4x3_tc1::IfcValue{}; } return ((express::base)(get_attribute_value(2))).as<::Ifc4x3_tc1::IfcValue>(); } void Ifc4x3_tc1::IfcPropertySingleValue::setNominalValue(const ::Ifc4x3_tc1::IfcValue& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } -::Ifc4x3_tc1::IfcUnit Ifc4x3_tc1::IfcPropertySingleValue::Unit() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3_tc1::IfcUnit{}; } return ((express::Base)(get_attribute_value(3))).as<::Ifc4x3_tc1::IfcUnit>(); } +::Ifc4x3_tc1::IfcUnit Ifc4x3_tc1::IfcPropertySingleValue::Unit() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3_tc1::IfcUnit{}; } return ((express::base)(get_attribute_value(3))).as<::Ifc4x3_tc1::IfcUnit>(); } void Ifc4x3_tc1::IfcPropertySingleValue::setUnit(const ::Ifc4x3_tc1::IfcUnit& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } @@ -13085,22 +13085,22 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcPropertySingleValue::Class() { return Ifc4x3_tc1::IfcPropertySingleValue Ifc4x3_tc1::IfcPropertySingleValue::initialize(std::string v1_Name, std::optional< std::string > v2_Specification, ::Ifc4x3_tc1::IfcValue v3_NominalValue, ::Ifc4x3_tc1::IfcUnit v4_Unit) { set_attribute_value(0, (v1_Name)); if (v2_Specification) {set_attribute_value(1, (*v2_Specification)); }set_attribute_value(2, (v3_NominalValue));set_attribute_value(3, (v4_Unit));; return *this; } // Function implementations for IfcPropertyTableValue -std::optional< std::vector< ::Ifc4x3_tc1::IfcValue > > Ifc4x3_tc1::IfcPropertyTableValue::DefiningValues() const { if(get_attribute_value(2).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(2); return cast_vector<::Ifc4x3_tc1::IfcValue>(es); } -void Ifc4x3_tc1::IfcPropertyTableValue::setDefiningValues(const std::optional< std::vector< ::Ifc4x3_tc1::IfcValue > >& v) { if (v) {set_attribute_value(2, cast_vector(*v));} else {unset_attribute_value(2);} } -std::optional< std::vector< ::Ifc4x3_tc1::IfcValue > > Ifc4x3_tc1::IfcPropertyTableValue::DefinedValues() const { if(get_attribute_value(3).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(3); return cast_vector<::Ifc4x3_tc1::IfcValue>(es); } -void Ifc4x3_tc1::IfcPropertyTableValue::setDefinedValues(const std::optional< std::vector< ::Ifc4x3_tc1::IfcValue > >& v) { if (v) {set_attribute_value(3, cast_vector(*v));} else {unset_attribute_value(3);} } +std::optional< std::vector< ::Ifc4x3_tc1::IfcValue > > Ifc4x3_tc1::IfcPropertyTableValue::DefiningValues() const { if(get_attribute_value(2).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(2); return cast_vector<::Ifc4x3_tc1::IfcValue>(es); } +void Ifc4x3_tc1::IfcPropertyTableValue::setDefiningValues(const std::optional< std::vector< ::Ifc4x3_tc1::IfcValue > >& v) { if (v) {set_attribute_value(2, cast_vector(*v));} else {unset_attribute_value(2);} } +std::optional< std::vector< ::Ifc4x3_tc1::IfcValue > > Ifc4x3_tc1::IfcPropertyTableValue::DefinedValues() const { if(get_attribute_value(3).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(3); return cast_vector<::Ifc4x3_tc1::IfcValue>(es); } +void Ifc4x3_tc1::IfcPropertyTableValue::setDefinedValues(const std::optional< std::vector< ::Ifc4x3_tc1::IfcValue > >& v) { if (v) {set_attribute_value(3, cast_vector(*v));} else {unset_attribute_value(3);} } std::optional< std::string > Ifc4x3_tc1::IfcPropertyTableValue::Expression() const { if(get_attribute_value(4).isNull()) { return std::nullopt; } std::string v = get_attribute_value(4); return v; } void Ifc4x3_tc1::IfcPropertyTableValue::setExpression(const std::optional< std::string >& v) { if (v) {set_attribute_value(4, *v);} else {unset_attribute_value(4);} } -::Ifc4x3_tc1::IfcUnit Ifc4x3_tc1::IfcPropertyTableValue::DefiningUnit() const { if(get_attribute_value(5).isNull()) { return ::Ifc4x3_tc1::IfcUnit{}; } return ((express::Base)(get_attribute_value(5))).as<::Ifc4x3_tc1::IfcUnit>(); } +::Ifc4x3_tc1::IfcUnit Ifc4x3_tc1::IfcPropertyTableValue::DefiningUnit() const { if(get_attribute_value(5).isNull()) { return ::Ifc4x3_tc1::IfcUnit{}; } return ((express::base)(get_attribute_value(5))).as<::Ifc4x3_tc1::IfcUnit>(); } void Ifc4x3_tc1::IfcPropertyTableValue::setDefiningUnit(const ::Ifc4x3_tc1::IfcUnit& v) { set_attribute_value(5, v);if constexpr (false)unset_attribute_value(5); } -::Ifc4x3_tc1::IfcUnit Ifc4x3_tc1::IfcPropertyTableValue::DefinedUnit() const { if(get_attribute_value(6).isNull()) { return ::Ifc4x3_tc1::IfcUnit{}; } return ((express::Base)(get_attribute_value(6))).as<::Ifc4x3_tc1::IfcUnit>(); } +::Ifc4x3_tc1::IfcUnit Ifc4x3_tc1::IfcPropertyTableValue::DefinedUnit() const { if(get_attribute_value(6).isNull()) { return ::Ifc4x3_tc1::IfcUnit{}; } return ((express::base)(get_attribute_value(6))).as<::Ifc4x3_tc1::IfcUnit>(); } void Ifc4x3_tc1::IfcPropertyTableValue::setDefinedUnit(const ::Ifc4x3_tc1::IfcUnit& v) { set_attribute_value(6, v);if constexpr (false)unset_attribute_value(6); } std::optional< ::Ifc4x3_tc1::IfcCurveInterpolationEnum::Value > Ifc4x3_tc1::IfcPropertyTableValue::CurveInterpolation() const { if(get_attribute_value(7).isNull()) { return std::nullopt; } return ::Ifc4x3_tc1::IfcCurveInterpolationEnum::FromString(get_attribute_value(7)); } void Ifc4x3_tc1::IfcPropertyTableValue::setCurveInterpolation(const std::optional< ::Ifc4x3_tc1::IfcCurveInterpolationEnum::Value >& v) { if (v) {set_attribute_value(7, enumeration_reference(&::Ifc4x3_tc1::IfcCurveInterpolationEnum::Class(), (size_t) *v));} else {unset_attribute_value(7);} } const ifcopenshell::entity& Ifc4x3_tc1::IfcPropertyTableValue::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[830]); } -Ifc4x3_tc1::IfcPropertyTableValue Ifc4x3_tc1::IfcPropertyTableValue::initialize(std::string v1_Name, std::optional< std::string > v2_Specification, std::optional< std::vector< ::Ifc4x3_tc1::IfcValue > > v3_DefiningValues, std::optional< std::vector< ::Ifc4x3_tc1::IfcValue > > v4_DefinedValues, std::optional< std::string > v5_Expression, ::Ifc4x3_tc1::IfcUnit v6_DefiningUnit, ::Ifc4x3_tc1::IfcUnit v7_DefinedUnit, std::optional< ::Ifc4x3_tc1::IfcCurveInterpolationEnum::Value > v8_CurveInterpolation) { set_attribute_value(0, (v1_Name)); if (v2_Specification) {set_attribute_value(1, (*v2_Specification)); } if (v3_DefiningValues) {set_attribute_value(2, cast_vector(*v3_DefiningValues)); } if (v4_DefinedValues) {set_attribute_value(3, cast_vector(*v4_DefinedValues)); } if (v5_Expression) {set_attribute_value(4, (*v5_Expression)); }set_attribute_value(5, (v6_DefiningUnit));set_attribute_value(6, (v7_DefinedUnit)); if (v8_CurveInterpolation) {set_attribute_value(7, (enumeration_reference(&::Ifc4x3_tc1::IfcCurveInterpolationEnum::Class(),(size_t)*v8_CurveInterpolation))); }; return *this; } +Ifc4x3_tc1::IfcPropertyTableValue Ifc4x3_tc1::IfcPropertyTableValue::initialize(std::string v1_Name, std::optional< std::string > v2_Specification, std::optional< std::vector< ::Ifc4x3_tc1::IfcValue > > v3_DefiningValues, std::optional< std::vector< ::Ifc4x3_tc1::IfcValue > > v4_DefinedValues, std::optional< std::string > v5_Expression, ::Ifc4x3_tc1::IfcUnit v6_DefiningUnit, ::Ifc4x3_tc1::IfcUnit v7_DefinedUnit, std::optional< ::Ifc4x3_tc1::IfcCurveInterpolationEnum::Value > v8_CurveInterpolation) { set_attribute_value(0, (v1_Name)); if (v2_Specification) {set_attribute_value(1, (*v2_Specification)); } if (v3_DefiningValues) {set_attribute_value(2, cast_vector(*v3_DefiningValues)); } if (v4_DefinedValues) {set_attribute_value(3, cast_vector(*v4_DefinedValues)); } if (v5_Expression) {set_attribute_value(4, (*v5_Expression)); }set_attribute_value(5, (v6_DefiningUnit));set_attribute_value(6, (v7_DefinedUnit)); if (v8_CurveInterpolation) {set_attribute_value(7, (enumeration_reference(&::Ifc4x3_tc1::IfcCurveInterpolationEnum::Class(),(size_t)*v8_CurveInterpolation))); }; return *this; } // Function implementations for IfcPropertyTemplate @@ -13138,7 +13138,7 @@ void Ifc4x3_tc1::IfcProtectiveDeviceTrippingUnitType::setPredefinedType(const :: const ifcopenshell::entity& Ifc4x3_tc1::IfcProtectiveDeviceTrippingUnitType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[835]); } -Ifc4x3_tc1::IfcProtectiveDeviceTrippingUnitType Ifc4x3_tc1::IfcProtectiveDeviceTrippingUnitType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcProtectiveDeviceTrippingUnitTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcProtectiveDeviceTrippingUnitTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_tc1::IfcProtectiveDeviceTrippingUnitType Ifc4x3_tc1::IfcProtectiveDeviceTrippingUnitType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcProtectiveDeviceTrippingUnitTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcProtectiveDeviceTrippingUnitTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcProtectiveDeviceType ::Ifc4x3_tc1::IfcProtectiveDeviceTypeEnum::Value Ifc4x3_tc1::IfcProtectiveDeviceType::PredefinedType() const { return ::Ifc4x3_tc1::IfcProtectiveDeviceTypeEnum::FromString(get_attribute_value(9)); } @@ -13146,7 +13146,7 @@ void Ifc4x3_tc1::IfcProtectiveDeviceType::setPredefinedType(const ::Ifc4x3_tc1:: const ifcopenshell::entity& Ifc4x3_tc1::IfcProtectiveDeviceType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[837]); } -Ifc4x3_tc1::IfcProtectiveDeviceType Ifc4x3_tc1::IfcProtectiveDeviceType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcProtectiveDeviceTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcProtectiveDeviceTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_tc1::IfcProtectiveDeviceType Ifc4x3_tc1::IfcProtectiveDeviceType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcProtectiveDeviceTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcProtectiveDeviceTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcPump std::optional< ::Ifc4x3_tc1::IfcPumpTypeEnum::Value > Ifc4x3_tc1::IfcPump::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_tc1::IfcPumpTypeEnum::FromString(get_attribute_value(8)); } @@ -13162,7 +13162,7 @@ void Ifc4x3_tc1::IfcPumpType::setPredefinedType(const ::Ifc4x3_tc1::IfcPumpTypeE const ifcopenshell::entity& Ifc4x3_tc1::IfcPumpType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[840]); } -Ifc4x3_tc1::IfcPumpType Ifc4x3_tc1::IfcPumpType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcPumpTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcPumpTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_tc1::IfcPumpType Ifc4x3_tc1::IfcPumpType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcPumpTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcPumpTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcQuantityArea double Ifc4x3_tc1::IfcQuantityArea::AreaValue() const { double v = get_attribute_value(3); return v; } @@ -13254,7 +13254,7 @@ void Ifc4x3_tc1::IfcRailType::setPredefinedType(const ::Ifc4x3_tc1::IfcRailTypeE const ifcopenshell::entity& Ifc4x3_tc1::IfcRailType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[855]); } -Ifc4x3_tc1::IfcRailType Ifc4x3_tc1::IfcRailType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcRailTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcRailTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_tc1::IfcRailType Ifc4x3_tc1::IfcRailType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcRailTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcRailTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcRailing std::optional< ::Ifc4x3_tc1::IfcRailingTypeEnum::Value > Ifc4x3_tc1::IfcRailing::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_tc1::IfcRailingTypeEnum::FromString(get_attribute_value(8)); } @@ -13270,7 +13270,7 @@ void Ifc4x3_tc1::IfcRailingType::setPredefinedType(const ::Ifc4x3_tc1::IfcRailin const ifcopenshell::entity& Ifc4x3_tc1::IfcRailingType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[853]); } -Ifc4x3_tc1::IfcRailingType Ifc4x3_tc1::IfcRailingType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcRailingTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcRailingTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_tc1::IfcRailingType Ifc4x3_tc1::IfcRailingType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcRailingTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcRailingTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcRailway std::optional< ::Ifc4x3_tc1::IfcRailwayTypeEnum::Value > Ifc4x3_tc1::IfcRailway::PredefinedType() const { if(get_attribute_value(9).isNull()) { return std::nullopt; } return ::Ifc4x3_tc1::IfcRailwayTypeEnum::FromString(get_attribute_value(9)); } @@ -13310,7 +13310,7 @@ void Ifc4x3_tc1::IfcRampFlightType::setPredefinedType(const ::Ifc4x3_tc1::IfcRam const ifcopenshell::entity& Ifc4x3_tc1::IfcRampFlightType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[863]); } -Ifc4x3_tc1::IfcRampFlightType Ifc4x3_tc1::IfcRampFlightType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcRampFlightTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcRampFlightTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_tc1::IfcRampFlightType Ifc4x3_tc1::IfcRampFlightType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcRampFlightTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcRampFlightTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcRampType ::Ifc4x3_tc1::IfcRampTypeEnum::Value Ifc4x3_tc1::IfcRampType::PredefinedType() const { return ::Ifc4x3_tc1::IfcRampTypeEnum::FromString(get_attribute_value(9)); } @@ -13318,7 +13318,7 @@ void Ifc4x3_tc1::IfcRampType::setPredefinedType(const ::Ifc4x3_tc1::IfcRampTypeE const ifcopenshell::entity& Ifc4x3_tc1::IfcRampType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[865]); } -Ifc4x3_tc1::IfcRampType Ifc4x3_tc1::IfcRampType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcRampTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcRampTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_tc1::IfcRampType Ifc4x3_tc1::IfcRampType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcRampTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcRampTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcRationalBSplineCurveWithKnots std::vector< double > /*[2:?]*/ Ifc4x3_tc1::IfcRationalBSplineCurveWithKnots::WeightsData() const { std::vector< double > /*[2:?]*/ v = get_attribute_value(8); return v; } @@ -13326,7 +13326,7 @@ void Ifc4x3_tc1::IfcRationalBSplineCurveWithKnots::setWeightsData(const std::vec const ifcopenshell::entity& Ifc4x3_tc1::IfcRationalBSplineCurveWithKnots::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[868]); } -Ifc4x3_tc1::IfcRationalBSplineCurveWithKnots Ifc4x3_tc1::IfcRationalBSplineCurveWithKnots::initialize(int64_t v1_Degree, std::vector< ::Ifc4x3_tc1::IfcCartesianPoint > v2_ControlPointsList, ::Ifc4x3_tc1::IfcBSplineCurveForm::Value v3_CurveForm, boost::logic::tribool v4_ClosedCurve, boost::logic::tribool v5_SelfIntersect, std::vector< int64_t > /*[2:?]*/ v6_KnotMultiplicities, std::vector< double > /*[2:?]*/ v7_Knots, ::Ifc4x3_tc1::IfcKnotType::Value v8_KnotSpec, std::vector< double > /*[2:?]*/ v9_WeightsData) { set_attribute_value(0, (v1_Degree));set_attribute_value(1, cast_vector(v2_ControlPointsList));set_attribute_value(2, (enumeration_reference(&::Ifc4x3_tc1::IfcBSplineCurveForm::Class(),(size_t)v3_CurveForm)));set_attribute_value(3, (v4_ClosedCurve));set_attribute_value(4, (v5_SelfIntersect));set_attribute_value(5, (v6_KnotMultiplicities));set_attribute_value(6, (v7_Knots));set_attribute_value(7, (enumeration_reference(&::Ifc4x3_tc1::IfcKnotType::Class(),(size_t)v8_KnotSpec)));set_attribute_value(8, (v9_WeightsData));; return *this; } +Ifc4x3_tc1::IfcRationalBSplineCurveWithKnots Ifc4x3_tc1::IfcRationalBSplineCurveWithKnots::initialize(int64_t v1_Degree, std::vector< ::Ifc4x3_tc1::IfcCartesianPoint > v2_ControlPointsList, ::Ifc4x3_tc1::IfcBSplineCurveForm::Value v3_CurveForm, boost::logic::tribool v4_ClosedCurve, boost::logic::tribool v5_SelfIntersect, std::vector< int64_t > /*[2:?]*/ v6_KnotMultiplicities, std::vector< double > /*[2:?]*/ v7_Knots, ::Ifc4x3_tc1::IfcKnotType::Value v8_KnotSpec, std::vector< double > /*[2:?]*/ v9_WeightsData) { set_attribute_value(0, (v1_Degree));set_attribute_value(1, cast_vector(v2_ControlPointsList));set_attribute_value(2, (enumeration_reference(&::Ifc4x3_tc1::IfcBSplineCurveForm::Class(),(size_t)v3_CurveForm)));set_attribute_value(3, (v4_ClosedCurve));set_attribute_value(4, (v5_SelfIntersect));set_attribute_value(5, (v6_KnotMultiplicities));set_attribute_value(6, (v7_Knots));set_attribute_value(7, (enumeration_reference(&::Ifc4x3_tc1::IfcKnotType::Class(),(size_t)v8_KnotSpec)));set_attribute_value(8, (v9_WeightsData));; return *this; } // Function implementations for IfcRationalBSplineSurfaceWithKnots std::vector< std::vector< double > > Ifc4x3_tc1::IfcRationalBSplineSurfaceWithKnots::WeightsData() const { std::vector< std::vector< double > > v = get_attribute_value(12); return v; } @@ -13334,7 +13334,7 @@ void Ifc4x3_tc1::IfcRationalBSplineSurfaceWithKnots::setWeightsData(const std::v const ifcopenshell::entity& Ifc4x3_tc1::IfcRationalBSplineSurfaceWithKnots::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[869]); } -Ifc4x3_tc1::IfcRationalBSplineSurfaceWithKnots Ifc4x3_tc1::IfcRationalBSplineSurfaceWithKnots::initialize(int64_t v1_UDegree, int64_t v2_VDegree, std::vector< std::vector< ::Ifc4x3_tc1::IfcCartesianPoint > > v3_ControlPointsList, ::Ifc4x3_tc1::IfcBSplineSurfaceForm::Value v4_SurfaceForm, boost::logic::tribool v5_UClosed, boost::logic::tribool v6_VClosed, boost::logic::tribool v7_SelfIntersect, std::vector< int64_t > /*[2:?]*/ v8_UMultiplicities, std::vector< int64_t > /*[2:?]*/ v9_VMultiplicities, std::vector< double > /*[2:?]*/ v10_UKnots, std::vector< double > /*[2:?]*/ v11_VKnots, ::Ifc4x3_tc1::IfcKnotType::Value v12_KnotSpec, std::vector< std::vector< double > > v13_WeightsData) { set_attribute_value(0, (v1_UDegree));set_attribute_value(1, (v2_VDegree));set_attribute_value(2, cast_vector(v3_ControlPointsList));set_attribute_value(3, (enumeration_reference(&::Ifc4x3_tc1::IfcBSplineSurfaceForm::Class(),(size_t)v4_SurfaceForm)));set_attribute_value(4, (v5_UClosed));set_attribute_value(5, (v6_VClosed));set_attribute_value(6, (v7_SelfIntersect));set_attribute_value(7, (v8_UMultiplicities));set_attribute_value(8, (v9_VMultiplicities));set_attribute_value(9, (v10_UKnots));set_attribute_value(10, (v11_VKnots));set_attribute_value(11, (enumeration_reference(&::Ifc4x3_tc1::IfcKnotType::Class(),(size_t)v12_KnotSpec)));set_attribute_value(12, (v13_WeightsData));; return *this; } +Ifc4x3_tc1::IfcRationalBSplineSurfaceWithKnots Ifc4x3_tc1::IfcRationalBSplineSurfaceWithKnots::initialize(int64_t v1_UDegree, int64_t v2_VDegree, std::vector< std::vector< ::Ifc4x3_tc1::IfcCartesianPoint > > v3_ControlPointsList, ::Ifc4x3_tc1::IfcBSplineSurfaceForm::Value v4_SurfaceForm, boost::logic::tribool v5_UClosed, boost::logic::tribool v6_VClosed, boost::logic::tribool v7_SelfIntersect, std::vector< int64_t > /*[2:?]*/ v8_UMultiplicities, std::vector< int64_t > /*[2:?]*/ v9_VMultiplicities, std::vector< double > /*[2:?]*/ v10_UKnots, std::vector< double > /*[2:?]*/ v11_VKnots, ::Ifc4x3_tc1::IfcKnotType::Value v12_KnotSpec, std::vector< std::vector< double > > v13_WeightsData) { set_attribute_value(0, (v1_UDegree));set_attribute_value(1, (v2_VDegree));set_attribute_value(2, cast_vector(v3_ControlPointsList));set_attribute_value(3, (enumeration_reference(&::Ifc4x3_tc1::IfcBSplineSurfaceForm::Class(),(size_t)v4_SurfaceForm)));set_attribute_value(4, (v5_UClosed));set_attribute_value(5, (v6_VClosed));set_attribute_value(6, (v7_SelfIntersect));set_attribute_value(7, (v8_UMultiplicities));set_attribute_value(8, (v9_VMultiplicities));set_attribute_value(9, (v10_UKnots));set_attribute_value(10, (v11_VKnots));set_attribute_value(11, (enumeration_reference(&::Ifc4x3_tc1::IfcKnotType::Class(),(size_t)v12_KnotSpec)));set_attribute_value(12, (v13_WeightsData));; return *this; } // Function implementations for IfcRectangleHollowProfileDef double Ifc4x3_tc1::IfcRectangleHollowProfileDef::WallThickness() const { double v = get_attribute_value(5); return v; } @@ -13371,7 +13371,7 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcRectangularPyramid::Class() { return Ifc4x3_tc1::IfcRectangularPyramid Ifc4x3_tc1::IfcRectangularPyramid::initialize(::Ifc4x3_tc1::IfcAxis2Placement3D v1_Position, double v2_XLength, double v3_YLength, double v4_Height) { set_attribute_value(0, (v1_Position));set_attribute_value(1, (v2_XLength));set_attribute_value(2, (v3_YLength));set_attribute_value(3, (v4_Height));; return *this; } // Function implementations for IfcRectangularTrimmedSurface -::Ifc4x3_tc1::IfcSurface Ifc4x3_tc1::IfcRectangularTrimmedSurface::BasisSurface() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcSurface>(); } +::Ifc4x3_tc1::IfcSurface Ifc4x3_tc1::IfcRectangularTrimmedSurface::BasisSurface() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcSurface>(); } void Ifc4x3_tc1::IfcRectangularTrimmedSurface::setBasisSurface(const ::Ifc4x3_tc1::IfcSurface& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } double Ifc4x3_tc1::IfcRectangularTrimmedSurface::U1() const { double v = get_attribute_value(1); return v; } void Ifc4x3_tc1::IfcRectangularTrimmedSurface::setU1(const double& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } @@ -13405,12 +13405,12 @@ std::optional< int64_t > Ifc4x3_tc1::IfcRecurrencePattern::Interval() const { if void Ifc4x3_tc1::IfcRecurrencePattern::setInterval(const std::optional< int64_t >& v) { if (v) {set_attribute_value(5, *v);} else {unset_attribute_value(5);} } std::optional< int64_t > Ifc4x3_tc1::IfcRecurrencePattern::Occurrences() const { if(get_attribute_value(6).isNull()) { return std::nullopt; } int64_t v = get_attribute_value(6); return v; } void Ifc4x3_tc1::IfcRecurrencePattern::setOccurrences(const std::optional< int64_t >& v) { if (v) {set_attribute_value(6, *v);} else {unset_attribute_value(6);} } -std::optional< std::vector< ::Ifc4x3_tc1::IfcTimePeriod > > Ifc4x3_tc1::IfcRecurrencePattern::TimePeriods() const { if(get_attribute_value(7).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(7); return cast_vector<::Ifc4x3_tc1::IfcTimePeriod>(es); } -void Ifc4x3_tc1::IfcRecurrencePattern::setTimePeriods(const std::optional< std::vector< ::Ifc4x3_tc1::IfcTimePeriod > >& v) { if (v) {set_attribute_value(7, cast_vector(*v));} else {unset_attribute_value(7);} } +std::optional< std::vector< ::Ifc4x3_tc1::IfcTimePeriod > > Ifc4x3_tc1::IfcRecurrencePattern::TimePeriods() const { if(get_attribute_value(7).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(7); return cast_vector<::Ifc4x3_tc1::IfcTimePeriod>(es); } +void Ifc4x3_tc1::IfcRecurrencePattern::setTimePeriods(const std::optional< std::vector< ::Ifc4x3_tc1::IfcTimePeriod > >& v) { if (v) {set_attribute_value(7, cast_vector(*v));} else {unset_attribute_value(7);} } const ifcopenshell::entity& Ifc4x3_tc1::IfcRecurrencePattern::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[875]); } -Ifc4x3_tc1::IfcRecurrencePattern Ifc4x3_tc1::IfcRecurrencePattern::initialize(::Ifc4x3_tc1::IfcRecurrenceTypeEnum::Value v1_RecurrenceType, std::optional< std::vector< int64_t > /*[1:?]*/ > v2_DayComponent, std::optional< std::vector< int64_t > /*[1:?]*/ > v3_WeekdayComponent, std::optional< std::vector< int64_t > /*[1:?]*/ > v4_MonthComponent, std::optional< int64_t > v5_Position, std::optional< int64_t > v6_Interval, std::optional< int64_t > v7_Occurrences, std::optional< std::vector< ::Ifc4x3_tc1::IfcTimePeriod > > v8_TimePeriods) { set_attribute_value(0, (enumeration_reference(&::Ifc4x3_tc1::IfcRecurrenceTypeEnum::Class(),(size_t)v1_RecurrenceType))); if (v2_DayComponent) {set_attribute_value(1, (*v2_DayComponent)); } if (v3_WeekdayComponent) {set_attribute_value(2, (*v3_WeekdayComponent)); } if (v4_MonthComponent) {set_attribute_value(3, (*v4_MonthComponent)); } if (v5_Position) {set_attribute_value(4, (*v5_Position)); } if (v6_Interval) {set_attribute_value(5, (*v6_Interval)); } if (v7_Occurrences) {set_attribute_value(6, (*v7_Occurrences)); } if (v8_TimePeriods) {set_attribute_value(7, cast_vector(*v8_TimePeriods)); }; return *this; } +Ifc4x3_tc1::IfcRecurrencePattern Ifc4x3_tc1::IfcRecurrencePattern::initialize(::Ifc4x3_tc1::IfcRecurrenceTypeEnum::Value v1_RecurrenceType, std::optional< std::vector< int64_t > /*[1:?]*/ > v2_DayComponent, std::optional< std::vector< int64_t > /*[1:?]*/ > v3_WeekdayComponent, std::optional< std::vector< int64_t > /*[1:?]*/ > v4_MonthComponent, std::optional< int64_t > v5_Position, std::optional< int64_t > v6_Interval, std::optional< int64_t > v7_Occurrences, std::optional< std::vector< ::Ifc4x3_tc1::IfcTimePeriod > > v8_TimePeriods) { set_attribute_value(0, (enumeration_reference(&::Ifc4x3_tc1::IfcRecurrenceTypeEnum::Class(),(size_t)v1_RecurrenceType))); if (v2_DayComponent) {set_attribute_value(1, (*v2_DayComponent)); } if (v3_WeekdayComponent) {set_attribute_value(2, (*v3_WeekdayComponent)); } if (v4_MonthComponent) {set_attribute_value(3, (*v4_MonthComponent)); } if (v5_Position) {set_attribute_value(4, (*v5_Position)); } if (v6_Interval) {set_attribute_value(5, (*v6_Interval)); } if (v7_Occurrences) {set_attribute_value(6, (*v7_Occurrences)); } if (v8_TimePeriods) {set_attribute_value(7, cast_vector(*v8_TimePeriods)); }; return *this; } // Function implementations for IfcReference std::optional< std::string > Ifc4x3_tc1::IfcReference::TypeIdentifier() const { if(get_attribute_value(0).isNull()) { return std::nullopt; } std::string v = get_attribute_value(0); return v; } @@ -13421,7 +13421,7 @@ std::optional< std::string > Ifc4x3_tc1::IfcReference::InstanceName() const { if void Ifc4x3_tc1::IfcReference::setInstanceName(const std::optional< std::string >& v) { if (v) {set_attribute_value(2, *v);} else {unset_attribute_value(2);} } std::optional< std::vector< int64_t > /*[1:?]*/ > Ifc4x3_tc1::IfcReference::ListPositions() const { if(get_attribute_value(3).isNull()) { return std::nullopt; } std::vector< int64_t > /*[1:?]*/ v = get_attribute_value(3); return v; } void Ifc4x3_tc1::IfcReference::setListPositions(const std::optional< std::vector< int64_t > /*[1:?]*/ >& v) { if (v) {set_attribute_value(3, *v);} else {unset_attribute_value(3);} } -::Ifc4x3_tc1::IfcReference Ifc4x3_tc1::IfcReference::InnerReference() const { if(get_attribute_value(4).isNull()) { return ::Ifc4x3_tc1::IfcReference{}; } return ((express::Base)(get_attribute_value(4))).as<::Ifc4x3_tc1::IfcReference>(); } +::Ifc4x3_tc1::IfcReference Ifc4x3_tc1::IfcReference::InnerReference() const { if(get_attribute_value(4).isNull()) { return ::Ifc4x3_tc1::IfcReference{}; } return ((express::base)(get_attribute_value(4))).as<::Ifc4x3_tc1::IfcReference>(); } void Ifc4x3_tc1::IfcReference::setInnerReference(const ::Ifc4x3_tc1::IfcReference& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } @@ -13439,12 +13439,12 @@ Ifc4x3_tc1::IfcReferent Ifc4x3_tc1::IfcReferent::initialize(std::string v1_Globa // Function implementations for IfcRegularTimeSeries double Ifc4x3_tc1::IfcRegularTimeSeries::TimeStep() const { double v = get_attribute_value(8); return v; } void Ifc4x3_tc1::IfcRegularTimeSeries::setTimeStep(const double& v) { set_attribute_value(8, v);if constexpr (false)unset_attribute_value(8); } -std::vector< ::Ifc4x3_tc1::IfcTimeSeriesValue > Ifc4x3_tc1::IfcRegularTimeSeries::Values() const { std::vector es = get_attribute_value(9); return cast_vector<::Ifc4x3_tc1::IfcTimeSeriesValue>(es); } -void Ifc4x3_tc1::IfcRegularTimeSeries::setValues(const std::vector< ::Ifc4x3_tc1::IfcTimeSeriesValue >& v) { set_attribute_value(9, cast_vector(v));if constexpr (false)unset_attribute_value(9); } +std::vector< ::Ifc4x3_tc1::IfcTimeSeriesValue > Ifc4x3_tc1::IfcRegularTimeSeries::Values() const { std::vector es = get_attribute_value(9); return cast_vector<::Ifc4x3_tc1::IfcTimeSeriesValue>(es); } +void Ifc4x3_tc1::IfcRegularTimeSeries::setValues(const std::vector< ::Ifc4x3_tc1::IfcTimeSeriesValue >& v) { set_attribute_value(9, cast_vector(v));if constexpr (false)unset_attribute_value(9); } const ifcopenshell::entity& Ifc4x3_tc1::IfcRegularTimeSeries::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[881]); } -Ifc4x3_tc1::IfcRegularTimeSeries Ifc4x3_tc1::IfcRegularTimeSeries::initialize(std::string v1_Name, std::optional< std::string > v2_Description, std::string v3_StartTime, std::string v4_EndTime, ::Ifc4x3_tc1::IfcTimeSeriesDataTypeEnum::Value v5_TimeSeriesDataType, ::Ifc4x3_tc1::IfcDataOriginEnum::Value v6_DataOrigin, std::optional< std::string > v7_UserDefinedDataOrigin, ::Ifc4x3_tc1::IfcUnit v8_Unit, double v9_TimeStep, std::vector< ::Ifc4x3_tc1::IfcTimeSeriesValue > v10_Values) { set_attribute_value(0, (v1_Name)); if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, (v3_StartTime));set_attribute_value(3, (v4_EndTime));set_attribute_value(4, (enumeration_reference(&::Ifc4x3_tc1::IfcTimeSeriesDataTypeEnum::Class(),(size_t)v5_TimeSeriesDataType)));set_attribute_value(5, (enumeration_reference(&::Ifc4x3_tc1::IfcDataOriginEnum::Class(),(size_t)v6_DataOrigin))); if (v7_UserDefinedDataOrigin) {set_attribute_value(6, (*v7_UserDefinedDataOrigin)); }set_attribute_value(7, (v8_Unit));set_attribute_value(8, (v9_TimeStep));set_attribute_value(9, cast_vector(v10_Values));; return *this; } +Ifc4x3_tc1::IfcRegularTimeSeries Ifc4x3_tc1::IfcRegularTimeSeries::initialize(std::string v1_Name, std::optional< std::string > v2_Description, std::string v3_StartTime, std::string v4_EndTime, ::Ifc4x3_tc1::IfcTimeSeriesDataTypeEnum::Value v5_TimeSeriesDataType, ::Ifc4x3_tc1::IfcDataOriginEnum::Value v6_DataOrigin, std::optional< std::string > v7_UserDefinedDataOrigin, ::Ifc4x3_tc1::IfcUnit v8_Unit, double v9_TimeStep, std::vector< ::Ifc4x3_tc1::IfcTimeSeriesValue > v10_Values) { set_attribute_value(0, (v1_Name)); if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, (v3_StartTime));set_attribute_value(3, (v4_EndTime));set_attribute_value(4, (enumeration_reference(&::Ifc4x3_tc1::IfcTimeSeriesDataTypeEnum::Class(),(size_t)v5_TimeSeriesDataType)));set_attribute_value(5, (enumeration_reference(&::Ifc4x3_tc1::IfcDataOriginEnum::Class(),(size_t)v6_DataOrigin))); if (v7_UserDefinedDataOrigin) {set_attribute_value(6, (*v7_UserDefinedDataOrigin)); }set_attribute_value(7, (v8_Unit));set_attribute_value(8, (v9_TimeStep));set_attribute_value(9, cast_vector(v10_Values));; return *this; } // Function implementations for IfcReinforcedSoil std::optional< ::Ifc4x3_tc1::IfcReinforcedSoilTypeEnum::Value > Ifc4x3_tc1::IfcReinforcedSoil::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_tc1::IfcReinforcedSoilTypeEnum::FromString(get_attribute_value(8)); } @@ -13475,12 +13475,12 @@ Ifc4x3_tc1::IfcReinforcementBarProperties Ifc4x3_tc1::IfcReinforcementBarPropert // Function implementations for IfcReinforcementDefinitionProperties std::optional< std::string > Ifc4x3_tc1::IfcReinforcementDefinitionProperties::DefinitionType() const { if(get_attribute_value(4).isNull()) { return std::nullopt; } std::string v = get_attribute_value(4); return v; } void Ifc4x3_tc1::IfcReinforcementDefinitionProperties::setDefinitionType(const std::optional< std::string >& v) { if (v) {set_attribute_value(4, *v);} else {unset_attribute_value(4);} } -std::vector< ::Ifc4x3_tc1::IfcSectionReinforcementProperties > Ifc4x3_tc1::IfcReinforcementDefinitionProperties::ReinforcementSectionDefinitions() const { std::vector es = get_attribute_value(5); return cast_vector<::Ifc4x3_tc1::IfcSectionReinforcementProperties>(es); } -void Ifc4x3_tc1::IfcReinforcementDefinitionProperties::setReinforcementSectionDefinitions(const std::vector< ::Ifc4x3_tc1::IfcSectionReinforcementProperties >& v) { set_attribute_value(5, cast_vector(v));if constexpr (false)unset_attribute_value(5); } +std::vector< ::Ifc4x3_tc1::IfcSectionReinforcementProperties > Ifc4x3_tc1::IfcReinforcementDefinitionProperties::ReinforcementSectionDefinitions() const { std::vector es = get_attribute_value(5); return cast_vector<::Ifc4x3_tc1::IfcSectionReinforcementProperties>(es); } +void Ifc4x3_tc1::IfcReinforcementDefinitionProperties::setReinforcementSectionDefinitions(const std::vector< ::Ifc4x3_tc1::IfcSectionReinforcementProperties >& v) { set_attribute_value(5, cast_vector(v));if constexpr (false)unset_attribute_value(5); } const ifcopenshell::entity& Ifc4x3_tc1::IfcReinforcementDefinitionProperties::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[885]); } -Ifc4x3_tc1::IfcReinforcementDefinitionProperties Ifc4x3_tc1::IfcReinforcementDefinitionProperties::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_DefinitionType, std::vector< ::Ifc4x3_tc1::IfcSectionReinforcementProperties > v6_ReinforcementSectionDefinitions) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_DefinitionType) {set_attribute_value(4, (*v5_DefinitionType)); }set_attribute_value(5, cast_vector(v6_ReinforcementSectionDefinitions));; return *this; } +Ifc4x3_tc1::IfcReinforcementDefinitionProperties Ifc4x3_tc1::IfcReinforcementDefinitionProperties::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_DefinitionType, std::vector< ::Ifc4x3_tc1::IfcSectionReinforcementProperties > v6_ReinforcementSectionDefinitions) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_DefinitionType) {set_attribute_value(4, (*v5_DefinitionType)); }set_attribute_value(5, cast_vector(v6_ReinforcementSectionDefinitions));; return *this; } // Function implementations for IfcReinforcingBar std::optional< double > Ifc4x3_tc1::IfcReinforcingBar::NominalDiameter() const { if(get_attribute_value(9).isNull()) { return std::nullopt; } double v = get_attribute_value(9); return v; } @@ -13511,12 +13511,12 @@ std::optional< ::Ifc4x3_tc1::IfcReinforcingBarSurfaceEnum::Value > Ifc4x3_tc1::I void Ifc4x3_tc1::IfcReinforcingBarType::setBarSurface(const std::optional< ::Ifc4x3_tc1::IfcReinforcingBarSurfaceEnum::Value >& v) { if (v) {set_attribute_value(13, enumeration_reference(&::Ifc4x3_tc1::IfcReinforcingBarSurfaceEnum::Class(), (size_t) *v));} else {unset_attribute_value(13);} } std::optional< std::string > Ifc4x3_tc1::IfcReinforcingBarType::BendingShapeCode() const { if(get_attribute_value(14).isNull()) { return std::nullopt; } std::string v = get_attribute_value(14); return v; } void Ifc4x3_tc1::IfcReinforcingBarType::setBendingShapeCode(const std::optional< std::string >& v) { if (v) {set_attribute_value(14, *v);} else {unset_attribute_value(14);} } -std::optional< std::vector< ::Ifc4x3_tc1::IfcBendingParameterSelect > > Ifc4x3_tc1::IfcReinforcingBarType::BendingParameters() const { if(get_attribute_value(15).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(15); return cast_vector<::Ifc4x3_tc1::IfcBendingParameterSelect>(es); } -void Ifc4x3_tc1::IfcReinforcingBarType::setBendingParameters(const std::optional< std::vector< ::Ifc4x3_tc1::IfcBendingParameterSelect > >& v) { if (v) {set_attribute_value(15, cast_vector(*v));} else {unset_attribute_value(15);} } +std::optional< std::vector< ::Ifc4x3_tc1::IfcBendingParameterSelect > > Ifc4x3_tc1::IfcReinforcingBarType::BendingParameters() const { if(get_attribute_value(15).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(15); return cast_vector<::Ifc4x3_tc1::IfcBendingParameterSelect>(es); } +void Ifc4x3_tc1::IfcReinforcingBarType::setBendingParameters(const std::optional< std::vector< ::Ifc4x3_tc1::IfcBendingParameterSelect > >& v) { if (v) {set_attribute_value(15, cast_vector(*v));} else {unset_attribute_value(15);} } const ifcopenshell::entity& Ifc4x3_tc1::IfcReinforcingBarType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[889]); } -Ifc4x3_tc1::IfcReinforcingBarType Ifc4x3_tc1::IfcReinforcingBarType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcReinforcingBarTypeEnum::Value v10_PredefinedType, std::optional< double > v11_NominalDiameter, std::optional< double > v12_CrossSectionArea, std::optional< double > v13_BarLength, std::optional< ::Ifc4x3_tc1::IfcReinforcingBarSurfaceEnum::Value > v14_BarSurface, std::optional< std::string > v15_BendingShapeCode, std::optional< std::vector< ::Ifc4x3_tc1::IfcBendingParameterSelect > > v16_BendingParameters) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcReinforcingBarTypeEnum::Class(),(size_t)v10_PredefinedType))); if (v11_NominalDiameter) {set_attribute_value(10, (*v11_NominalDiameter)); } if (v12_CrossSectionArea) {set_attribute_value(11, (*v12_CrossSectionArea)); } if (v13_BarLength) {set_attribute_value(12, (*v13_BarLength)); } if (v14_BarSurface) {set_attribute_value(13, (enumeration_reference(&::Ifc4x3_tc1::IfcReinforcingBarSurfaceEnum::Class(),(size_t)*v14_BarSurface))); } if (v15_BendingShapeCode) {set_attribute_value(14, (*v15_BendingShapeCode)); } if (v16_BendingParameters) {set_attribute_value(15, cast_vector(*v16_BendingParameters)); }; return *this; } +Ifc4x3_tc1::IfcReinforcingBarType Ifc4x3_tc1::IfcReinforcingBarType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcReinforcingBarTypeEnum::Value v10_PredefinedType, std::optional< double > v11_NominalDiameter, std::optional< double > v12_CrossSectionArea, std::optional< double > v13_BarLength, std::optional< ::Ifc4x3_tc1::IfcReinforcingBarSurfaceEnum::Value > v14_BarSurface, std::optional< std::string > v15_BendingShapeCode, std::optional< std::vector< ::Ifc4x3_tc1::IfcBendingParameterSelect > > v16_BendingParameters) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcReinforcingBarTypeEnum::Class(),(size_t)v10_PredefinedType))); if (v11_NominalDiameter) {set_attribute_value(10, (*v11_NominalDiameter)); } if (v12_CrossSectionArea) {set_attribute_value(11, (*v12_CrossSectionArea)); } if (v13_BarLength) {set_attribute_value(12, (*v13_BarLength)); } if (v14_BarSurface) {set_attribute_value(13, (enumeration_reference(&::Ifc4x3_tc1::IfcReinforcingBarSurfaceEnum::Class(),(size_t)*v14_BarSurface))); } if (v15_BendingShapeCode) {set_attribute_value(14, (*v15_BendingShapeCode)); } if (v16_BendingParameters) {set_attribute_value(15, cast_vector(*v16_BendingParameters)); }; return *this; } // Function implementations for IfcReinforcingElement std::optional< std::string > Ifc4x3_tc1::IfcReinforcingElement::SteelGrade() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } std::string v = get_attribute_value(8); return v; } @@ -13530,7 +13530,7 @@ Ifc4x3_tc1::IfcReinforcingElement Ifc4x3_tc1::IfcReinforcingElement::initialize( const ifcopenshell::entity& Ifc4x3_tc1::IfcReinforcingElementType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[892]); } -Ifc4x3_tc1::IfcReinforcingElementType Ifc4x3_tc1::IfcReinforcingElementType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } +Ifc4x3_tc1::IfcReinforcingElementType Ifc4x3_tc1::IfcReinforcingElementType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } // Function implementations for IfcReinforcingMesh std::optional< double > Ifc4x3_tc1::IfcReinforcingMesh::MeshLength() const { if(get_attribute_value(9).isNull()) { return std::nullopt; } double v = get_attribute_value(9); return v; } @@ -13577,68 +13577,68 @@ std::optional< double > Ifc4x3_tc1::IfcReinforcingMeshType::TransverseBarSpacing void Ifc4x3_tc1::IfcReinforcingMeshType::setTransverseBarSpacing(const std::optional< double >& v) { if (v) {set_attribute_value(17, *v);} else {unset_attribute_value(17);} } std::optional< std::string > Ifc4x3_tc1::IfcReinforcingMeshType::BendingShapeCode() const { if(get_attribute_value(18).isNull()) { return std::nullopt; } std::string v = get_attribute_value(18); return v; } void Ifc4x3_tc1::IfcReinforcingMeshType::setBendingShapeCode(const std::optional< std::string >& v) { if (v) {set_attribute_value(18, *v);} else {unset_attribute_value(18);} } -std::optional< std::vector< ::Ifc4x3_tc1::IfcBendingParameterSelect > > Ifc4x3_tc1::IfcReinforcingMeshType::BendingParameters() const { if(get_attribute_value(19).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(19); return cast_vector<::Ifc4x3_tc1::IfcBendingParameterSelect>(es); } -void Ifc4x3_tc1::IfcReinforcingMeshType::setBendingParameters(const std::optional< std::vector< ::Ifc4x3_tc1::IfcBendingParameterSelect > >& v) { if (v) {set_attribute_value(19, cast_vector(*v));} else {unset_attribute_value(19);} } +std::optional< std::vector< ::Ifc4x3_tc1::IfcBendingParameterSelect > > Ifc4x3_tc1::IfcReinforcingMeshType::BendingParameters() const { if(get_attribute_value(19).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(19); return cast_vector<::Ifc4x3_tc1::IfcBendingParameterSelect>(es); } +void Ifc4x3_tc1::IfcReinforcingMeshType::setBendingParameters(const std::optional< std::vector< ::Ifc4x3_tc1::IfcBendingParameterSelect > >& v) { if (v) {set_attribute_value(19, cast_vector(*v));} else {unset_attribute_value(19);} } const ifcopenshell::entity& Ifc4x3_tc1::IfcReinforcingMeshType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[894]); } -Ifc4x3_tc1::IfcReinforcingMeshType Ifc4x3_tc1::IfcReinforcingMeshType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcReinforcingMeshTypeEnum::Value v10_PredefinedType, std::optional< double > v11_MeshLength, std::optional< double > v12_MeshWidth, std::optional< double > v13_LongitudinalBarNominalDiameter, std::optional< double > v14_TransverseBarNominalDiameter, std::optional< double > v15_LongitudinalBarCrossSectionArea, std::optional< double > v16_TransverseBarCrossSectionArea, std::optional< double > v17_LongitudinalBarSpacing, std::optional< double > v18_TransverseBarSpacing, std::optional< std::string > v19_BendingShapeCode, std::optional< std::vector< ::Ifc4x3_tc1::IfcBendingParameterSelect > > v20_BendingParameters) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcReinforcingMeshTypeEnum::Class(),(size_t)v10_PredefinedType))); if (v11_MeshLength) {set_attribute_value(10, (*v11_MeshLength)); } if (v12_MeshWidth) {set_attribute_value(11, (*v12_MeshWidth)); } if (v13_LongitudinalBarNominalDiameter) {set_attribute_value(12, (*v13_LongitudinalBarNominalDiameter)); } if (v14_TransverseBarNominalDiameter) {set_attribute_value(13, (*v14_TransverseBarNominalDiameter)); } if (v15_LongitudinalBarCrossSectionArea) {set_attribute_value(14, (*v15_LongitudinalBarCrossSectionArea)); } if (v16_TransverseBarCrossSectionArea) {set_attribute_value(15, (*v16_TransverseBarCrossSectionArea)); } if (v17_LongitudinalBarSpacing) {set_attribute_value(16, (*v17_LongitudinalBarSpacing)); } if (v18_TransverseBarSpacing) {set_attribute_value(17, (*v18_TransverseBarSpacing)); } if (v19_BendingShapeCode) {set_attribute_value(18, (*v19_BendingShapeCode)); } if (v20_BendingParameters) {set_attribute_value(19, cast_vector(*v20_BendingParameters)); }; return *this; } +Ifc4x3_tc1::IfcReinforcingMeshType Ifc4x3_tc1::IfcReinforcingMeshType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcReinforcingMeshTypeEnum::Value v10_PredefinedType, std::optional< double > v11_MeshLength, std::optional< double > v12_MeshWidth, std::optional< double > v13_LongitudinalBarNominalDiameter, std::optional< double > v14_TransverseBarNominalDiameter, std::optional< double > v15_LongitudinalBarCrossSectionArea, std::optional< double > v16_TransverseBarCrossSectionArea, std::optional< double > v17_LongitudinalBarSpacing, std::optional< double > v18_TransverseBarSpacing, std::optional< std::string > v19_BendingShapeCode, std::optional< std::vector< ::Ifc4x3_tc1::IfcBendingParameterSelect > > v20_BendingParameters) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcReinforcingMeshTypeEnum::Class(),(size_t)v10_PredefinedType))); if (v11_MeshLength) {set_attribute_value(10, (*v11_MeshLength)); } if (v12_MeshWidth) {set_attribute_value(11, (*v12_MeshWidth)); } if (v13_LongitudinalBarNominalDiameter) {set_attribute_value(12, (*v13_LongitudinalBarNominalDiameter)); } if (v14_TransverseBarNominalDiameter) {set_attribute_value(13, (*v14_TransverseBarNominalDiameter)); } if (v15_LongitudinalBarCrossSectionArea) {set_attribute_value(14, (*v15_LongitudinalBarCrossSectionArea)); } if (v16_TransverseBarCrossSectionArea) {set_attribute_value(15, (*v16_TransverseBarCrossSectionArea)); } if (v17_LongitudinalBarSpacing) {set_attribute_value(16, (*v17_LongitudinalBarSpacing)); } if (v18_TransverseBarSpacing) {set_attribute_value(17, (*v18_TransverseBarSpacing)); } if (v19_BendingShapeCode) {set_attribute_value(18, (*v19_BendingShapeCode)); } if (v20_BendingParameters) {set_attribute_value(19, cast_vector(*v20_BendingParameters)); }; return *this; } // Function implementations for IfcRelAdheresToElement -::Ifc4x3_tc1::IfcElement Ifc4x3_tc1::IfcRelAdheresToElement::RelatingElement() const { return ((express::Base)(get_attribute_value(4))).as<::Ifc4x3_tc1::IfcElement>(); } +::Ifc4x3_tc1::IfcElement Ifc4x3_tc1::IfcRelAdheresToElement::RelatingElement() const { return ((express::base)(get_attribute_value(4))).as<::Ifc4x3_tc1::IfcElement>(); } void Ifc4x3_tc1::IfcRelAdheresToElement::setRelatingElement(const ::Ifc4x3_tc1::IfcElement& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } -std::vector< ::Ifc4x3_tc1::IfcSurfaceFeature > Ifc4x3_tc1::IfcRelAdheresToElement::RelatedSurfaceFeatures() const { std::vector es = get_attribute_value(5); return cast_vector<::Ifc4x3_tc1::IfcSurfaceFeature>(es); } -void Ifc4x3_tc1::IfcRelAdheresToElement::setRelatedSurfaceFeatures(const std::vector< ::Ifc4x3_tc1::IfcSurfaceFeature >& v) { set_attribute_value(5, cast_vector(v));if constexpr (false)unset_attribute_value(5); } +std::vector< ::Ifc4x3_tc1::IfcSurfaceFeature > Ifc4x3_tc1::IfcRelAdheresToElement::RelatedSurfaceFeatures() const { std::vector es = get_attribute_value(5); return cast_vector<::Ifc4x3_tc1::IfcSurfaceFeature>(es); } +void Ifc4x3_tc1::IfcRelAdheresToElement::setRelatedSurfaceFeatures(const std::vector< ::Ifc4x3_tc1::IfcSurfaceFeature >& v) { set_attribute_value(5, cast_vector(v));if constexpr (false)unset_attribute_value(5); } const ifcopenshell::entity& Ifc4x3_tc1::IfcRelAdheresToElement::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[896]); } -Ifc4x3_tc1::IfcRelAdheresToElement Ifc4x3_tc1::IfcRelAdheresToElement::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, ::Ifc4x3_tc1::IfcElement v5_RelatingElement, std::vector< ::Ifc4x3_tc1::IfcSurfaceFeature > v6_RelatedSurfaceFeatures) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, (v5_RelatingElement));set_attribute_value(5, cast_vector(v6_RelatedSurfaceFeatures));; return *this; } +Ifc4x3_tc1::IfcRelAdheresToElement Ifc4x3_tc1::IfcRelAdheresToElement::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, ::Ifc4x3_tc1::IfcElement v5_RelatingElement, std::vector< ::Ifc4x3_tc1::IfcSurfaceFeature > v6_RelatedSurfaceFeatures) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, (v5_RelatingElement));set_attribute_value(5, cast_vector(v6_RelatedSurfaceFeatures));; return *this; } // Function implementations for IfcRelAggregates -::Ifc4x3_tc1::IfcObjectDefinition Ifc4x3_tc1::IfcRelAggregates::RelatingObject() const { return ((express::Base)(get_attribute_value(4))).as<::Ifc4x3_tc1::IfcObjectDefinition>(); } +::Ifc4x3_tc1::IfcObjectDefinition Ifc4x3_tc1::IfcRelAggregates::RelatingObject() const { return ((express::base)(get_attribute_value(4))).as<::Ifc4x3_tc1::IfcObjectDefinition>(); } void Ifc4x3_tc1::IfcRelAggregates::setRelatingObject(const ::Ifc4x3_tc1::IfcObjectDefinition& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } -std::vector< ::Ifc4x3_tc1::IfcObjectDefinition > Ifc4x3_tc1::IfcRelAggregates::RelatedObjects() const { std::vector es = get_attribute_value(5); return cast_vector<::Ifc4x3_tc1::IfcObjectDefinition>(es); } -void Ifc4x3_tc1::IfcRelAggregates::setRelatedObjects(const std::vector< ::Ifc4x3_tc1::IfcObjectDefinition >& v) { set_attribute_value(5, cast_vector(v));if constexpr (false)unset_attribute_value(5); } +std::vector< ::Ifc4x3_tc1::IfcObjectDefinition > Ifc4x3_tc1::IfcRelAggregates::RelatedObjects() const { std::vector es = get_attribute_value(5); return cast_vector<::Ifc4x3_tc1::IfcObjectDefinition>(es); } +void Ifc4x3_tc1::IfcRelAggregates::setRelatedObjects(const std::vector< ::Ifc4x3_tc1::IfcObjectDefinition >& v) { set_attribute_value(5, cast_vector(v));if constexpr (false)unset_attribute_value(5); } const ifcopenshell::entity& Ifc4x3_tc1::IfcRelAggregates::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[897]); } -Ifc4x3_tc1::IfcRelAggregates Ifc4x3_tc1::IfcRelAggregates::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, ::Ifc4x3_tc1::IfcObjectDefinition v5_RelatingObject, std::vector< ::Ifc4x3_tc1::IfcObjectDefinition > v6_RelatedObjects) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, (v5_RelatingObject));set_attribute_value(5, cast_vector(v6_RelatedObjects));; return *this; } +Ifc4x3_tc1::IfcRelAggregates Ifc4x3_tc1::IfcRelAggregates::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, ::Ifc4x3_tc1::IfcObjectDefinition v5_RelatingObject, std::vector< ::Ifc4x3_tc1::IfcObjectDefinition > v6_RelatedObjects) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, (v5_RelatingObject));set_attribute_value(5, cast_vector(v6_RelatedObjects));; return *this; } // Function implementations for IfcRelAssigns -std::vector< ::Ifc4x3_tc1::IfcObjectDefinition > Ifc4x3_tc1::IfcRelAssigns::RelatedObjects() const { std::vector es = get_attribute_value(4); return cast_vector<::Ifc4x3_tc1::IfcObjectDefinition>(es); } -void Ifc4x3_tc1::IfcRelAssigns::setRelatedObjects(const std::vector< ::Ifc4x3_tc1::IfcObjectDefinition >& v) { set_attribute_value(4, cast_vector(v));if constexpr (false)unset_attribute_value(4); } +std::vector< ::Ifc4x3_tc1::IfcObjectDefinition > Ifc4x3_tc1::IfcRelAssigns::RelatedObjects() const { std::vector es = get_attribute_value(4); return cast_vector<::Ifc4x3_tc1::IfcObjectDefinition>(es); } +void Ifc4x3_tc1::IfcRelAssigns::setRelatedObjects(const std::vector< ::Ifc4x3_tc1::IfcObjectDefinition >& v) { set_attribute_value(4, cast_vector(v));if constexpr (false)unset_attribute_value(4); } std::optional< bool > Ifc4x3_tc1::IfcRelAssigns::RelatedObjectsType() const { if(get_attribute_value(5).isNull()) { return std::nullopt; } bool v = get_attribute_value(5); return v; } void Ifc4x3_tc1::IfcRelAssigns::setRelatedObjectsType(const std::optional< bool >& v) { if (v) {set_attribute_value(5, *v);} else {unset_attribute_value(5);} } const ifcopenshell::entity& Ifc4x3_tc1::IfcRelAssigns::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[898]); } -Ifc4x3_tc1::IfcRelAssigns Ifc4x3_tc1::IfcRelAssigns::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3_tc1::IfcObjectDefinition > v5_RelatedObjects, std::optional< bool > v6_RelatedObjectsType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedObjects)); if (v6_RelatedObjectsType) {set_attribute_value(5, (*v6_RelatedObjectsType)); }; return *this; } +Ifc4x3_tc1::IfcRelAssigns Ifc4x3_tc1::IfcRelAssigns::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3_tc1::IfcObjectDefinition > v5_RelatedObjects, std::optional< bool > v6_RelatedObjectsType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedObjects)); if (v6_RelatedObjectsType) {set_attribute_value(5, (*v6_RelatedObjectsType)); }; return *this; } // Function implementations for IfcRelAssignsToActor -::Ifc4x3_tc1::IfcActor Ifc4x3_tc1::IfcRelAssignsToActor::RelatingActor() const { return ((express::Base)(get_attribute_value(6))).as<::Ifc4x3_tc1::IfcActor>(); } +::Ifc4x3_tc1::IfcActor Ifc4x3_tc1::IfcRelAssignsToActor::RelatingActor() const { return ((express::base)(get_attribute_value(6))).as<::Ifc4x3_tc1::IfcActor>(); } void Ifc4x3_tc1::IfcRelAssignsToActor::setRelatingActor(const ::Ifc4x3_tc1::IfcActor& v) { set_attribute_value(6, v);if constexpr (false)unset_attribute_value(6); } -::Ifc4x3_tc1::IfcActorRole Ifc4x3_tc1::IfcRelAssignsToActor::ActingRole() const { if(get_attribute_value(7).isNull()) { return ::Ifc4x3_tc1::IfcActorRole{}; } return ((express::Base)(get_attribute_value(7))).as<::Ifc4x3_tc1::IfcActorRole>(); } +::Ifc4x3_tc1::IfcActorRole Ifc4x3_tc1::IfcRelAssignsToActor::ActingRole() const { if(get_attribute_value(7).isNull()) { return ::Ifc4x3_tc1::IfcActorRole{}; } return ((express::base)(get_attribute_value(7))).as<::Ifc4x3_tc1::IfcActorRole>(); } void Ifc4x3_tc1::IfcRelAssignsToActor::setActingRole(const ::Ifc4x3_tc1::IfcActorRole& v) { set_attribute_value(7, v);if constexpr (false)unset_attribute_value(7); } const ifcopenshell::entity& Ifc4x3_tc1::IfcRelAssignsToActor::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[899]); } -Ifc4x3_tc1::IfcRelAssignsToActor Ifc4x3_tc1::IfcRelAssignsToActor::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3_tc1::IfcObjectDefinition > v5_RelatedObjects, std::optional< bool > v6_RelatedObjectsType, ::Ifc4x3_tc1::IfcActor v7_RelatingActor, ::Ifc4x3_tc1::IfcActorRole v8_ActingRole) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedObjects)); if (v6_RelatedObjectsType) {set_attribute_value(5, (*v6_RelatedObjectsType)); }set_attribute_value(6, (v7_RelatingActor));set_attribute_value(7, (v8_ActingRole));; return *this; } +Ifc4x3_tc1::IfcRelAssignsToActor Ifc4x3_tc1::IfcRelAssignsToActor::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3_tc1::IfcObjectDefinition > v5_RelatedObjects, std::optional< bool > v6_RelatedObjectsType, ::Ifc4x3_tc1::IfcActor v7_RelatingActor, ::Ifc4x3_tc1::IfcActorRole v8_ActingRole) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedObjects)); if (v6_RelatedObjectsType) {set_attribute_value(5, (*v6_RelatedObjectsType)); }set_attribute_value(6, (v7_RelatingActor));set_attribute_value(7, (v8_ActingRole));; return *this; } // Function implementations for IfcRelAssignsToControl -::Ifc4x3_tc1::IfcControl Ifc4x3_tc1::IfcRelAssignsToControl::RelatingControl() const { return ((express::Base)(get_attribute_value(6))).as<::Ifc4x3_tc1::IfcControl>(); } +::Ifc4x3_tc1::IfcControl Ifc4x3_tc1::IfcRelAssignsToControl::RelatingControl() const { return ((express::base)(get_attribute_value(6))).as<::Ifc4x3_tc1::IfcControl>(); } void Ifc4x3_tc1::IfcRelAssignsToControl::setRelatingControl(const ::Ifc4x3_tc1::IfcControl& v) { set_attribute_value(6, v);if constexpr (false)unset_attribute_value(6); } const ifcopenshell::entity& Ifc4x3_tc1::IfcRelAssignsToControl::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[900]); } -Ifc4x3_tc1::IfcRelAssignsToControl Ifc4x3_tc1::IfcRelAssignsToControl::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3_tc1::IfcObjectDefinition > v5_RelatedObjects, std::optional< bool > v6_RelatedObjectsType, ::Ifc4x3_tc1::IfcControl v7_RelatingControl) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedObjects)); if (v6_RelatedObjectsType) {set_attribute_value(5, (*v6_RelatedObjectsType)); }set_attribute_value(6, (v7_RelatingControl));; return *this; } +Ifc4x3_tc1::IfcRelAssignsToControl Ifc4x3_tc1::IfcRelAssignsToControl::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3_tc1::IfcObjectDefinition > v5_RelatedObjects, std::optional< bool > v6_RelatedObjectsType, ::Ifc4x3_tc1::IfcControl v7_RelatingControl) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedObjects)); if (v6_RelatedObjectsType) {set_attribute_value(5, (*v6_RelatedObjectsType)); }set_attribute_value(6, (v7_RelatingControl));; return *this; } // Function implementations for IfcRelAssignsToGroup -::Ifc4x3_tc1::IfcGroup Ifc4x3_tc1::IfcRelAssignsToGroup::RelatingGroup() const { return ((express::Base)(get_attribute_value(6))).as<::Ifc4x3_tc1::IfcGroup>(); } +::Ifc4x3_tc1::IfcGroup Ifc4x3_tc1::IfcRelAssignsToGroup::RelatingGroup() const { return ((express::base)(get_attribute_value(6))).as<::Ifc4x3_tc1::IfcGroup>(); } void Ifc4x3_tc1::IfcRelAssignsToGroup::setRelatingGroup(const ::Ifc4x3_tc1::IfcGroup& v) { set_attribute_value(6, v);if constexpr (false)unset_attribute_value(6); } const ifcopenshell::entity& Ifc4x3_tc1::IfcRelAssignsToGroup::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[901]); } -Ifc4x3_tc1::IfcRelAssignsToGroup Ifc4x3_tc1::IfcRelAssignsToGroup::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3_tc1::IfcObjectDefinition > v5_RelatedObjects, std::optional< bool > v6_RelatedObjectsType, ::Ifc4x3_tc1::IfcGroup v7_RelatingGroup) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedObjects)); if (v6_RelatedObjectsType) {set_attribute_value(5, (*v6_RelatedObjectsType)); }set_attribute_value(6, (v7_RelatingGroup));; return *this; } +Ifc4x3_tc1::IfcRelAssignsToGroup Ifc4x3_tc1::IfcRelAssignsToGroup::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3_tc1::IfcObjectDefinition > v5_RelatedObjects, std::optional< bool > v6_RelatedObjectsType, ::Ifc4x3_tc1::IfcGroup v7_RelatingGroup) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedObjects)); if (v6_RelatedObjectsType) {set_attribute_value(5, (*v6_RelatedObjectsType)); }set_attribute_value(6, (v7_RelatingGroup));; return *this; } // Function implementations for IfcRelAssignsToGroupByFactor double Ifc4x3_tc1::IfcRelAssignsToGroupByFactor::Factor() const { double v = get_attribute_value(7); return v; } @@ -13646,99 +13646,99 @@ void Ifc4x3_tc1::IfcRelAssignsToGroupByFactor::setFactor(const double& v) { set_ const ifcopenshell::entity& Ifc4x3_tc1::IfcRelAssignsToGroupByFactor::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[902]); } -Ifc4x3_tc1::IfcRelAssignsToGroupByFactor Ifc4x3_tc1::IfcRelAssignsToGroupByFactor::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3_tc1::IfcObjectDefinition > v5_RelatedObjects, std::optional< bool > v6_RelatedObjectsType, ::Ifc4x3_tc1::IfcGroup v7_RelatingGroup, double v8_Factor) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedObjects)); if (v6_RelatedObjectsType) {set_attribute_value(5, (*v6_RelatedObjectsType)); }set_attribute_value(6, (v7_RelatingGroup));set_attribute_value(7, (v8_Factor));; return *this; } +Ifc4x3_tc1::IfcRelAssignsToGroupByFactor Ifc4x3_tc1::IfcRelAssignsToGroupByFactor::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3_tc1::IfcObjectDefinition > v5_RelatedObjects, std::optional< bool > v6_RelatedObjectsType, ::Ifc4x3_tc1::IfcGroup v7_RelatingGroup, double v8_Factor) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedObjects)); if (v6_RelatedObjectsType) {set_attribute_value(5, (*v6_RelatedObjectsType)); }set_attribute_value(6, (v7_RelatingGroup));set_attribute_value(7, (v8_Factor));; return *this; } // Function implementations for IfcRelAssignsToProcess -::Ifc4x3_tc1::IfcProcessSelect Ifc4x3_tc1::IfcRelAssignsToProcess::RelatingProcess() const { return ((express::Base)(get_attribute_value(6))).as<::Ifc4x3_tc1::IfcProcessSelect>(); } +::Ifc4x3_tc1::IfcProcessSelect Ifc4x3_tc1::IfcRelAssignsToProcess::RelatingProcess() const { return ((express::base)(get_attribute_value(6))).as<::Ifc4x3_tc1::IfcProcessSelect>(); } void Ifc4x3_tc1::IfcRelAssignsToProcess::setRelatingProcess(const ::Ifc4x3_tc1::IfcProcessSelect& v) { set_attribute_value(6, v);if constexpr (false)unset_attribute_value(6); } -::Ifc4x3_tc1::IfcMeasureWithUnit Ifc4x3_tc1::IfcRelAssignsToProcess::QuantityInProcess() const { if(get_attribute_value(7).isNull()) { return ::Ifc4x3_tc1::IfcMeasureWithUnit{}; } return ((express::Base)(get_attribute_value(7))).as<::Ifc4x3_tc1::IfcMeasureWithUnit>(); } +::Ifc4x3_tc1::IfcMeasureWithUnit Ifc4x3_tc1::IfcRelAssignsToProcess::QuantityInProcess() const { if(get_attribute_value(7).isNull()) { return ::Ifc4x3_tc1::IfcMeasureWithUnit{}; } return ((express::base)(get_attribute_value(7))).as<::Ifc4x3_tc1::IfcMeasureWithUnit>(); } void Ifc4x3_tc1::IfcRelAssignsToProcess::setQuantityInProcess(const ::Ifc4x3_tc1::IfcMeasureWithUnit& v) { set_attribute_value(7, v);if constexpr (false)unset_attribute_value(7); } const ifcopenshell::entity& Ifc4x3_tc1::IfcRelAssignsToProcess::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[903]); } -Ifc4x3_tc1::IfcRelAssignsToProcess Ifc4x3_tc1::IfcRelAssignsToProcess::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3_tc1::IfcObjectDefinition > v5_RelatedObjects, std::optional< bool > v6_RelatedObjectsType, ::Ifc4x3_tc1::IfcProcessSelect v7_RelatingProcess, ::Ifc4x3_tc1::IfcMeasureWithUnit v8_QuantityInProcess) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedObjects)); if (v6_RelatedObjectsType) {set_attribute_value(5, (*v6_RelatedObjectsType)); }set_attribute_value(6, (v7_RelatingProcess));set_attribute_value(7, (v8_QuantityInProcess));; return *this; } +Ifc4x3_tc1::IfcRelAssignsToProcess Ifc4x3_tc1::IfcRelAssignsToProcess::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3_tc1::IfcObjectDefinition > v5_RelatedObjects, std::optional< bool > v6_RelatedObjectsType, ::Ifc4x3_tc1::IfcProcessSelect v7_RelatingProcess, ::Ifc4x3_tc1::IfcMeasureWithUnit v8_QuantityInProcess) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedObjects)); if (v6_RelatedObjectsType) {set_attribute_value(5, (*v6_RelatedObjectsType)); }set_attribute_value(6, (v7_RelatingProcess));set_attribute_value(7, (v8_QuantityInProcess));; return *this; } // Function implementations for IfcRelAssignsToProduct -::Ifc4x3_tc1::IfcProductSelect Ifc4x3_tc1::IfcRelAssignsToProduct::RelatingProduct() const { return ((express::Base)(get_attribute_value(6))).as<::Ifc4x3_tc1::IfcProductSelect>(); } +::Ifc4x3_tc1::IfcProductSelect Ifc4x3_tc1::IfcRelAssignsToProduct::RelatingProduct() const { return ((express::base)(get_attribute_value(6))).as<::Ifc4x3_tc1::IfcProductSelect>(); } void Ifc4x3_tc1::IfcRelAssignsToProduct::setRelatingProduct(const ::Ifc4x3_tc1::IfcProductSelect& v) { set_attribute_value(6, v);if constexpr (false)unset_attribute_value(6); } const ifcopenshell::entity& Ifc4x3_tc1::IfcRelAssignsToProduct::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[904]); } -Ifc4x3_tc1::IfcRelAssignsToProduct Ifc4x3_tc1::IfcRelAssignsToProduct::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3_tc1::IfcObjectDefinition > v5_RelatedObjects, std::optional< bool > v6_RelatedObjectsType, ::Ifc4x3_tc1::IfcProductSelect v7_RelatingProduct) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedObjects)); if (v6_RelatedObjectsType) {set_attribute_value(5, (*v6_RelatedObjectsType)); }set_attribute_value(6, (v7_RelatingProduct));; return *this; } +Ifc4x3_tc1::IfcRelAssignsToProduct Ifc4x3_tc1::IfcRelAssignsToProduct::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3_tc1::IfcObjectDefinition > v5_RelatedObjects, std::optional< bool > v6_RelatedObjectsType, ::Ifc4x3_tc1::IfcProductSelect v7_RelatingProduct) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedObjects)); if (v6_RelatedObjectsType) {set_attribute_value(5, (*v6_RelatedObjectsType)); }set_attribute_value(6, (v7_RelatingProduct));; return *this; } // Function implementations for IfcRelAssignsToResource -::Ifc4x3_tc1::IfcResourceSelect Ifc4x3_tc1::IfcRelAssignsToResource::RelatingResource() const { return ((express::Base)(get_attribute_value(6))).as<::Ifc4x3_tc1::IfcResourceSelect>(); } +::Ifc4x3_tc1::IfcResourceSelect Ifc4x3_tc1::IfcRelAssignsToResource::RelatingResource() const { return ((express::base)(get_attribute_value(6))).as<::Ifc4x3_tc1::IfcResourceSelect>(); } void Ifc4x3_tc1::IfcRelAssignsToResource::setRelatingResource(const ::Ifc4x3_tc1::IfcResourceSelect& v) { set_attribute_value(6, v);if constexpr (false)unset_attribute_value(6); } const ifcopenshell::entity& Ifc4x3_tc1::IfcRelAssignsToResource::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[905]); } -Ifc4x3_tc1::IfcRelAssignsToResource Ifc4x3_tc1::IfcRelAssignsToResource::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3_tc1::IfcObjectDefinition > v5_RelatedObjects, std::optional< bool > v6_RelatedObjectsType, ::Ifc4x3_tc1::IfcResourceSelect v7_RelatingResource) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedObjects)); if (v6_RelatedObjectsType) {set_attribute_value(5, (*v6_RelatedObjectsType)); }set_attribute_value(6, (v7_RelatingResource));; return *this; } +Ifc4x3_tc1::IfcRelAssignsToResource Ifc4x3_tc1::IfcRelAssignsToResource::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3_tc1::IfcObjectDefinition > v5_RelatedObjects, std::optional< bool > v6_RelatedObjectsType, ::Ifc4x3_tc1::IfcResourceSelect v7_RelatingResource) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedObjects)); if (v6_RelatedObjectsType) {set_attribute_value(5, (*v6_RelatedObjectsType)); }set_attribute_value(6, (v7_RelatingResource));; return *this; } // Function implementations for IfcRelAssociates -std::vector< ::Ifc4x3_tc1::IfcDefinitionSelect > Ifc4x3_tc1::IfcRelAssociates::RelatedObjects() const { std::vector es = get_attribute_value(4); return cast_vector<::Ifc4x3_tc1::IfcDefinitionSelect>(es); } -void Ifc4x3_tc1::IfcRelAssociates::setRelatedObjects(const std::vector< ::Ifc4x3_tc1::IfcDefinitionSelect >& v) { set_attribute_value(4, cast_vector(v));if constexpr (false)unset_attribute_value(4); } +std::vector< ::Ifc4x3_tc1::IfcDefinitionSelect > Ifc4x3_tc1::IfcRelAssociates::RelatedObjects() const { std::vector es = get_attribute_value(4); return cast_vector<::Ifc4x3_tc1::IfcDefinitionSelect>(es); } +void Ifc4x3_tc1::IfcRelAssociates::setRelatedObjects(const std::vector< ::Ifc4x3_tc1::IfcDefinitionSelect >& v) { set_attribute_value(4, cast_vector(v));if constexpr (false)unset_attribute_value(4); } const ifcopenshell::entity& Ifc4x3_tc1::IfcRelAssociates::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[906]); } -Ifc4x3_tc1::IfcRelAssociates Ifc4x3_tc1::IfcRelAssociates::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3_tc1::IfcDefinitionSelect > v5_RelatedObjects) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedObjects));; return *this; } +Ifc4x3_tc1::IfcRelAssociates Ifc4x3_tc1::IfcRelAssociates::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3_tc1::IfcDefinitionSelect > v5_RelatedObjects) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedObjects));; return *this; } // Function implementations for IfcRelAssociatesApproval -::Ifc4x3_tc1::IfcApproval Ifc4x3_tc1::IfcRelAssociatesApproval::RelatingApproval() const { return ((express::Base)(get_attribute_value(5))).as<::Ifc4x3_tc1::IfcApproval>(); } +::Ifc4x3_tc1::IfcApproval Ifc4x3_tc1::IfcRelAssociatesApproval::RelatingApproval() const { return ((express::base)(get_attribute_value(5))).as<::Ifc4x3_tc1::IfcApproval>(); } void Ifc4x3_tc1::IfcRelAssociatesApproval::setRelatingApproval(const ::Ifc4x3_tc1::IfcApproval& v) { set_attribute_value(5, v);if constexpr (false)unset_attribute_value(5); } const ifcopenshell::entity& Ifc4x3_tc1::IfcRelAssociatesApproval::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[907]); } -Ifc4x3_tc1::IfcRelAssociatesApproval Ifc4x3_tc1::IfcRelAssociatesApproval::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3_tc1::IfcDefinitionSelect > v5_RelatedObjects, ::Ifc4x3_tc1::IfcApproval v6_RelatingApproval) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedObjects));set_attribute_value(5, (v6_RelatingApproval));; return *this; } +Ifc4x3_tc1::IfcRelAssociatesApproval Ifc4x3_tc1::IfcRelAssociatesApproval::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3_tc1::IfcDefinitionSelect > v5_RelatedObjects, ::Ifc4x3_tc1::IfcApproval v6_RelatingApproval) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedObjects));set_attribute_value(5, (v6_RelatingApproval));; return *this; } // Function implementations for IfcRelAssociatesClassification -::Ifc4x3_tc1::IfcClassificationSelect Ifc4x3_tc1::IfcRelAssociatesClassification::RelatingClassification() const { return ((express::Base)(get_attribute_value(5))).as<::Ifc4x3_tc1::IfcClassificationSelect>(); } +::Ifc4x3_tc1::IfcClassificationSelect Ifc4x3_tc1::IfcRelAssociatesClassification::RelatingClassification() const { return ((express::base)(get_attribute_value(5))).as<::Ifc4x3_tc1::IfcClassificationSelect>(); } void Ifc4x3_tc1::IfcRelAssociatesClassification::setRelatingClassification(const ::Ifc4x3_tc1::IfcClassificationSelect& v) { set_attribute_value(5, v);if constexpr (false)unset_attribute_value(5); } const ifcopenshell::entity& Ifc4x3_tc1::IfcRelAssociatesClassification::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[908]); } -Ifc4x3_tc1::IfcRelAssociatesClassification Ifc4x3_tc1::IfcRelAssociatesClassification::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3_tc1::IfcDefinitionSelect > v5_RelatedObjects, ::Ifc4x3_tc1::IfcClassificationSelect v6_RelatingClassification) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedObjects));set_attribute_value(5, (v6_RelatingClassification));; return *this; } +Ifc4x3_tc1::IfcRelAssociatesClassification Ifc4x3_tc1::IfcRelAssociatesClassification::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3_tc1::IfcDefinitionSelect > v5_RelatedObjects, ::Ifc4x3_tc1::IfcClassificationSelect v6_RelatingClassification) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedObjects));set_attribute_value(5, (v6_RelatingClassification));; return *this; } // Function implementations for IfcRelAssociatesConstraint std::optional< std::string > Ifc4x3_tc1::IfcRelAssociatesConstraint::Intent() const { if(get_attribute_value(5).isNull()) { return std::nullopt; } std::string v = get_attribute_value(5); return v; } void Ifc4x3_tc1::IfcRelAssociatesConstraint::setIntent(const std::optional< std::string >& v) { if (v) {set_attribute_value(5, *v);} else {unset_attribute_value(5);} } -::Ifc4x3_tc1::IfcConstraint Ifc4x3_tc1::IfcRelAssociatesConstraint::RelatingConstraint() const { return ((express::Base)(get_attribute_value(6))).as<::Ifc4x3_tc1::IfcConstraint>(); } +::Ifc4x3_tc1::IfcConstraint Ifc4x3_tc1::IfcRelAssociatesConstraint::RelatingConstraint() const { return ((express::base)(get_attribute_value(6))).as<::Ifc4x3_tc1::IfcConstraint>(); } void Ifc4x3_tc1::IfcRelAssociatesConstraint::setRelatingConstraint(const ::Ifc4x3_tc1::IfcConstraint& v) { set_attribute_value(6, v);if constexpr (false)unset_attribute_value(6); } const ifcopenshell::entity& Ifc4x3_tc1::IfcRelAssociatesConstraint::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[909]); } -Ifc4x3_tc1::IfcRelAssociatesConstraint Ifc4x3_tc1::IfcRelAssociatesConstraint::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3_tc1::IfcDefinitionSelect > v5_RelatedObjects, std::optional< std::string > v6_Intent, ::Ifc4x3_tc1::IfcConstraint v7_RelatingConstraint) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedObjects)); if (v6_Intent) {set_attribute_value(5, (*v6_Intent)); }set_attribute_value(6, (v7_RelatingConstraint));; return *this; } +Ifc4x3_tc1::IfcRelAssociatesConstraint Ifc4x3_tc1::IfcRelAssociatesConstraint::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3_tc1::IfcDefinitionSelect > v5_RelatedObjects, std::optional< std::string > v6_Intent, ::Ifc4x3_tc1::IfcConstraint v7_RelatingConstraint) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedObjects)); if (v6_Intent) {set_attribute_value(5, (*v6_Intent)); }set_attribute_value(6, (v7_RelatingConstraint));; return *this; } // Function implementations for IfcRelAssociatesDocument -::Ifc4x3_tc1::IfcDocumentSelect Ifc4x3_tc1::IfcRelAssociatesDocument::RelatingDocument() const { return ((express::Base)(get_attribute_value(5))).as<::Ifc4x3_tc1::IfcDocumentSelect>(); } +::Ifc4x3_tc1::IfcDocumentSelect Ifc4x3_tc1::IfcRelAssociatesDocument::RelatingDocument() const { return ((express::base)(get_attribute_value(5))).as<::Ifc4x3_tc1::IfcDocumentSelect>(); } void Ifc4x3_tc1::IfcRelAssociatesDocument::setRelatingDocument(const ::Ifc4x3_tc1::IfcDocumentSelect& v) { set_attribute_value(5, v);if constexpr (false)unset_attribute_value(5); } const ifcopenshell::entity& Ifc4x3_tc1::IfcRelAssociatesDocument::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[910]); } -Ifc4x3_tc1::IfcRelAssociatesDocument Ifc4x3_tc1::IfcRelAssociatesDocument::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3_tc1::IfcDefinitionSelect > v5_RelatedObjects, ::Ifc4x3_tc1::IfcDocumentSelect v6_RelatingDocument) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedObjects));set_attribute_value(5, (v6_RelatingDocument));; return *this; } +Ifc4x3_tc1::IfcRelAssociatesDocument Ifc4x3_tc1::IfcRelAssociatesDocument::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3_tc1::IfcDefinitionSelect > v5_RelatedObjects, ::Ifc4x3_tc1::IfcDocumentSelect v6_RelatingDocument) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedObjects));set_attribute_value(5, (v6_RelatingDocument));; return *this; } // Function implementations for IfcRelAssociatesLibrary -::Ifc4x3_tc1::IfcLibrarySelect Ifc4x3_tc1::IfcRelAssociatesLibrary::RelatingLibrary() const { return ((express::Base)(get_attribute_value(5))).as<::Ifc4x3_tc1::IfcLibrarySelect>(); } +::Ifc4x3_tc1::IfcLibrarySelect Ifc4x3_tc1::IfcRelAssociatesLibrary::RelatingLibrary() const { return ((express::base)(get_attribute_value(5))).as<::Ifc4x3_tc1::IfcLibrarySelect>(); } void Ifc4x3_tc1::IfcRelAssociatesLibrary::setRelatingLibrary(const ::Ifc4x3_tc1::IfcLibrarySelect& v) { set_attribute_value(5, v);if constexpr (false)unset_attribute_value(5); } const ifcopenshell::entity& Ifc4x3_tc1::IfcRelAssociatesLibrary::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[911]); } -Ifc4x3_tc1::IfcRelAssociatesLibrary Ifc4x3_tc1::IfcRelAssociatesLibrary::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3_tc1::IfcDefinitionSelect > v5_RelatedObjects, ::Ifc4x3_tc1::IfcLibrarySelect v6_RelatingLibrary) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedObjects));set_attribute_value(5, (v6_RelatingLibrary));; return *this; } +Ifc4x3_tc1::IfcRelAssociatesLibrary Ifc4x3_tc1::IfcRelAssociatesLibrary::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3_tc1::IfcDefinitionSelect > v5_RelatedObjects, ::Ifc4x3_tc1::IfcLibrarySelect v6_RelatingLibrary) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedObjects));set_attribute_value(5, (v6_RelatingLibrary));; return *this; } // Function implementations for IfcRelAssociatesMaterial -::Ifc4x3_tc1::IfcMaterialSelect Ifc4x3_tc1::IfcRelAssociatesMaterial::RelatingMaterial() const { return ((express::Base)(get_attribute_value(5))).as<::Ifc4x3_tc1::IfcMaterialSelect>(); } +::Ifc4x3_tc1::IfcMaterialSelect Ifc4x3_tc1::IfcRelAssociatesMaterial::RelatingMaterial() const { return ((express::base)(get_attribute_value(5))).as<::Ifc4x3_tc1::IfcMaterialSelect>(); } void Ifc4x3_tc1::IfcRelAssociatesMaterial::setRelatingMaterial(const ::Ifc4x3_tc1::IfcMaterialSelect& v) { set_attribute_value(5, v);if constexpr (false)unset_attribute_value(5); } const ifcopenshell::entity& Ifc4x3_tc1::IfcRelAssociatesMaterial::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[912]); } -Ifc4x3_tc1::IfcRelAssociatesMaterial Ifc4x3_tc1::IfcRelAssociatesMaterial::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3_tc1::IfcDefinitionSelect > v5_RelatedObjects, ::Ifc4x3_tc1::IfcMaterialSelect v6_RelatingMaterial) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedObjects));set_attribute_value(5, (v6_RelatingMaterial));; return *this; } +Ifc4x3_tc1::IfcRelAssociatesMaterial Ifc4x3_tc1::IfcRelAssociatesMaterial::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3_tc1::IfcDefinitionSelect > v5_RelatedObjects, ::Ifc4x3_tc1::IfcMaterialSelect v6_RelatingMaterial) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedObjects));set_attribute_value(5, (v6_RelatingMaterial));; return *this; } // Function implementations for IfcRelAssociatesProfileDef -::Ifc4x3_tc1::IfcProfileDef Ifc4x3_tc1::IfcRelAssociatesProfileDef::RelatingProfileDef() const { return ((express::Base)(get_attribute_value(5))).as<::Ifc4x3_tc1::IfcProfileDef>(); } +::Ifc4x3_tc1::IfcProfileDef Ifc4x3_tc1::IfcRelAssociatesProfileDef::RelatingProfileDef() const { return ((express::base)(get_attribute_value(5))).as<::Ifc4x3_tc1::IfcProfileDef>(); } void Ifc4x3_tc1::IfcRelAssociatesProfileDef::setRelatingProfileDef(const ::Ifc4x3_tc1::IfcProfileDef& v) { set_attribute_value(5, v);if constexpr (false)unset_attribute_value(5); } const ifcopenshell::entity& Ifc4x3_tc1::IfcRelAssociatesProfileDef::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[913]); } -Ifc4x3_tc1::IfcRelAssociatesProfileDef Ifc4x3_tc1::IfcRelAssociatesProfileDef::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3_tc1::IfcDefinitionSelect > v5_RelatedObjects, ::Ifc4x3_tc1::IfcProfileDef v6_RelatingProfileDef) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedObjects));set_attribute_value(5, (v6_RelatingProfileDef));; return *this; } +Ifc4x3_tc1::IfcRelAssociatesProfileDef Ifc4x3_tc1::IfcRelAssociatesProfileDef::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3_tc1::IfcDefinitionSelect > v5_RelatedObjects, ::Ifc4x3_tc1::IfcProfileDef v6_RelatingProfileDef) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedObjects));set_attribute_value(5, (v6_RelatingProfileDef));; return *this; } // Function implementations for IfcRelConnects @@ -13747,11 +13747,11 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcRelConnects::Class() { return *((ifco Ifc4x3_tc1::IfcRelConnects Ifc4x3_tc1::IfcRelConnects::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }; return *this; } // Function implementations for IfcRelConnectsElements -::Ifc4x3_tc1::IfcConnectionGeometry Ifc4x3_tc1::IfcRelConnectsElements::ConnectionGeometry() const { if(get_attribute_value(4).isNull()) { return ::Ifc4x3_tc1::IfcConnectionGeometry{}; } return ((express::Base)(get_attribute_value(4))).as<::Ifc4x3_tc1::IfcConnectionGeometry>(); } +::Ifc4x3_tc1::IfcConnectionGeometry Ifc4x3_tc1::IfcRelConnectsElements::ConnectionGeometry() const { if(get_attribute_value(4).isNull()) { return ::Ifc4x3_tc1::IfcConnectionGeometry{}; } return ((express::base)(get_attribute_value(4))).as<::Ifc4x3_tc1::IfcConnectionGeometry>(); } void Ifc4x3_tc1::IfcRelConnectsElements::setConnectionGeometry(const ::Ifc4x3_tc1::IfcConnectionGeometry& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } -::Ifc4x3_tc1::IfcElement Ifc4x3_tc1::IfcRelConnectsElements::RelatingElement() const { return ((express::Base)(get_attribute_value(5))).as<::Ifc4x3_tc1::IfcElement>(); } +::Ifc4x3_tc1::IfcElement Ifc4x3_tc1::IfcRelConnectsElements::RelatingElement() const { return ((express::base)(get_attribute_value(5))).as<::Ifc4x3_tc1::IfcElement>(); } void Ifc4x3_tc1::IfcRelConnectsElements::setRelatingElement(const ::Ifc4x3_tc1::IfcElement& v) { set_attribute_value(5, v);if constexpr (false)unset_attribute_value(5); } -::Ifc4x3_tc1::IfcElement Ifc4x3_tc1::IfcRelConnectsElements::RelatedElement() const { return ((express::Base)(get_attribute_value(6))).as<::Ifc4x3_tc1::IfcElement>(); } +::Ifc4x3_tc1::IfcElement Ifc4x3_tc1::IfcRelConnectsElements::RelatedElement() const { return ((express::base)(get_attribute_value(6))).as<::Ifc4x3_tc1::IfcElement>(); } void Ifc4x3_tc1::IfcRelConnectsElements::setRelatedElement(const ::Ifc4x3_tc1::IfcElement& v) { set_attribute_value(6, v);if constexpr (false)unset_attribute_value(6); } @@ -13773,9 +13773,9 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcRelConnectsPathElements::Class() { re Ifc4x3_tc1::IfcRelConnectsPathElements Ifc4x3_tc1::IfcRelConnectsPathElements::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, ::Ifc4x3_tc1::IfcConnectionGeometry v5_ConnectionGeometry, ::Ifc4x3_tc1::IfcElement v6_RelatingElement, ::Ifc4x3_tc1::IfcElement v7_RelatedElement, std::vector< int64_t > /*[0:?]*/ v8_RelatingPriorities, std::vector< int64_t > /*[0:?]*/ v9_RelatedPriorities, ::Ifc4x3_tc1::IfcConnectionTypeEnum::Value v10_RelatedConnectionType, ::Ifc4x3_tc1::IfcConnectionTypeEnum::Value v11_RelatingConnectionType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, (v5_ConnectionGeometry));set_attribute_value(5, (v6_RelatingElement));set_attribute_value(6, (v7_RelatedElement));set_attribute_value(7, (v8_RelatingPriorities));set_attribute_value(8, (v9_RelatedPriorities));set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcConnectionTypeEnum::Class(),(size_t)v10_RelatedConnectionType)));set_attribute_value(10, (enumeration_reference(&::Ifc4x3_tc1::IfcConnectionTypeEnum::Class(),(size_t)v11_RelatingConnectionType)));; return *this; } // Function implementations for IfcRelConnectsPortToElement -::Ifc4x3_tc1::IfcPort Ifc4x3_tc1::IfcRelConnectsPortToElement::RelatingPort() const { return ((express::Base)(get_attribute_value(4))).as<::Ifc4x3_tc1::IfcPort>(); } +::Ifc4x3_tc1::IfcPort Ifc4x3_tc1::IfcRelConnectsPortToElement::RelatingPort() const { return ((express::base)(get_attribute_value(4))).as<::Ifc4x3_tc1::IfcPort>(); } void Ifc4x3_tc1::IfcRelConnectsPortToElement::setRelatingPort(const ::Ifc4x3_tc1::IfcPort& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } -::Ifc4x3_tc1::IfcDistributionElement Ifc4x3_tc1::IfcRelConnectsPortToElement::RelatedElement() const { return ((express::Base)(get_attribute_value(5))).as<::Ifc4x3_tc1::IfcDistributionElement>(); } +::Ifc4x3_tc1::IfcDistributionElement Ifc4x3_tc1::IfcRelConnectsPortToElement::RelatedElement() const { return ((express::base)(get_attribute_value(5))).as<::Ifc4x3_tc1::IfcDistributionElement>(); } void Ifc4x3_tc1::IfcRelConnectsPortToElement::setRelatedElement(const ::Ifc4x3_tc1::IfcDistributionElement& v) { set_attribute_value(5, v);if constexpr (false)unset_attribute_value(5); } @@ -13783,11 +13783,11 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcRelConnectsPortToElement::Class() { r Ifc4x3_tc1::IfcRelConnectsPortToElement Ifc4x3_tc1::IfcRelConnectsPortToElement::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, ::Ifc4x3_tc1::IfcPort v5_RelatingPort, ::Ifc4x3_tc1::IfcDistributionElement v6_RelatedElement) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, (v5_RelatingPort));set_attribute_value(5, (v6_RelatedElement));; return *this; } // Function implementations for IfcRelConnectsPorts -::Ifc4x3_tc1::IfcPort Ifc4x3_tc1::IfcRelConnectsPorts::RelatingPort() const { return ((express::Base)(get_attribute_value(4))).as<::Ifc4x3_tc1::IfcPort>(); } +::Ifc4x3_tc1::IfcPort Ifc4x3_tc1::IfcRelConnectsPorts::RelatingPort() const { return ((express::base)(get_attribute_value(4))).as<::Ifc4x3_tc1::IfcPort>(); } void Ifc4x3_tc1::IfcRelConnectsPorts::setRelatingPort(const ::Ifc4x3_tc1::IfcPort& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } -::Ifc4x3_tc1::IfcPort Ifc4x3_tc1::IfcRelConnectsPorts::RelatedPort() const { return ((express::Base)(get_attribute_value(5))).as<::Ifc4x3_tc1::IfcPort>(); } +::Ifc4x3_tc1::IfcPort Ifc4x3_tc1::IfcRelConnectsPorts::RelatedPort() const { return ((express::base)(get_attribute_value(5))).as<::Ifc4x3_tc1::IfcPort>(); } void Ifc4x3_tc1::IfcRelConnectsPorts::setRelatedPort(const ::Ifc4x3_tc1::IfcPort& v) { set_attribute_value(5, v);if constexpr (false)unset_attribute_value(5); } -::Ifc4x3_tc1::IfcElement Ifc4x3_tc1::IfcRelConnectsPorts::RealizingElement() const { if(get_attribute_value(6).isNull()) { return ::Ifc4x3_tc1::IfcElement{}; } return ((express::Base)(get_attribute_value(6))).as<::Ifc4x3_tc1::IfcElement>(); } +::Ifc4x3_tc1::IfcElement Ifc4x3_tc1::IfcRelConnectsPorts::RealizingElement() const { if(get_attribute_value(6).isNull()) { return ::Ifc4x3_tc1::IfcElement{}; } return ((express::base)(get_attribute_value(6))).as<::Ifc4x3_tc1::IfcElement>(); } void Ifc4x3_tc1::IfcRelConnectsPorts::setRealizingElement(const ::Ifc4x3_tc1::IfcElement& v) { set_attribute_value(6, v);if constexpr (false)unset_attribute_value(6); } @@ -13795,9 +13795,9 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcRelConnectsPorts::Class() { return *( Ifc4x3_tc1::IfcRelConnectsPorts Ifc4x3_tc1::IfcRelConnectsPorts::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, ::Ifc4x3_tc1::IfcPort v5_RelatingPort, ::Ifc4x3_tc1::IfcPort v6_RelatedPort, ::Ifc4x3_tc1::IfcElement v7_RealizingElement) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, (v5_RelatingPort));set_attribute_value(5, (v6_RelatedPort));set_attribute_value(6, (v7_RealizingElement));; return *this; } // Function implementations for IfcRelConnectsStructuralActivity -::Ifc4x3_tc1::IfcStructuralActivityAssignmentSelect Ifc4x3_tc1::IfcRelConnectsStructuralActivity::RelatingElement() const { return ((express::Base)(get_attribute_value(4))).as<::Ifc4x3_tc1::IfcStructuralActivityAssignmentSelect>(); } +::Ifc4x3_tc1::IfcStructuralActivityAssignmentSelect Ifc4x3_tc1::IfcRelConnectsStructuralActivity::RelatingElement() const { return ((express::base)(get_attribute_value(4))).as<::Ifc4x3_tc1::IfcStructuralActivityAssignmentSelect>(); } void Ifc4x3_tc1::IfcRelConnectsStructuralActivity::setRelatingElement(const ::Ifc4x3_tc1::IfcStructuralActivityAssignmentSelect& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } -::Ifc4x3_tc1::IfcStructuralActivity Ifc4x3_tc1::IfcRelConnectsStructuralActivity::RelatedStructuralActivity() const { return ((express::Base)(get_attribute_value(5))).as<::Ifc4x3_tc1::IfcStructuralActivity>(); } +::Ifc4x3_tc1::IfcStructuralActivity Ifc4x3_tc1::IfcRelConnectsStructuralActivity::RelatedStructuralActivity() const { return ((express::base)(get_attribute_value(5))).as<::Ifc4x3_tc1::IfcStructuralActivity>(); } void Ifc4x3_tc1::IfcRelConnectsStructuralActivity::setRelatedStructuralActivity(const ::Ifc4x3_tc1::IfcStructuralActivity& v) { set_attribute_value(5, v);if constexpr (false)unset_attribute_value(5); } @@ -13805,17 +13805,17 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcRelConnectsStructuralActivity::Class( Ifc4x3_tc1::IfcRelConnectsStructuralActivity Ifc4x3_tc1::IfcRelConnectsStructuralActivity::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, ::Ifc4x3_tc1::IfcStructuralActivityAssignmentSelect v5_RelatingElement, ::Ifc4x3_tc1::IfcStructuralActivity v6_RelatedStructuralActivity) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, (v5_RelatingElement));set_attribute_value(5, (v6_RelatedStructuralActivity));; return *this; } // Function implementations for IfcRelConnectsStructuralMember -::Ifc4x3_tc1::IfcStructuralMember Ifc4x3_tc1::IfcRelConnectsStructuralMember::RelatingStructuralMember() const { return ((express::Base)(get_attribute_value(4))).as<::Ifc4x3_tc1::IfcStructuralMember>(); } +::Ifc4x3_tc1::IfcStructuralMember Ifc4x3_tc1::IfcRelConnectsStructuralMember::RelatingStructuralMember() const { return ((express::base)(get_attribute_value(4))).as<::Ifc4x3_tc1::IfcStructuralMember>(); } void Ifc4x3_tc1::IfcRelConnectsStructuralMember::setRelatingStructuralMember(const ::Ifc4x3_tc1::IfcStructuralMember& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } -::Ifc4x3_tc1::IfcStructuralConnection Ifc4x3_tc1::IfcRelConnectsStructuralMember::RelatedStructuralConnection() const { return ((express::Base)(get_attribute_value(5))).as<::Ifc4x3_tc1::IfcStructuralConnection>(); } +::Ifc4x3_tc1::IfcStructuralConnection Ifc4x3_tc1::IfcRelConnectsStructuralMember::RelatedStructuralConnection() const { return ((express::base)(get_attribute_value(5))).as<::Ifc4x3_tc1::IfcStructuralConnection>(); } void Ifc4x3_tc1::IfcRelConnectsStructuralMember::setRelatedStructuralConnection(const ::Ifc4x3_tc1::IfcStructuralConnection& v) { set_attribute_value(5, v);if constexpr (false)unset_attribute_value(5); } -::Ifc4x3_tc1::IfcBoundaryCondition Ifc4x3_tc1::IfcRelConnectsStructuralMember::AppliedCondition() const { if(get_attribute_value(6).isNull()) { return ::Ifc4x3_tc1::IfcBoundaryCondition{}; } return ((express::Base)(get_attribute_value(6))).as<::Ifc4x3_tc1::IfcBoundaryCondition>(); } +::Ifc4x3_tc1::IfcBoundaryCondition Ifc4x3_tc1::IfcRelConnectsStructuralMember::AppliedCondition() const { if(get_attribute_value(6).isNull()) { return ::Ifc4x3_tc1::IfcBoundaryCondition{}; } return ((express::base)(get_attribute_value(6))).as<::Ifc4x3_tc1::IfcBoundaryCondition>(); } void Ifc4x3_tc1::IfcRelConnectsStructuralMember::setAppliedCondition(const ::Ifc4x3_tc1::IfcBoundaryCondition& v) { set_attribute_value(6, v);if constexpr (false)unset_attribute_value(6); } -::Ifc4x3_tc1::IfcStructuralConnectionCondition Ifc4x3_tc1::IfcRelConnectsStructuralMember::AdditionalConditions() const { if(get_attribute_value(7).isNull()) { return ::Ifc4x3_tc1::IfcStructuralConnectionCondition{}; } return ((express::Base)(get_attribute_value(7))).as<::Ifc4x3_tc1::IfcStructuralConnectionCondition>(); } +::Ifc4x3_tc1::IfcStructuralConnectionCondition Ifc4x3_tc1::IfcRelConnectsStructuralMember::AdditionalConditions() const { if(get_attribute_value(7).isNull()) { return ::Ifc4x3_tc1::IfcStructuralConnectionCondition{}; } return ((express::base)(get_attribute_value(7))).as<::Ifc4x3_tc1::IfcStructuralConnectionCondition>(); } void Ifc4x3_tc1::IfcRelConnectsStructuralMember::setAdditionalConditions(const ::Ifc4x3_tc1::IfcStructuralConnectionCondition& v) { set_attribute_value(7, v);if constexpr (false)unset_attribute_value(7); } std::optional< double > Ifc4x3_tc1::IfcRelConnectsStructuralMember::SupportedLength() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } double v = get_attribute_value(8); return v; } void Ifc4x3_tc1::IfcRelConnectsStructuralMember::setSupportedLength(const std::optional< double >& v) { if (v) {set_attribute_value(8, *v);} else {unset_attribute_value(8);} } -::Ifc4x3_tc1::IfcAxis2Placement3D Ifc4x3_tc1::IfcRelConnectsStructuralMember::ConditionCoordinateSystem() const { if(get_attribute_value(9).isNull()) { return ::Ifc4x3_tc1::IfcAxis2Placement3D{}; } return ((express::Base)(get_attribute_value(9))).as<::Ifc4x3_tc1::IfcAxis2Placement3D>(); } +::Ifc4x3_tc1::IfcAxis2Placement3D Ifc4x3_tc1::IfcRelConnectsStructuralMember::ConditionCoordinateSystem() const { if(get_attribute_value(9).isNull()) { return ::Ifc4x3_tc1::IfcAxis2Placement3D{}; } return ((express::base)(get_attribute_value(9))).as<::Ifc4x3_tc1::IfcAxis2Placement3D>(); } void Ifc4x3_tc1::IfcRelConnectsStructuralMember::setConditionCoordinateSystem(const ::Ifc4x3_tc1::IfcAxis2Placement3D& v) { set_attribute_value(9, v);if constexpr (false)unset_attribute_value(9); } @@ -13823,7 +13823,7 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcRelConnectsStructuralMember::Class() Ifc4x3_tc1::IfcRelConnectsStructuralMember Ifc4x3_tc1::IfcRelConnectsStructuralMember::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, ::Ifc4x3_tc1::IfcStructuralMember v5_RelatingStructuralMember, ::Ifc4x3_tc1::IfcStructuralConnection v6_RelatedStructuralConnection, ::Ifc4x3_tc1::IfcBoundaryCondition v7_AppliedCondition, ::Ifc4x3_tc1::IfcStructuralConnectionCondition v8_AdditionalConditions, std::optional< double > v9_SupportedLength, ::Ifc4x3_tc1::IfcAxis2Placement3D v10_ConditionCoordinateSystem) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, (v5_RelatingStructuralMember));set_attribute_value(5, (v6_RelatedStructuralConnection));set_attribute_value(6, (v7_AppliedCondition));set_attribute_value(7, (v8_AdditionalConditions)); if (v9_SupportedLength) {set_attribute_value(8, (*v9_SupportedLength)); }set_attribute_value(9, (v10_ConditionCoordinateSystem));; return *this; } // Function implementations for IfcRelConnectsWithEccentricity -::Ifc4x3_tc1::IfcConnectionGeometry Ifc4x3_tc1::IfcRelConnectsWithEccentricity::ConnectionConstraint() const { return ((express::Base)(get_attribute_value(10))).as<::Ifc4x3_tc1::IfcConnectionGeometry>(); } +::Ifc4x3_tc1::IfcConnectionGeometry Ifc4x3_tc1::IfcRelConnectsWithEccentricity::ConnectionConstraint() const { return ((express::base)(get_attribute_value(10))).as<::Ifc4x3_tc1::IfcConnectionGeometry>(); } void Ifc4x3_tc1::IfcRelConnectsWithEccentricity::setConnectionConstraint(const ::Ifc4x3_tc1::IfcConnectionGeometry& v) { set_attribute_value(10, v);if constexpr (false)unset_attribute_value(10); } @@ -13831,54 +13831,54 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcRelConnectsWithEccentricity::Class() Ifc4x3_tc1::IfcRelConnectsWithEccentricity Ifc4x3_tc1::IfcRelConnectsWithEccentricity::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, ::Ifc4x3_tc1::IfcStructuralMember v5_RelatingStructuralMember, ::Ifc4x3_tc1::IfcStructuralConnection v6_RelatedStructuralConnection, ::Ifc4x3_tc1::IfcBoundaryCondition v7_AppliedCondition, ::Ifc4x3_tc1::IfcStructuralConnectionCondition v8_AdditionalConditions, std::optional< double > v9_SupportedLength, ::Ifc4x3_tc1::IfcAxis2Placement3D v10_ConditionCoordinateSystem, ::Ifc4x3_tc1::IfcConnectionGeometry v11_ConnectionConstraint) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, (v5_RelatingStructuralMember));set_attribute_value(5, (v6_RelatedStructuralConnection));set_attribute_value(6, (v7_AppliedCondition));set_attribute_value(7, (v8_AdditionalConditions)); if (v9_SupportedLength) {set_attribute_value(8, (*v9_SupportedLength)); }set_attribute_value(9, (v10_ConditionCoordinateSystem));set_attribute_value(10, (v11_ConnectionConstraint));; return *this; } // Function implementations for IfcRelConnectsWithRealizingElements -std::vector< ::Ifc4x3_tc1::IfcElement > Ifc4x3_tc1::IfcRelConnectsWithRealizingElements::RealizingElements() const { std::vector es = get_attribute_value(7); return cast_vector<::Ifc4x3_tc1::IfcElement>(es); } -void Ifc4x3_tc1::IfcRelConnectsWithRealizingElements::setRealizingElements(const std::vector< ::Ifc4x3_tc1::IfcElement >& v) { set_attribute_value(7, cast_vector(v));if constexpr (false)unset_attribute_value(7); } +std::vector< ::Ifc4x3_tc1::IfcElement > Ifc4x3_tc1::IfcRelConnectsWithRealizingElements::RealizingElements() const { std::vector es = get_attribute_value(7); return cast_vector<::Ifc4x3_tc1::IfcElement>(es); } +void Ifc4x3_tc1::IfcRelConnectsWithRealizingElements::setRealizingElements(const std::vector< ::Ifc4x3_tc1::IfcElement >& v) { set_attribute_value(7, cast_vector(v));if constexpr (false)unset_attribute_value(7); } std::optional< std::string > Ifc4x3_tc1::IfcRelConnectsWithRealizingElements::ConnectionType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } std::string v = get_attribute_value(8); return v; } void Ifc4x3_tc1::IfcRelConnectsWithRealizingElements::setConnectionType(const std::optional< std::string >& v) { if (v) {set_attribute_value(8, *v);} else {unset_attribute_value(8);} } const ifcopenshell::entity& Ifc4x3_tc1::IfcRelConnectsWithRealizingElements::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[923]); } -Ifc4x3_tc1::IfcRelConnectsWithRealizingElements Ifc4x3_tc1::IfcRelConnectsWithRealizingElements::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, ::Ifc4x3_tc1::IfcConnectionGeometry v5_ConnectionGeometry, ::Ifc4x3_tc1::IfcElement v6_RelatingElement, ::Ifc4x3_tc1::IfcElement v7_RelatedElement, std::vector< ::Ifc4x3_tc1::IfcElement > v8_RealizingElements, std::optional< std::string > v9_ConnectionType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, (v5_ConnectionGeometry));set_attribute_value(5, (v6_RelatingElement));set_attribute_value(6, (v7_RelatedElement));set_attribute_value(7, cast_vector(v8_RealizingElements)); if (v9_ConnectionType) {set_attribute_value(8, (*v9_ConnectionType)); }; return *this; } +Ifc4x3_tc1::IfcRelConnectsWithRealizingElements Ifc4x3_tc1::IfcRelConnectsWithRealizingElements::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, ::Ifc4x3_tc1::IfcConnectionGeometry v5_ConnectionGeometry, ::Ifc4x3_tc1::IfcElement v6_RelatingElement, ::Ifc4x3_tc1::IfcElement v7_RelatedElement, std::vector< ::Ifc4x3_tc1::IfcElement > v8_RealizingElements, std::optional< std::string > v9_ConnectionType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, (v5_ConnectionGeometry));set_attribute_value(5, (v6_RelatingElement));set_attribute_value(6, (v7_RelatedElement));set_attribute_value(7, cast_vector(v8_RealizingElements)); if (v9_ConnectionType) {set_attribute_value(8, (*v9_ConnectionType)); }; return *this; } // Function implementations for IfcRelContainedInSpatialStructure -std::vector< ::Ifc4x3_tc1::IfcProduct > Ifc4x3_tc1::IfcRelContainedInSpatialStructure::RelatedElements() const { std::vector es = get_attribute_value(4); return cast_vector<::Ifc4x3_tc1::IfcProduct>(es); } -void Ifc4x3_tc1::IfcRelContainedInSpatialStructure::setRelatedElements(const std::vector< ::Ifc4x3_tc1::IfcProduct >& v) { set_attribute_value(4, cast_vector(v));if constexpr (false)unset_attribute_value(4); } -::Ifc4x3_tc1::IfcSpatialElement Ifc4x3_tc1::IfcRelContainedInSpatialStructure::RelatingStructure() const { return ((express::Base)(get_attribute_value(5))).as<::Ifc4x3_tc1::IfcSpatialElement>(); } +std::vector< ::Ifc4x3_tc1::IfcProduct > Ifc4x3_tc1::IfcRelContainedInSpatialStructure::RelatedElements() const { std::vector es = get_attribute_value(4); return cast_vector<::Ifc4x3_tc1::IfcProduct>(es); } +void Ifc4x3_tc1::IfcRelContainedInSpatialStructure::setRelatedElements(const std::vector< ::Ifc4x3_tc1::IfcProduct >& v) { set_attribute_value(4, cast_vector(v));if constexpr (false)unset_attribute_value(4); } +::Ifc4x3_tc1::IfcSpatialElement Ifc4x3_tc1::IfcRelContainedInSpatialStructure::RelatingStructure() const { return ((express::base)(get_attribute_value(5))).as<::Ifc4x3_tc1::IfcSpatialElement>(); } void Ifc4x3_tc1::IfcRelContainedInSpatialStructure::setRelatingStructure(const ::Ifc4x3_tc1::IfcSpatialElement& v) { set_attribute_value(5, v);if constexpr (false)unset_attribute_value(5); } const ifcopenshell::entity& Ifc4x3_tc1::IfcRelContainedInSpatialStructure::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[924]); } -Ifc4x3_tc1::IfcRelContainedInSpatialStructure Ifc4x3_tc1::IfcRelContainedInSpatialStructure::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3_tc1::IfcProduct > v5_RelatedElements, ::Ifc4x3_tc1::IfcSpatialElement v6_RelatingStructure) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedElements));set_attribute_value(5, (v6_RelatingStructure));; return *this; } +Ifc4x3_tc1::IfcRelContainedInSpatialStructure Ifc4x3_tc1::IfcRelContainedInSpatialStructure::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3_tc1::IfcProduct > v5_RelatedElements, ::Ifc4x3_tc1::IfcSpatialElement v6_RelatingStructure) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedElements));set_attribute_value(5, (v6_RelatingStructure));; return *this; } // Function implementations for IfcRelCoversBldgElements -::Ifc4x3_tc1::IfcElement Ifc4x3_tc1::IfcRelCoversBldgElements::RelatingBuildingElement() const { return ((express::Base)(get_attribute_value(4))).as<::Ifc4x3_tc1::IfcElement>(); } +::Ifc4x3_tc1::IfcElement Ifc4x3_tc1::IfcRelCoversBldgElements::RelatingBuildingElement() const { return ((express::base)(get_attribute_value(4))).as<::Ifc4x3_tc1::IfcElement>(); } void Ifc4x3_tc1::IfcRelCoversBldgElements::setRelatingBuildingElement(const ::Ifc4x3_tc1::IfcElement& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } -std::vector< ::Ifc4x3_tc1::IfcCovering > Ifc4x3_tc1::IfcRelCoversBldgElements::RelatedCoverings() const { std::vector es = get_attribute_value(5); return cast_vector<::Ifc4x3_tc1::IfcCovering>(es); } -void Ifc4x3_tc1::IfcRelCoversBldgElements::setRelatedCoverings(const std::vector< ::Ifc4x3_tc1::IfcCovering >& v) { set_attribute_value(5, cast_vector(v));if constexpr (false)unset_attribute_value(5); } +std::vector< ::Ifc4x3_tc1::IfcCovering > Ifc4x3_tc1::IfcRelCoversBldgElements::RelatedCoverings() const { std::vector es = get_attribute_value(5); return cast_vector<::Ifc4x3_tc1::IfcCovering>(es); } +void Ifc4x3_tc1::IfcRelCoversBldgElements::setRelatedCoverings(const std::vector< ::Ifc4x3_tc1::IfcCovering >& v) { set_attribute_value(5, cast_vector(v));if constexpr (false)unset_attribute_value(5); } const ifcopenshell::entity& Ifc4x3_tc1::IfcRelCoversBldgElements::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[925]); } -Ifc4x3_tc1::IfcRelCoversBldgElements Ifc4x3_tc1::IfcRelCoversBldgElements::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, ::Ifc4x3_tc1::IfcElement v5_RelatingBuildingElement, std::vector< ::Ifc4x3_tc1::IfcCovering > v6_RelatedCoverings) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, (v5_RelatingBuildingElement));set_attribute_value(5, cast_vector(v6_RelatedCoverings));; return *this; } +Ifc4x3_tc1::IfcRelCoversBldgElements Ifc4x3_tc1::IfcRelCoversBldgElements::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, ::Ifc4x3_tc1::IfcElement v5_RelatingBuildingElement, std::vector< ::Ifc4x3_tc1::IfcCovering > v6_RelatedCoverings) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, (v5_RelatingBuildingElement));set_attribute_value(5, cast_vector(v6_RelatedCoverings));; return *this; } // Function implementations for IfcRelCoversSpaces -::Ifc4x3_tc1::IfcSpace Ifc4x3_tc1::IfcRelCoversSpaces::RelatingSpace() const { return ((express::Base)(get_attribute_value(4))).as<::Ifc4x3_tc1::IfcSpace>(); } +::Ifc4x3_tc1::IfcSpace Ifc4x3_tc1::IfcRelCoversSpaces::RelatingSpace() const { return ((express::base)(get_attribute_value(4))).as<::Ifc4x3_tc1::IfcSpace>(); } void Ifc4x3_tc1::IfcRelCoversSpaces::setRelatingSpace(const ::Ifc4x3_tc1::IfcSpace& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } -std::vector< ::Ifc4x3_tc1::IfcCovering > Ifc4x3_tc1::IfcRelCoversSpaces::RelatedCoverings() const { std::vector es = get_attribute_value(5); return cast_vector<::Ifc4x3_tc1::IfcCovering>(es); } -void Ifc4x3_tc1::IfcRelCoversSpaces::setRelatedCoverings(const std::vector< ::Ifc4x3_tc1::IfcCovering >& v) { set_attribute_value(5, cast_vector(v));if constexpr (false)unset_attribute_value(5); } +std::vector< ::Ifc4x3_tc1::IfcCovering > Ifc4x3_tc1::IfcRelCoversSpaces::RelatedCoverings() const { std::vector es = get_attribute_value(5); return cast_vector<::Ifc4x3_tc1::IfcCovering>(es); } +void Ifc4x3_tc1::IfcRelCoversSpaces::setRelatedCoverings(const std::vector< ::Ifc4x3_tc1::IfcCovering >& v) { set_attribute_value(5, cast_vector(v));if constexpr (false)unset_attribute_value(5); } const ifcopenshell::entity& Ifc4x3_tc1::IfcRelCoversSpaces::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[926]); } -Ifc4x3_tc1::IfcRelCoversSpaces Ifc4x3_tc1::IfcRelCoversSpaces::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, ::Ifc4x3_tc1::IfcSpace v5_RelatingSpace, std::vector< ::Ifc4x3_tc1::IfcCovering > v6_RelatedCoverings) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, (v5_RelatingSpace));set_attribute_value(5, cast_vector(v6_RelatedCoverings));; return *this; } +Ifc4x3_tc1::IfcRelCoversSpaces Ifc4x3_tc1::IfcRelCoversSpaces::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, ::Ifc4x3_tc1::IfcSpace v5_RelatingSpace, std::vector< ::Ifc4x3_tc1::IfcCovering > v6_RelatedCoverings) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, (v5_RelatingSpace));set_attribute_value(5, cast_vector(v6_RelatedCoverings));; return *this; } // Function implementations for IfcRelDeclares -::Ifc4x3_tc1::IfcContext Ifc4x3_tc1::IfcRelDeclares::RelatingContext() const { return ((express::Base)(get_attribute_value(4))).as<::Ifc4x3_tc1::IfcContext>(); } +::Ifc4x3_tc1::IfcContext Ifc4x3_tc1::IfcRelDeclares::RelatingContext() const { return ((express::base)(get_attribute_value(4))).as<::Ifc4x3_tc1::IfcContext>(); } void Ifc4x3_tc1::IfcRelDeclares::setRelatingContext(const ::Ifc4x3_tc1::IfcContext& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } -std::vector< ::Ifc4x3_tc1::IfcDefinitionSelect > Ifc4x3_tc1::IfcRelDeclares::RelatedDefinitions() const { std::vector es = get_attribute_value(5); return cast_vector<::Ifc4x3_tc1::IfcDefinitionSelect>(es); } -void Ifc4x3_tc1::IfcRelDeclares::setRelatedDefinitions(const std::vector< ::Ifc4x3_tc1::IfcDefinitionSelect >& v) { set_attribute_value(5, cast_vector(v));if constexpr (false)unset_attribute_value(5); } +std::vector< ::Ifc4x3_tc1::IfcDefinitionSelect > Ifc4x3_tc1::IfcRelDeclares::RelatedDefinitions() const { std::vector es = get_attribute_value(5); return cast_vector<::Ifc4x3_tc1::IfcDefinitionSelect>(es); } +void Ifc4x3_tc1::IfcRelDeclares::setRelatedDefinitions(const std::vector< ::Ifc4x3_tc1::IfcDefinitionSelect >& v) { set_attribute_value(5, cast_vector(v));if constexpr (false)unset_attribute_value(5); } const ifcopenshell::entity& Ifc4x3_tc1::IfcRelDeclares::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[927]); } -Ifc4x3_tc1::IfcRelDeclares Ifc4x3_tc1::IfcRelDeclares::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, ::Ifc4x3_tc1::IfcContext v5_RelatingContext, std::vector< ::Ifc4x3_tc1::IfcDefinitionSelect > v6_RelatedDefinitions) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, (v5_RelatingContext));set_attribute_value(5, cast_vector(v6_RelatedDefinitions));; return *this; } +Ifc4x3_tc1::IfcRelDeclares Ifc4x3_tc1::IfcRelDeclares::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, ::Ifc4x3_tc1::IfcContext v5_RelatingContext, std::vector< ::Ifc4x3_tc1::IfcDefinitionSelect > v6_RelatedDefinitions) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, (v5_RelatingContext));set_attribute_value(5, cast_vector(v6_RelatedDefinitions));; return *this; } // Function implementations for IfcRelDecomposes @@ -13893,49 +13893,49 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcRelDefines::Class() { return *((ifcop Ifc4x3_tc1::IfcRelDefines Ifc4x3_tc1::IfcRelDefines::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }; return *this; } // Function implementations for IfcRelDefinesByObject -std::vector< ::Ifc4x3_tc1::IfcObject > Ifc4x3_tc1::IfcRelDefinesByObject::RelatedObjects() const { std::vector es = get_attribute_value(4); return cast_vector<::Ifc4x3_tc1::IfcObject>(es); } -void Ifc4x3_tc1::IfcRelDefinesByObject::setRelatedObjects(const std::vector< ::Ifc4x3_tc1::IfcObject >& v) { set_attribute_value(4, cast_vector(v));if constexpr (false)unset_attribute_value(4); } -::Ifc4x3_tc1::IfcObject Ifc4x3_tc1::IfcRelDefinesByObject::RelatingObject() const { return ((express::Base)(get_attribute_value(5))).as<::Ifc4x3_tc1::IfcObject>(); } +std::vector< ::Ifc4x3_tc1::IfcObject > Ifc4x3_tc1::IfcRelDefinesByObject::RelatedObjects() const { std::vector es = get_attribute_value(4); return cast_vector<::Ifc4x3_tc1::IfcObject>(es); } +void Ifc4x3_tc1::IfcRelDefinesByObject::setRelatedObjects(const std::vector< ::Ifc4x3_tc1::IfcObject >& v) { set_attribute_value(4, cast_vector(v));if constexpr (false)unset_attribute_value(4); } +::Ifc4x3_tc1::IfcObject Ifc4x3_tc1::IfcRelDefinesByObject::RelatingObject() const { return ((express::base)(get_attribute_value(5))).as<::Ifc4x3_tc1::IfcObject>(); } void Ifc4x3_tc1::IfcRelDefinesByObject::setRelatingObject(const ::Ifc4x3_tc1::IfcObject& v) { set_attribute_value(5, v);if constexpr (false)unset_attribute_value(5); } const ifcopenshell::entity& Ifc4x3_tc1::IfcRelDefinesByObject::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[930]); } -Ifc4x3_tc1::IfcRelDefinesByObject Ifc4x3_tc1::IfcRelDefinesByObject::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3_tc1::IfcObject > v5_RelatedObjects, ::Ifc4x3_tc1::IfcObject v6_RelatingObject) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedObjects));set_attribute_value(5, (v6_RelatingObject));; return *this; } +Ifc4x3_tc1::IfcRelDefinesByObject Ifc4x3_tc1::IfcRelDefinesByObject::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3_tc1::IfcObject > v5_RelatedObjects, ::Ifc4x3_tc1::IfcObject v6_RelatingObject) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedObjects));set_attribute_value(5, (v6_RelatingObject));; return *this; } // Function implementations for IfcRelDefinesByProperties -std::vector< ::Ifc4x3_tc1::IfcObjectDefinition > Ifc4x3_tc1::IfcRelDefinesByProperties::RelatedObjects() const { std::vector es = get_attribute_value(4); return cast_vector<::Ifc4x3_tc1::IfcObjectDefinition>(es); } -void Ifc4x3_tc1::IfcRelDefinesByProperties::setRelatedObjects(const std::vector< ::Ifc4x3_tc1::IfcObjectDefinition >& v) { set_attribute_value(4, cast_vector(v));if constexpr (false)unset_attribute_value(4); } -::Ifc4x3_tc1::IfcPropertySetDefinitionSelect Ifc4x3_tc1::IfcRelDefinesByProperties::RelatingPropertyDefinition() const { return ((express::Base)(get_attribute_value(5))).as<::Ifc4x3_tc1::IfcPropertySetDefinitionSelect>(); } +std::vector< ::Ifc4x3_tc1::IfcObjectDefinition > Ifc4x3_tc1::IfcRelDefinesByProperties::RelatedObjects() const { std::vector es = get_attribute_value(4); return cast_vector<::Ifc4x3_tc1::IfcObjectDefinition>(es); } +void Ifc4x3_tc1::IfcRelDefinesByProperties::setRelatedObjects(const std::vector< ::Ifc4x3_tc1::IfcObjectDefinition >& v) { set_attribute_value(4, cast_vector(v));if constexpr (false)unset_attribute_value(4); } +::Ifc4x3_tc1::IfcPropertySetDefinitionSelect Ifc4x3_tc1::IfcRelDefinesByProperties::RelatingPropertyDefinition() const { return ((express::base)(get_attribute_value(5))).as<::Ifc4x3_tc1::IfcPropertySetDefinitionSelect>(); } void Ifc4x3_tc1::IfcRelDefinesByProperties::setRelatingPropertyDefinition(const ::Ifc4x3_tc1::IfcPropertySetDefinitionSelect& v) { set_attribute_value(5, v);if constexpr (false)unset_attribute_value(5); } const ifcopenshell::entity& Ifc4x3_tc1::IfcRelDefinesByProperties::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[931]); } -Ifc4x3_tc1::IfcRelDefinesByProperties Ifc4x3_tc1::IfcRelDefinesByProperties::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3_tc1::IfcObjectDefinition > v5_RelatedObjects, ::Ifc4x3_tc1::IfcPropertySetDefinitionSelect v6_RelatingPropertyDefinition) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedObjects));set_attribute_value(5, (v6_RelatingPropertyDefinition));; return *this; } +Ifc4x3_tc1::IfcRelDefinesByProperties Ifc4x3_tc1::IfcRelDefinesByProperties::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3_tc1::IfcObjectDefinition > v5_RelatedObjects, ::Ifc4x3_tc1::IfcPropertySetDefinitionSelect v6_RelatingPropertyDefinition) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedObjects));set_attribute_value(5, (v6_RelatingPropertyDefinition));; return *this; } // Function implementations for IfcRelDefinesByTemplate -std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > Ifc4x3_tc1::IfcRelDefinesByTemplate::RelatedPropertySets() const { std::vector es = get_attribute_value(4); return cast_vector<::Ifc4x3_tc1::IfcPropertySetDefinition>(es); } -void Ifc4x3_tc1::IfcRelDefinesByTemplate::setRelatedPropertySets(const std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition >& v) { set_attribute_value(4, cast_vector(v));if constexpr (false)unset_attribute_value(4); } -::Ifc4x3_tc1::IfcPropertySetTemplate Ifc4x3_tc1::IfcRelDefinesByTemplate::RelatingTemplate() const { return ((express::Base)(get_attribute_value(5))).as<::Ifc4x3_tc1::IfcPropertySetTemplate>(); } +std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > Ifc4x3_tc1::IfcRelDefinesByTemplate::RelatedPropertySets() const { std::vector es = get_attribute_value(4); return cast_vector<::Ifc4x3_tc1::IfcPropertySetDefinition>(es); } +void Ifc4x3_tc1::IfcRelDefinesByTemplate::setRelatedPropertySets(const std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition >& v) { set_attribute_value(4, cast_vector(v));if constexpr (false)unset_attribute_value(4); } +::Ifc4x3_tc1::IfcPropertySetTemplate Ifc4x3_tc1::IfcRelDefinesByTemplate::RelatingTemplate() const { return ((express::base)(get_attribute_value(5))).as<::Ifc4x3_tc1::IfcPropertySetTemplate>(); } void Ifc4x3_tc1::IfcRelDefinesByTemplate::setRelatingTemplate(const ::Ifc4x3_tc1::IfcPropertySetTemplate& v) { set_attribute_value(5, v);if constexpr (false)unset_attribute_value(5); } const ifcopenshell::entity& Ifc4x3_tc1::IfcRelDefinesByTemplate::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[932]); } -Ifc4x3_tc1::IfcRelDefinesByTemplate Ifc4x3_tc1::IfcRelDefinesByTemplate::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > v5_RelatedPropertySets, ::Ifc4x3_tc1::IfcPropertySetTemplate v6_RelatingTemplate) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedPropertySets));set_attribute_value(5, (v6_RelatingTemplate));; return *this; } +Ifc4x3_tc1::IfcRelDefinesByTemplate Ifc4x3_tc1::IfcRelDefinesByTemplate::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > v5_RelatedPropertySets, ::Ifc4x3_tc1::IfcPropertySetTemplate v6_RelatingTemplate) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedPropertySets));set_attribute_value(5, (v6_RelatingTemplate));; return *this; } // Function implementations for IfcRelDefinesByType -std::vector< ::Ifc4x3_tc1::IfcObject > Ifc4x3_tc1::IfcRelDefinesByType::RelatedObjects() const { std::vector es = get_attribute_value(4); return cast_vector<::Ifc4x3_tc1::IfcObject>(es); } -void Ifc4x3_tc1::IfcRelDefinesByType::setRelatedObjects(const std::vector< ::Ifc4x3_tc1::IfcObject >& v) { set_attribute_value(4, cast_vector(v));if constexpr (false)unset_attribute_value(4); } -::Ifc4x3_tc1::IfcTypeObject Ifc4x3_tc1::IfcRelDefinesByType::RelatingType() const { return ((express::Base)(get_attribute_value(5))).as<::Ifc4x3_tc1::IfcTypeObject>(); } +std::vector< ::Ifc4x3_tc1::IfcObject > Ifc4x3_tc1::IfcRelDefinesByType::RelatedObjects() const { std::vector es = get_attribute_value(4); return cast_vector<::Ifc4x3_tc1::IfcObject>(es); } +void Ifc4x3_tc1::IfcRelDefinesByType::setRelatedObjects(const std::vector< ::Ifc4x3_tc1::IfcObject >& v) { set_attribute_value(4, cast_vector(v));if constexpr (false)unset_attribute_value(4); } +::Ifc4x3_tc1::IfcTypeObject Ifc4x3_tc1::IfcRelDefinesByType::RelatingType() const { return ((express::base)(get_attribute_value(5))).as<::Ifc4x3_tc1::IfcTypeObject>(); } void Ifc4x3_tc1::IfcRelDefinesByType::setRelatingType(const ::Ifc4x3_tc1::IfcTypeObject& v) { set_attribute_value(5, v);if constexpr (false)unset_attribute_value(5); } const ifcopenshell::entity& Ifc4x3_tc1::IfcRelDefinesByType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[933]); } -Ifc4x3_tc1::IfcRelDefinesByType Ifc4x3_tc1::IfcRelDefinesByType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3_tc1::IfcObject > v5_RelatedObjects, ::Ifc4x3_tc1::IfcTypeObject v6_RelatingType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedObjects));set_attribute_value(5, (v6_RelatingType));; return *this; } +Ifc4x3_tc1::IfcRelDefinesByType Ifc4x3_tc1::IfcRelDefinesByType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3_tc1::IfcObject > v5_RelatedObjects, ::Ifc4x3_tc1::IfcTypeObject v6_RelatingType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedObjects));set_attribute_value(5, (v6_RelatingType));; return *this; } // Function implementations for IfcRelFillsElement -::Ifc4x3_tc1::IfcOpeningElement Ifc4x3_tc1::IfcRelFillsElement::RelatingOpeningElement() const { return ((express::Base)(get_attribute_value(4))).as<::Ifc4x3_tc1::IfcOpeningElement>(); } +::Ifc4x3_tc1::IfcOpeningElement Ifc4x3_tc1::IfcRelFillsElement::RelatingOpeningElement() const { return ((express::base)(get_attribute_value(4))).as<::Ifc4x3_tc1::IfcOpeningElement>(); } void Ifc4x3_tc1::IfcRelFillsElement::setRelatingOpeningElement(const ::Ifc4x3_tc1::IfcOpeningElement& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } -::Ifc4x3_tc1::IfcElement Ifc4x3_tc1::IfcRelFillsElement::RelatedBuildingElement() const { return ((express::Base)(get_attribute_value(5))).as<::Ifc4x3_tc1::IfcElement>(); } +::Ifc4x3_tc1::IfcElement Ifc4x3_tc1::IfcRelFillsElement::RelatedBuildingElement() const { return ((express::base)(get_attribute_value(5))).as<::Ifc4x3_tc1::IfcElement>(); } void Ifc4x3_tc1::IfcRelFillsElement::setRelatedBuildingElement(const ::Ifc4x3_tc1::IfcElement& v) { set_attribute_value(5, v);if constexpr (false)unset_attribute_value(5); } @@ -13943,27 +13943,27 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcRelFillsElement::Class() { return *(( Ifc4x3_tc1::IfcRelFillsElement Ifc4x3_tc1::IfcRelFillsElement::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, ::Ifc4x3_tc1::IfcOpeningElement v5_RelatingOpeningElement, ::Ifc4x3_tc1::IfcElement v6_RelatedBuildingElement) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, (v5_RelatingOpeningElement));set_attribute_value(5, (v6_RelatedBuildingElement));; return *this; } // Function implementations for IfcRelFlowControlElements -std::vector< ::Ifc4x3_tc1::IfcDistributionControlElement > Ifc4x3_tc1::IfcRelFlowControlElements::RelatedControlElements() const { std::vector es = get_attribute_value(4); return cast_vector<::Ifc4x3_tc1::IfcDistributionControlElement>(es); } -void Ifc4x3_tc1::IfcRelFlowControlElements::setRelatedControlElements(const std::vector< ::Ifc4x3_tc1::IfcDistributionControlElement >& v) { set_attribute_value(4, cast_vector(v));if constexpr (false)unset_attribute_value(4); } -::Ifc4x3_tc1::IfcDistributionFlowElement Ifc4x3_tc1::IfcRelFlowControlElements::RelatingFlowElement() const { return ((express::Base)(get_attribute_value(5))).as<::Ifc4x3_tc1::IfcDistributionFlowElement>(); } +std::vector< ::Ifc4x3_tc1::IfcDistributionControlElement > Ifc4x3_tc1::IfcRelFlowControlElements::RelatedControlElements() const { std::vector es = get_attribute_value(4); return cast_vector<::Ifc4x3_tc1::IfcDistributionControlElement>(es); } +void Ifc4x3_tc1::IfcRelFlowControlElements::setRelatedControlElements(const std::vector< ::Ifc4x3_tc1::IfcDistributionControlElement >& v) { set_attribute_value(4, cast_vector(v));if constexpr (false)unset_attribute_value(4); } +::Ifc4x3_tc1::IfcDistributionFlowElement Ifc4x3_tc1::IfcRelFlowControlElements::RelatingFlowElement() const { return ((express::base)(get_attribute_value(5))).as<::Ifc4x3_tc1::IfcDistributionFlowElement>(); } void Ifc4x3_tc1::IfcRelFlowControlElements::setRelatingFlowElement(const ::Ifc4x3_tc1::IfcDistributionFlowElement& v) { set_attribute_value(5, v);if constexpr (false)unset_attribute_value(5); } const ifcopenshell::entity& Ifc4x3_tc1::IfcRelFlowControlElements::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[935]); } -Ifc4x3_tc1::IfcRelFlowControlElements Ifc4x3_tc1::IfcRelFlowControlElements::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3_tc1::IfcDistributionControlElement > v5_RelatedControlElements, ::Ifc4x3_tc1::IfcDistributionFlowElement v6_RelatingFlowElement) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedControlElements));set_attribute_value(5, (v6_RelatingFlowElement));; return *this; } +Ifc4x3_tc1::IfcRelFlowControlElements Ifc4x3_tc1::IfcRelFlowControlElements::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3_tc1::IfcDistributionControlElement > v5_RelatedControlElements, ::Ifc4x3_tc1::IfcDistributionFlowElement v6_RelatingFlowElement) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedControlElements));set_attribute_value(5, (v6_RelatingFlowElement));; return *this; } // Function implementations for IfcRelInterferesElements -::Ifc4x3_tc1::IfcInterferenceSelect Ifc4x3_tc1::IfcRelInterferesElements::RelatingElement() const { return ((express::Base)(get_attribute_value(4))).as<::Ifc4x3_tc1::IfcInterferenceSelect>(); } +::Ifc4x3_tc1::IfcInterferenceSelect Ifc4x3_tc1::IfcRelInterferesElements::RelatingElement() const { return ((express::base)(get_attribute_value(4))).as<::Ifc4x3_tc1::IfcInterferenceSelect>(); } void Ifc4x3_tc1::IfcRelInterferesElements::setRelatingElement(const ::Ifc4x3_tc1::IfcInterferenceSelect& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } -::Ifc4x3_tc1::IfcInterferenceSelect Ifc4x3_tc1::IfcRelInterferesElements::RelatedElement() const { return ((express::Base)(get_attribute_value(5))).as<::Ifc4x3_tc1::IfcInterferenceSelect>(); } +::Ifc4x3_tc1::IfcInterferenceSelect Ifc4x3_tc1::IfcRelInterferesElements::RelatedElement() const { return ((express::base)(get_attribute_value(5))).as<::Ifc4x3_tc1::IfcInterferenceSelect>(); } void Ifc4x3_tc1::IfcRelInterferesElements::setRelatedElement(const ::Ifc4x3_tc1::IfcInterferenceSelect& v) { set_attribute_value(5, v);if constexpr (false)unset_attribute_value(5); } -::Ifc4x3_tc1::IfcConnectionGeometry Ifc4x3_tc1::IfcRelInterferesElements::InterferenceGeometry() const { if(get_attribute_value(6).isNull()) { return ::Ifc4x3_tc1::IfcConnectionGeometry{}; } return ((express::Base)(get_attribute_value(6))).as<::Ifc4x3_tc1::IfcConnectionGeometry>(); } +::Ifc4x3_tc1::IfcConnectionGeometry Ifc4x3_tc1::IfcRelInterferesElements::InterferenceGeometry() const { if(get_attribute_value(6).isNull()) { return ::Ifc4x3_tc1::IfcConnectionGeometry{}; } return ((express::base)(get_attribute_value(6))).as<::Ifc4x3_tc1::IfcConnectionGeometry>(); } void Ifc4x3_tc1::IfcRelInterferesElements::setInterferenceGeometry(const ::Ifc4x3_tc1::IfcConnectionGeometry& v) { set_attribute_value(6, v);if constexpr (false)unset_attribute_value(6); } std::optional< std::string > Ifc4x3_tc1::IfcRelInterferesElements::InterferenceType() const { if(get_attribute_value(7).isNull()) { return std::nullopt; } std::string v = get_attribute_value(7); return v; } void Ifc4x3_tc1::IfcRelInterferesElements::setInterferenceType(const std::optional< std::string >& v) { if (v) {set_attribute_value(7, *v);} else {unset_attribute_value(7);} } boost::logic::tribool Ifc4x3_tc1::IfcRelInterferesElements::ImpliedOrder() const { boost::logic::tribool v = get_attribute_value(8); return v; } void Ifc4x3_tc1::IfcRelInterferesElements::setImpliedOrder(const boost::logic::tribool& v) { set_attribute_value(8, v);if constexpr (false)unset_attribute_value(8); } -::Ifc4x3_tc1::IfcSpatialZone Ifc4x3_tc1::IfcRelInterferesElements::InterferenceSpace() const { if(get_attribute_value(9).isNull()) { return ::Ifc4x3_tc1::IfcSpatialZone{}; } return ((express::Base)(get_attribute_value(9))).as<::Ifc4x3_tc1::IfcSpatialZone>(); } +::Ifc4x3_tc1::IfcSpatialZone Ifc4x3_tc1::IfcRelInterferesElements::InterferenceSpace() const { if(get_attribute_value(9).isNull()) { return ::Ifc4x3_tc1::IfcSpatialZone{}; } return ((express::base)(get_attribute_value(9))).as<::Ifc4x3_tc1::IfcSpatialZone>(); } void Ifc4x3_tc1::IfcRelInterferesElements::setInterferenceSpace(const ::Ifc4x3_tc1::IfcSpatialZone& v) { set_attribute_value(9, v);if constexpr (false)unset_attribute_value(9); } @@ -13971,29 +13971,29 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcRelInterferesElements::Class() { retu Ifc4x3_tc1::IfcRelInterferesElements Ifc4x3_tc1::IfcRelInterferesElements::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, ::Ifc4x3_tc1::IfcInterferenceSelect v5_RelatingElement, ::Ifc4x3_tc1::IfcInterferenceSelect v6_RelatedElement, ::Ifc4x3_tc1::IfcConnectionGeometry v7_InterferenceGeometry, std::optional< std::string > v8_InterferenceType, boost::logic::tribool v9_ImpliedOrder, ::Ifc4x3_tc1::IfcSpatialZone v10_InterferenceSpace) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, (v5_RelatingElement));set_attribute_value(5, (v6_RelatedElement));set_attribute_value(6, (v7_InterferenceGeometry)); if (v8_InterferenceType) {set_attribute_value(7, (*v8_InterferenceType)); }set_attribute_value(8, (v9_ImpliedOrder));set_attribute_value(9, (v10_InterferenceSpace));; return *this; } // Function implementations for IfcRelNests -::Ifc4x3_tc1::IfcObjectDefinition Ifc4x3_tc1::IfcRelNests::RelatingObject() const { return ((express::Base)(get_attribute_value(4))).as<::Ifc4x3_tc1::IfcObjectDefinition>(); } +::Ifc4x3_tc1::IfcObjectDefinition Ifc4x3_tc1::IfcRelNests::RelatingObject() const { return ((express::base)(get_attribute_value(4))).as<::Ifc4x3_tc1::IfcObjectDefinition>(); } void Ifc4x3_tc1::IfcRelNests::setRelatingObject(const ::Ifc4x3_tc1::IfcObjectDefinition& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } -std::vector< ::Ifc4x3_tc1::IfcObjectDefinition > Ifc4x3_tc1::IfcRelNests::RelatedObjects() const { std::vector es = get_attribute_value(5); return cast_vector<::Ifc4x3_tc1::IfcObjectDefinition>(es); } -void Ifc4x3_tc1::IfcRelNests::setRelatedObjects(const std::vector< ::Ifc4x3_tc1::IfcObjectDefinition >& v) { set_attribute_value(5, cast_vector(v));if constexpr (false)unset_attribute_value(5); } +std::vector< ::Ifc4x3_tc1::IfcObjectDefinition > Ifc4x3_tc1::IfcRelNests::RelatedObjects() const { std::vector es = get_attribute_value(5); return cast_vector<::Ifc4x3_tc1::IfcObjectDefinition>(es); } +void Ifc4x3_tc1::IfcRelNests::setRelatedObjects(const std::vector< ::Ifc4x3_tc1::IfcObjectDefinition >& v) { set_attribute_value(5, cast_vector(v));if constexpr (false)unset_attribute_value(5); } const ifcopenshell::entity& Ifc4x3_tc1::IfcRelNests::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[937]); } -Ifc4x3_tc1::IfcRelNests Ifc4x3_tc1::IfcRelNests::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, ::Ifc4x3_tc1::IfcObjectDefinition v5_RelatingObject, std::vector< ::Ifc4x3_tc1::IfcObjectDefinition > v6_RelatedObjects) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, (v5_RelatingObject));set_attribute_value(5, cast_vector(v6_RelatedObjects));; return *this; } +Ifc4x3_tc1::IfcRelNests Ifc4x3_tc1::IfcRelNests::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, ::Ifc4x3_tc1::IfcObjectDefinition v5_RelatingObject, std::vector< ::Ifc4x3_tc1::IfcObjectDefinition > v6_RelatedObjects) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, (v5_RelatingObject));set_attribute_value(5, cast_vector(v6_RelatedObjects));; return *this; } // Function implementations for IfcRelPositions -::Ifc4x3_tc1::IfcPositioningElement Ifc4x3_tc1::IfcRelPositions::RelatingPositioningElement() const { return ((express::Base)(get_attribute_value(4))).as<::Ifc4x3_tc1::IfcPositioningElement>(); } +::Ifc4x3_tc1::IfcPositioningElement Ifc4x3_tc1::IfcRelPositions::RelatingPositioningElement() const { return ((express::base)(get_attribute_value(4))).as<::Ifc4x3_tc1::IfcPositioningElement>(); } void Ifc4x3_tc1::IfcRelPositions::setRelatingPositioningElement(const ::Ifc4x3_tc1::IfcPositioningElement& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } -std::vector< ::Ifc4x3_tc1::IfcProduct > Ifc4x3_tc1::IfcRelPositions::RelatedProducts() const { std::vector es = get_attribute_value(5); return cast_vector<::Ifc4x3_tc1::IfcProduct>(es); } -void Ifc4x3_tc1::IfcRelPositions::setRelatedProducts(const std::vector< ::Ifc4x3_tc1::IfcProduct >& v) { set_attribute_value(5, cast_vector(v));if constexpr (false)unset_attribute_value(5); } +std::vector< ::Ifc4x3_tc1::IfcProduct > Ifc4x3_tc1::IfcRelPositions::RelatedProducts() const { std::vector es = get_attribute_value(5); return cast_vector<::Ifc4x3_tc1::IfcProduct>(es); } +void Ifc4x3_tc1::IfcRelPositions::setRelatedProducts(const std::vector< ::Ifc4x3_tc1::IfcProduct >& v) { set_attribute_value(5, cast_vector(v));if constexpr (false)unset_attribute_value(5); } const ifcopenshell::entity& Ifc4x3_tc1::IfcRelPositions::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[938]); } -Ifc4x3_tc1::IfcRelPositions Ifc4x3_tc1::IfcRelPositions::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, ::Ifc4x3_tc1::IfcPositioningElement v5_RelatingPositioningElement, std::vector< ::Ifc4x3_tc1::IfcProduct > v6_RelatedProducts) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, (v5_RelatingPositioningElement));set_attribute_value(5, cast_vector(v6_RelatedProducts));; return *this; } +Ifc4x3_tc1::IfcRelPositions Ifc4x3_tc1::IfcRelPositions::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, ::Ifc4x3_tc1::IfcPositioningElement v5_RelatingPositioningElement, std::vector< ::Ifc4x3_tc1::IfcProduct > v6_RelatedProducts) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, (v5_RelatingPositioningElement));set_attribute_value(5, cast_vector(v6_RelatedProducts));; return *this; } // Function implementations for IfcRelProjectsElement -::Ifc4x3_tc1::IfcElement Ifc4x3_tc1::IfcRelProjectsElement::RelatingElement() const { return ((express::Base)(get_attribute_value(4))).as<::Ifc4x3_tc1::IfcElement>(); } +::Ifc4x3_tc1::IfcElement Ifc4x3_tc1::IfcRelProjectsElement::RelatingElement() const { return ((express::base)(get_attribute_value(4))).as<::Ifc4x3_tc1::IfcElement>(); } void Ifc4x3_tc1::IfcRelProjectsElement::setRelatingElement(const ::Ifc4x3_tc1::IfcElement& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } -::Ifc4x3_tc1::IfcFeatureElementAddition Ifc4x3_tc1::IfcRelProjectsElement::RelatedFeatureElement() const { return ((express::Base)(get_attribute_value(5))).as<::Ifc4x3_tc1::IfcFeatureElementAddition>(); } +::Ifc4x3_tc1::IfcFeatureElementAddition Ifc4x3_tc1::IfcRelProjectsElement::RelatedFeatureElement() const { return ((express::base)(get_attribute_value(5))).as<::Ifc4x3_tc1::IfcFeatureElementAddition>(); } void Ifc4x3_tc1::IfcRelProjectsElement::setRelatedFeatureElement(const ::Ifc4x3_tc1::IfcFeatureElementAddition& v) { set_attribute_value(5, v);if constexpr (false)unset_attribute_value(5); } @@ -14001,21 +14001,21 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcRelProjectsElement::Class() { return Ifc4x3_tc1::IfcRelProjectsElement Ifc4x3_tc1::IfcRelProjectsElement::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, ::Ifc4x3_tc1::IfcElement v5_RelatingElement, ::Ifc4x3_tc1::IfcFeatureElementAddition v6_RelatedFeatureElement) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, (v5_RelatingElement));set_attribute_value(5, (v6_RelatedFeatureElement));; return *this; } // Function implementations for IfcRelReferencedInSpatialStructure -std::vector< ::Ifc4x3_tc1::IfcSpatialReferenceSelect > Ifc4x3_tc1::IfcRelReferencedInSpatialStructure::RelatedElements() const { std::vector es = get_attribute_value(4); return cast_vector<::Ifc4x3_tc1::IfcSpatialReferenceSelect>(es); } -void Ifc4x3_tc1::IfcRelReferencedInSpatialStructure::setRelatedElements(const std::vector< ::Ifc4x3_tc1::IfcSpatialReferenceSelect >& v) { set_attribute_value(4, cast_vector(v));if constexpr (false)unset_attribute_value(4); } -::Ifc4x3_tc1::IfcSpatialElement Ifc4x3_tc1::IfcRelReferencedInSpatialStructure::RelatingStructure() const { return ((express::Base)(get_attribute_value(5))).as<::Ifc4x3_tc1::IfcSpatialElement>(); } +std::vector< ::Ifc4x3_tc1::IfcSpatialReferenceSelect > Ifc4x3_tc1::IfcRelReferencedInSpatialStructure::RelatedElements() const { std::vector es = get_attribute_value(4); return cast_vector<::Ifc4x3_tc1::IfcSpatialReferenceSelect>(es); } +void Ifc4x3_tc1::IfcRelReferencedInSpatialStructure::setRelatedElements(const std::vector< ::Ifc4x3_tc1::IfcSpatialReferenceSelect >& v) { set_attribute_value(4, cast_vector(v));if constexpr (false)unset_attribute_value(4); } +::Ifc4x3_tc1::IfcSpatialElement Ifc4x3_tc1::IfcRelReferencedInSpatialStructure::RelatingStructure() const { return ((express::base)(get_attribute_value(5))).as<::Ifc4x3_tc1::IfcSpatialElement>(); } void Ifc4x3_tc1::IfcRelReferencedInSpatialStructure::setRelatingStructure(const ::Ifc4x3_tc1::IfcSpatialElement& v) { set_attribute_value(5, v);if constexpr (false)unset_attribute_value(5); } const ifcopenshell::entity& Ifc4x3_tc1::IfcRelReferencedInSpatialStructure::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[940]); } -Ifc4x3_tc1::IfcRelReferencedInSpatialStructure Ifc4x3_tc1::IfcRelReferencedInSpatialStructure::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3_tc1::IfcSpatialReferenceSelect > v5_RelatedElements, ::Ifc4x3_tc1::IfcSpatialElement v6_RelatingStructure) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedElements));set_attribute_value(5, (v6_RelatingStructure));; return *this; } +Ifc4x3_tc1::IfcRelReferencedInSpatialStructure Ifc4x3_tc1::IfcRelReferencedInSpatialStructure::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::vector< ::Ifc4x3_tc1::IfcSpatialReferenceSelect > v5_RelatedElements, ::Ifc4x3_tc1::IfcSpatialElement v6_RelatingStructure) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, cast_vector(v5_RelatedElements));set_attribute_value(5, (v6_RelatingStructure));; return *this; } // Function implementations for IfcRelSequence -::Ifc4x3_tc1::IfcProcess Ifc4x3_tc1::IfcRelSequence::RelatingProcess() const { return ((express::Base)(get_attribute_value(4))).as<::Ifc4x3_tc1::IfcProcess>(); } +::Ifc4x3_tc1::IfcProcess Ifc4x3_tc1::IfcRelSequence::RelatingProcess() const { return ((express::base)(get_attribute_value(4))).as<::Ifc4x3_tc1::IfcProcess>(); } void Ifc4x3_tc1::IfcRelSequence::setRelatingProcess(const ::Ifc4x3_tc1::IfcProcess& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } -::Ifc4x3_tc1::IfcProcess Ifc4x3_tc1::IfcRelSequence::RelatedProcess() const { return ((express::Base)(get_attribute_value(5))).as<::Ifc4x3_tc1::IfcProcess>(); } +::Ifc4x3_tc1::IfcProcess Ifc4x3_tc1::IfcRelSequence::RelatedProcess() const { return ((express::base)(get_attribute_value(5))).as<::Ifc4x3_tc1::IfcProcess>(); } void Ifc4x3_tc1::IfcRelSequence::setRelatedProcess(const ::Ifc4x3_tc1::IfcProcess& v) { set_attribute_value(5, v);if constexpr (false)unset_attribute_value(5); } -::Ifc4x3_tc1::IfcLagTime Ifc4x3_tc1::IfcRelSequence::TimeLag() const { if(get_attribute_value(6).isNull()) { return ::Ifc4x3_tc1::IfcLagTime{}; } return ((express::Base)(get_attribute_value(6))).as<::Ifc4x3_tc1::IfcLagTime>(); } +::Ifc4x3_tc1::IfcLagTime Ifc4x3_tc1::IfcRelSequence::TimeLag() const { if(get_attribute_value(6).isNull()) { return ::Ifc4x3_tc1::IfcLagTime{}; } return ((express::base)(get_attribute_value(6))).as<::Ifc4x3_tc1::IfcLagTime>(); } void Ifc4x3_tc1::IfcRelSequence::setTimeLag(const ::Ifc4x3_tc1::IfcLagTime& v) { set_attribute_value(6, v);if constexpr (false)unset_attribute_value(6); } std::optional< ::Ifc4x3_tc1::IfcSequenceEnum::Value > Ifc4x3_tc1::IfcRelSequence::SequenceType() const { if(get_attribute_value(7).isNull()) { return std::nullopt; } return ::Ifc4x3_tc1::IfcSequenceEnum::FromString(get_attribute_value(7)); } void Ifc4x3_tc1::IfcRelSequence::setSequenceType(const std::optional< ::Ifc4x3_tc1::IfcSequenceEnum::Value >& v) { if (v) {set_attribute_value(7, enumeration_reference(&::Ifc4x3_tc1::IfcSequenceEnum::Class(), (size_t) *v));} else {unset_attribute_value(7);} } @@ -14027,21 +14027,21 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcRelSequence::Class() { return *((ifco Ifc4x3_tc1::IfcRelSequence Ifc4x3_tc1::IfcRelSequence::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, ::Ifc4x3_tc1::IfcProcess v5_RelatingProcess, ::Ifc4x3_tc1::IfcProcess v6_RelatedProcess, ::Ifc4x3_tc1::IfcLagTime v7_TimeLag, std::optional< ::Ifc4x3_tc1::IfcSequenceEnum::Value > v8_SequenceType, std::optional< std::string > v9_UserDefinedSequenceType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, (v5_RelatingProcess));set_attribute_value(5, (v6_RelatedProcess));set_attribute_value(6, (v7_TimeLag)); if (v8_SequenceType) {set_attribute_value(7, (enumeration_reference(&::Ifc4x3_tc1::IfcSequenceEnum::Class(),(size_t)*v8_SequenceType))); } if (v9_UserDefinedSequenceType) {set_attribute_value(8, (*v9_UserDefinedSequenceType)); }; return *this; } // Function implementations for IfcRelServicesBuildings -::Ifc4x3_tc1::IfcSystem Ifc4x3_tc1::IfcRelServicesBuildings::RelatingSystem() const { return ((express::Base)(get_attribute_value(4))).as<::Ifc4x3_tc1::IfcSystem>(); } +::Ifc4x3_tc1::IfcSystem Ifc4x3_tc1::IfcRelServicesBuildings::RelatingSystem() const { return ((express::base)(get_attribute_value(4))).as<::Ifc4x3_tc1::IfcSystem>(); } void Ifc4x3_tc1::IfcRelServicesBuildings::setRelatingSystem(const ::Ifc4x3_tc1::IfcSystem& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } -std::vector< ::Ifc4x3_tc1::IfcSpatialElement > Ifc4x3_tc1::IfcRelServicesBuildings::RelatedBuildings() const { std::vector es = get_attribute_value(5); return cast_vector<::Ifc4x3_tc1::IfcSpatialElement>(es); } -void Ifc4x3_tc1::IfcRelServicesBuildings::setRelatedBuildings(const std::vector< ::Ifc4x3_tc1::IfcSpatialElement >& v) { set_attribute_value(5, cast_vector(v));if constexpr (false)unset_attribute_value(5); } +std::vector< ::Ifc4x3_tc1::IfcSpatialElement > Ifc4x3_tc1::IfcRelServicesBuildings::RelatedBuildings() const { std::vector es = get_attribute_value(5); return cast_vector<::Ifc4x3_tc1::IfcSpatialElement>(es); } +void Ifc4x3_tc1::IfcRelServicesBuildings::setRelatedBuildings(const std::vector< ::Ifc4x3_tc1::IfcSpatialElement >& v) { set_attribute_value(5, cast_vector(v));if constexpr (false)unset_attribute_value(5); } const ifcopenshell::entity& Ifc4x3_tc1::IfcRelServicesBuildings::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[942]); } -Ifc4x3_tc1::IfcRelServicesBuildings Ifc4x3_tc1::IfcRelServicesBuildings::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, ::Ifc4x3_tc1::IfcSystem v5_RelatingSystem, std::vector< ::Ifc4x3_tc1::IfcSpatialElement > v6_RelatedBuildings) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, (v5_RelatingSystem));set_attribute_value(5, cast_vector(v6_RelatedBuildings));; return *this; } +Ifc4x3_tc1::IfcRelServicesBuildings Ifc4x3_tc1::IfcRelServicesBuildings::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, ::Ifc4x3_tc1::IfcSystem v5_RelatingSystem, std::vector< ::Ifc4x3_tc1::IfcSpatialElement > v6_RelatedBuildings) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, (v5_RelatingSystem));set_attribute_value(5, cast_vector(v6_RelatedBuildings));; return *this; } // Function implementations for IfcRelSpaceBoundary -::Ifc4x3_tc1::IfcSpaceBoundarySelect Ifc4x3_tc1::IfcRelSpaceBoundary::RelatingSpace() const { return ((express::Base)(get_attribute_value(4))).as<::Ifc4x3_tc1::IfcSpaceBoundarySelect>(); } +::Ifc4x3_tc1::IfcSpaceBoundarySelect Ifc4x3_tc1::IfcRelSpaceBoundary::RelatingSpace() const { return ((express::base)(get_attribute_value(4))).as<::Ifc4x3_tc1::IfcSpaceBoundarySelect>(); } void Ifc4x3_tc1::IfcRelSpaceBoundary::setRelatingSpace(const ::Ifc4x3_tc1::IfcSpaceBoundarySelect& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } -::Ifc4x3_tc1::IfcElement Ifc4x3_tc1::IfcRelSpaceBoundary::RelatedBuildingElement() const { return ((express::Base)(get_attribute_value(5))).as<::Ifc4x3_tc1::IfcElement>(); } +::Ifc4x3_tc1::IfcElement Ifc4x3_tc1::IfcRelSpaceBoundary::RelatedBuildingElement() const { return ((express::base)(get_attribute_value(5))).as<::Ifc4x3_tc1::IfcElement>(); } void Ifc4x3_tc1::IfcRelSpaceBoundary::setRelatedBuildingElement(const ::Ifc4x3_tc1::IfcElement& v) { set_attribute_value(5, v);if constexpr (false)unset_attribute_value(5); } -::Ifc4x3_tc1::IfcConnectionGeometry Ifc4x3_tc1::IfcRelSpaceBoundary::ConnectionGeometry() const { if(get_attribute_value(6).isNull()) { return ::Ifc4x3_tc1::IfcConnectionGeometry{}; } return ((express::Base)(get_attribute_value(6))).as<::Ifc4x3_tc1::IfcConnectionGeometry>(); } +::Ifc4x3_tc1::IfcConnectionGeometry Ifc4x3_tc1::IfcRelSpaceBoundary::ConnectionGeometry() const { if(get_attribute_value(6).isNull()) { return ::Ifc4x3_tc1::IfcConnectionGeometry{}; } return ((express::base)(get_attribute_value(6))).as<::Ifc4x3_tc1::IfcConnectionGeometry>(); } void Ifc4x3_tc1::IfcRelSpaceBoundary::setConnectionGeometry(const ::Ifc4x3_tc1::IfcConnectionGeometry& v) { set_attribute_value(6, v);if constexpr (false)unset_attribute_value(6); } ::Ifc4x3_tc1::IfcPhysicalOrVirtualEnum::Value Ifc4x3_tc1::IfcRelSpaceBoundary::PhysicalOrVirtualBoundary() const { return ::Ifc4x3_tc1::IfcPhysicalOrVirtualEnum::FromString(get_attribute_value(7)); } void Ifc4x3_tc1::IfcRelSpaceBoundary::setPhysicalOrVirtualBoundary(const ::Ifc4x3_tc1::IfcPhysicalOrVirtualEnum::Value& v) { set_attribute_value(7, enumeration_reference(&::Ifc4x3_tc1::IfcPhysicalOrVirtualEnum::Class(), (size_t) v));if constexpr (false)unset_attribute_value(7); } @@ -14053,7 +14053,7 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcRelSpaceBoundary::Class() { return *( Ifc4x3_tc1::IfcRelSpaceBoundary Ifc4x3_tc1::IfcRelSpaceBoundary::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, ::Ifc4x3_tc1::IfcSpaceBoundarySelect v5_RelatingSpace, ::Ifc4x3_tc1::IfcElement v6_RelatedBuildingElement, ::Ifc4x3_tc1::IfcConnectionGeometry v7_ConnectionGeometry, ::Ifc4x3_tc1::IfcPhysicalOrVirtualEnum::Value v8_PhysicalOrVirtualBoundary, ::Ifc4x3_tc1::IfcInternalOrExternalEnum::Value v9_InternalOrExternalBoundary) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, (v5_RelatingSpace));set_attribute_value(5, (v6_RelatedBuildingElement));set_attribute_value(6, (v7_ConnectionGeometry));set_attribute_value(7, (enumeration_reference(&::Ifc4x3_tc1::IfcPhysicalOrVirtualEnum::Class(),(size_t)v8_PhysicalOrVirtualBoundary)));set_attribute_value(8, (enumeration_reference(&::Ifc4x3_tc1::IfcInternalOrExternalEnum::Class(),(size_t)v9_InternalOrExternalBoundary)));; return *this; } // Function implementations for IfcRelSpaceBoundary1stLevel -::Ifc4x3_tc1::IfcRelSpaceBoundary1stLevel Ifc4x3_tc1::IfcRelSpaceBoundary1stLevel::ParentBoundary() const { if(get_attribute_value(9).isNull()) { return ::Ifc4x3_tc1::IfcRelSpaceBoundary1stLevel{}; } return ((express::Base)(get_attribute_value(9))).as<::Ifc4x3_tc1::IfcRelSpaceBoundary1stLevel>(); } +::Ifc4x3_tc1::IfcRelSpaceBoundary1stLevel Ifc4x3_tc1::IfcRelSpaceBoundary1stLevel::ParentBoundary() const { if(get_attribute_value(9).isNull()) { return ::Ifc4x3_tc1::IfcRelSpaceBoundary1stLevel{}; } return ((express::base)(get_attribute_value(9))).as<::Ifc4x3_tc1::IfcRelSpaceBoundary1stLevel>(); } void Ifc4x3_tc1::IfcRelSpaceBoundary1stLevel::setParentBoundary(const ::Ifc4x3_tc1::IfcRelSpaceBoundary1stLevel& v) { set_attribute_value(9, v);if constexpr (false)unset_attribute_value(9); } std::vector<::Ifc4x3_tc1::IfcRelSpaceBoundary1stLevel> Ifc4x3_tc1::IfcRelSpaceBoundary1stLevel::InnerBoundaries() const { return cast_vector(file()->get_inverse(data()->id(), IFC4X3_TC1_types[944], 9)); } @@ -14062,7 +14062,7 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcRelSpaceBoundary1stLevel::Class() { r Ifc4x3_tc1::IfcRelSpaceBoundary1stLevel Ifc4x3_tc1::IfcRelSpaceBoundary1stLevel::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, ::Ifc4x3_tc1::IfcSpaceBoundarySelect v5_RelatingSpace, ::Ifc4x3_tc1::IfcElement v6_RelatedBuildingElement, ::Ifc4x3_tc1::IfcConnectionGeometry v7_ConnectionGeometry, ::Ifc4x3_tc1::IfcPhysicalOrVirtualEnum::Value v8_PhysicalOrVirtualBoundary, ::Ifc4x3_tc1::IfcInternalOrExternalEnum::Value v9_InternalOrExternalBoundary, ::Ifc4x3_tc1::IfcRelSpaceBoundary1stLevel v10_ParentBoundary) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, (v5_RelatingSpace));set_attribute_value(5, (v6_RelatedBuildingElement));set_attribute_value(6, (v7_ConnectionGeometry));set_attribute_value(7, (enumeration_reference(&::Ifc4x3_tc1::IfcPhysicalOrVirtualEnum::Class(),(size_t)v8_PhysicalOrVirtualBoundary)));set_attribute_value(8, (enumeration_reference(&::Ifc4x3_tc1::IfcInternalOrExternalEnum::Class(),(size_t)v9_InternalOrExternalBoundary)));set_attribute_value(9, (v10_ParentBoundary));; return *this; } // Function implementations for IfcRelSpaceBoundary2ndLevel -::Ifc4x3_tc1::IfcRelSpaceBoundary2ndLevel Ifc4x3_tc1::IfcRelSpaceBoundary2ndLevel::CorrespondingBoundary() const { if(get_attribute_value(10).isNull()) { return ::Ifc4x3_tc1::IfcRelSpaceBoundary2ndLevel{}; } return ((express::Base)(get_attribute_value(10))).as<::Ifc4x3_tc1::IfcRelSpaceBoundary2ndLevel>(); } +::Ifc4x3_tc1::IfcRelSpaceBoundary2ndLevel Ifc4x3_tc1::IfcRelSpaceBoundary2ndLevel::CorrespondingBoundary() const { if(get_attribute_value(10).isNull()) { return ::Ifc4x3_tc1::IfcRelSpaceBoundary2ndLevel{}; } return ((express::base)(get_attribute_value(10))).as<::Ifc4x3_tc1::IfcRelSpaceBoundary2ndLevel>(); } void Ifc4x3_tc1::IfcRelSpaceBoundary2ndLevel::setCorrespondingBoundary(const ::Ifc4x3_tc1::IfcRelSpaceBoundary2ndLevel& v) { set_attribute_value(10, v);if constexpr (false)unset_attribute_value(10); } std::vector<::Ifc4x3_tc1::IfcRelSpaceBoundary2ndLevel> Ifc4x3_tc1::IfcRelSpaceBoundary2ndLevel::Corresponds() const { return cast_vector(file()->get_inverse(data()->id(), IFC4X3_TC1_types[945], 10)); } @@ -14071,9 +14071,9 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcRelSpaceBoundary2ndLevel::Class() { r Ifc4x3_tc1::IfcRelSpaceBoundary2ndLevel Ifc4x3_tc1::IfcRelSpaceBoundary2ndLevel::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, ::Ifc4x3_tc1::IfcSpaceBoundarySelect v5_RelatingSpace, ::Ifc4x3_tc1::IfcElement v6_RelatedBuildingElement, ::Ifc4x3_tc1::IfcConnectionGeometry v7_ConnectionGeometry, ::Ifc4x3_tc1::IfcPhysicalOrVirtualEnum::Value v8_PhysicalOrVirtualBoundary, ::Ifc4x3_tc1::IfcInternalOrExternalEnum::Value v9_InternalOrExternalBoundary, ::Ifc4x3_tc1::IfcRelSpaceBoundary1stLevel v10_ParentBoundary, ::Ifc4x3_tc1::IfcRelSpaceBoundary2ndLevel v11_CorrespondingBoundary) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); }set_attribute_value(4, (v5_RelatingSpace));set_attribute_value(5, (v6_RelatedBuildingElement));set_attribute_value(6, (v7_ConnectionGeometry));set_attribute_value(7, (enumeration_reference(&::Ifc4x3_tc1::IfcPhysicalOrVirtualEnum::Class(),(size_t)v8_PhysicalOrVirtualBoundary)));set_attribute_value(8, (enumeration_reference(&::Ifc4x3_tc1::IfcInternalOrExternalEnum::Class(),(size_t)v9_InternalOrExternalBoundary)));set_attribute_value(9, (v10_ParentBoundary));set_attribute_value(10, (v11_CorrespondingBoundary));; return *this; } // Function implementations for IfcRelVoidsElement -::Ifc4x3_tc1::IfcElement Ifc4x3_tc1::IfcRelVoidsElement::RelatingBuildingElement() const { return ((express::Base)(get_attribute_value(4))).as<::Ifc4x3_tc1::IfcElement>(); } +::Ifc4x3_tc1::IfcElement Ifc4x3_tc1::IfcRelVoidsElement::RelatingBuildingElement() const { return ((express::base)(get_attribute_value(4))).as<::Ifc4x3_tc1::IfcElement>(); } void Ifc4x3_tc1::IfcRelVoidsElement::setRelatingBuildingElement(const ::Ifc4x3_tc1::IfcElement& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } -::Ifc4x3_tc1::IfcFeatureElementSubtraction Ifc4x3_tc1::IfcRelVoidsElement::RelatedOpeningElement() const { return ((express::Base)(get_attribute_value(5))).as<::Ifc4x3_tc1::IfcFeatureElementSubtraction>(); } +::Ifc4x3_tc1::IfcFeatureElementSubtraction Ifc4x3_tc1::IfcRelVoidsElement::RelatedOpeningElement() const { return ((express::base)(get_attribute_value(5))).as<::Ifc4x3_tc1::IfcFeatureElementSubtraction>(); } void Ifc4x3_tc1::IfcRelVoidsElement::setRelatedOpeningElement(const ::Ifc4x3_tc1::IfcFeatureElementSubtraction& v) { set_attribute_value(5, v);if constexpr (false)unset_attribute_value(5); } @@ -14095,21 +14095,21 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcReparametrisedCompositeCurveSegment:: Ifc4x3_tc1::IfcReparametrisedCompositeCurveSegment Ifc4x3_tc1::IfcReparametrisedCompositeCurveSegment::initialize(::Ifc4x3_tc1::IfcTransitionCode::Value v1_Transition, bool v2_SameSense, ::Ifc4x3_tc1::IfcCurve v3_ParentCurve, double v4_ParamLength) { set_attribute_value(0, (enumeration_reference(&::Ifc4x3_tc1::IfcTransitionCode::Class(),(size_t)v1_Transition)));set_attribute_value(1, (v2_SameSense));set_attribute_value(2, (v3_ParentCurve));set_attribute_value(3, (v4_ParamLength));; return *this; } // Function implementations for IfcRepresentation -::Ifc4x3_tc1::IfcRepresentationContext Ifc4x3_tc1::IfcRepresentation::ContextOfItems() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcRepresentationContext>(); } +::Ifc4x3_tc1::IfcRepresentationContext Ifc4x3_tc1::IfcRepresentation::ContextOfItems() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcRepresentationContext>(); } void Ifc4x3_tc1::IfcRepresentation::setContextOfItems(const ::Ifc4x3_tc1::IfcRepresentationContext& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } std::optional< std::string > Ifc4x3_tc1::IfcRepresentation::RepresentationIdentifier() const { if(get_attribute_value(1).isNull()) { return std::nullopt; } std::string v = get_attribute_value(1); return v; } void Ifc4x3_tc1::IfcRepresentation::setRepresentationIdentifier(const std::optional< std::string >& v) { if (v) {set_attribute_value(1, *v);} else {unset_attribute_value(1);} } std::optional< std::string > Ifc4x3_tc1::IfcRepresentation::RepresentationType() const { if(get_attribute_value(2).isNull()) { return std::nullopt; } std::string v = get_attribute_value(2); return v; } void Ifc4x3_tc1::IfcRepresentation::setRepresentationType(const std::optional< std::string >& v) { if (v) {set_attribute_value(2, *v);} else {unset_attribute_value(2);} } -std::vector< ::Ifc4x3_tc1::IfcRepresentationItem > Ifc4x3_tc1::IfcRepresentation::Items() const { std::vector es = get_attribute_value(3); return cast_vector<::Ifc4x3_tc1::IfcRepresentationItem>(es); } -void Ifc4x3_tc1::IfcRepresentation::setItems(const std::vector< ::Ifc4x3_tc1::IfcRepresentationItem >& v) { set_attribute_value(3, cast_vector(v));if constexpr (false)unset_attribute_value(3); } +std::vector< ::Ifc4x3_tc1::IfcRepresentationItem > Ifc4x3_tc1::IfcRepresentation::Items() const { std::vector es = get_attribute_value(3); return cast_vector<::Ifc4x3_tc1::IfcRepresentationItem>(es); } +void Ifc4x3_tc1::IfcRepresentation::setItems(const std::vector< ::Ifc4x3_tc1::IfcRepresentationItem >& v) { set_attribute_value(3, cast_vector(v));if constexpr (false)unset_attribute_value(3); } std::vector<::Ifc4x3_tc1::IfcRepresentationMap> Ifc4x3_tc1::IfcRepresentation::RepresentationMap() const { return cast_vector(file()->get_inverse(data()->id(), IFC4X3_TC1_types[951], 1)); } std::vector<::Ifc4x3_tc1::IfcPresentationLayerAssignment> Ifc4x3_tc1::IfcRepresentation::LayerAssignments() const { return cast_vector(file()->get_inverse(data()->id(), IFC4X3_TC1_types[789], 2)); } std::vector<::Ifc4x3_tc1::IfcProductRepresentation> Ifc4x3_tc1::IfcRepresentation::OfProductRepresentation() const { return cast_vector(file()->get_inverse(data()->id(), IFC4X3_TC1_types[800], 2)); } const ifcopenshell::entity& Ifc4x3_tc1::IfcRepresentation::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[948]); } -Ifc4x3_tc1::IfcRepresentation Ifc4x3_tc1::IfcRepresentation::initialize(::Ifc4x3_tc1::IfcRepresentationContext v1_ContextOfItems, std::optional< std::string > v2_RepresentationIdentifier, std::optional< std::string > v3_RepresentationType, std::vector< ::Ifc4x3_tc1::IfcRepresentationItem > v4_Items) { set_attribute_value(0, (v1_ContextOfItems)); if (v2_RepresentationIdentifier) {set_attribute_value(1, (*v2_RepresentationIdentifier)); } if (v3_RepresentationType) {set_attribute_value(2, (*v3_RepresentationType)); }set_attribute_value(3, cast_vector(v4_Items));; return *this; } +Ifc4x3_tc1::IfcRepresentation Ifc4x3_tc1::IfcRepresentation::initialize(::Ifc4x3_tc1::IfcRepresentationContext v1_ContextOfItems, std::optional< std::string > v2_RepresentationIdentifier, std::optional< std::string > v3_RepresentationType, std::vector< ::Ifc4x3_tc1::IfcRepresentationItem > v4_Items) { set_attribute_value(0, (v1_ContextOfItems)); if (v2_RepresentationIdentifier) {set_attribute_value(1, (*v2_RepresentationIdentifier)); } if (v3_RepresentationType) {set_attribute_value(2, (*v3_RepresentationType)); }set_attribute_value(3, cast_vector(v4_Items));; return *this; } // Function implementations for IfcRepresentationContext std::optional< std::string > Ifc4x3_tc1::IfcRepresentationContext::ContextIdentifier() const { if(get_attribute_value(0).isNull()) { return std::nullopt; } std::string v = get_attribute_value(0); return v; } @@ -14131,9 +14131,9 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcRepresentationItem::Class() { return Ifc4x3_tc1::IfcRepresentationItem Ifc4x3_tc1::IfcRepresentationItem::initialize() { ; return *this; } // Function implementations for IfcRepresentationMap -::Ifc4x3_tc1::IfcAxis2Placement Ifc4x3_tc1::IfcRepresentationMap::MappingOrigin() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcAxis2Placement>(); } +::Ifc4x3_tc1::IfcAxis2Placement Ifc4x3_tc1::IfcRepresentationMap::MappingOrigin() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcAxis2Placement>(); } void Ifc4x3_tc1::IfcRepresentationMap::setMappingOrigin(const ::Ifc4x3_tc1::IfcAxis2Placement& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } -::Ifc4x3_tc1::IfcRepresentation Ifc4x3_tc1::IfcRepresentationMap::MappedRepresentation() const { return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3_tc1::IfcRepresentation>(); } +::Ifc4x3_tc1::IfcRepresentation Ifc4x3_tc1::IfcRepresentationMap::MappedRepresentation() const { return ((express::base)(get_attribute_value(1))).as<::Ifc4x3_tc1::IfcRepresentation>(); } void Ifc4x3_tc1::IfcRepresentationMap::setMappedRepresentation(const ::Ifc4x3_tc1::IfcRepresentation& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } std::vector<::Ifc4x3_tc1::IfcShapeAspect> Ifc4x3_tc1::IfcRepresentationMap::HasShapeAspects() const { return cast_vector(file()->get_inverse(data()->id(), IFC4X3_TC1_types[1003], 4)); } @@ -14154,24 +14154,24 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcResource::Class() { return *((ifcopen Ifc4x3_tc1::IfcResource Ifc4x3_tc1::IfcResource::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, std::optional< std::string > v6_Identification, std::optional< std::string > v7_LongDescription) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); } if (v6_Identification) {set_attribute_value(5, (*v6_Identification)); } if (v7_LongDescription) {set_attribute_value(6, (*v7_LongDescription)); }; return *this; } // Function implementations for IfcResourceApprovalRelationship -std::vector< ::Ifc4x3_tc1::IfcResourceObjectSelect > Ifc4x3_tc1::IfcResourceApprovalRelationship::RelatedResourceObjects() const { std::vector es = get_attribute_value(2); return cast_vector<::Ifc4x3_tc1::IfcResourceObjectSelect>(es); } -void Ifc4x3_tc1::IfcResourceApprovalRelationship::setRelatedResourceObjects(const std::vector< ::Ifc4x3_tc1::IfcResourceObjectSelect >& v) { set_attribute_value(2, cast_vector(v));if constexpr (false)unset_attribute_value(2); } -::Ifc4x3_tc1::IfcApproval Ifc4x3_tc1::IfcResourceApprovalRelationship::RelatingApproval() const { return ((express::Base)(get_attribute_value(3))).as<::Ifc4x3_tc1::IfcApproval>(); } +std::vector< ::Ifc4x3_tc1::IfcResourceObjectSelect > Ifc4x3_tc1::IfcResourceApprovalRelationship::RelatedResourceObjects() const { std::vector es = get_attribute_value(2); return cast_vector<::Ifc4x3_tc1::IfcResourceObjectSelect>(es); } +void Ifc4x3_tc1::IfcResourceApprovalRelationship::setRelatedResourceObjects(const std::vector< ::Ifc4x3_tc1::IfcResourceObjectSelect >& v) { set_attribute_value(2, cast_vector(v));if constexpr (false)unset_attribute_value(2); } +::Ifc4x3_tc1::IfcApproval Ifc4x3_tc1::IfcResourceApprovalRelationship::RelatingApproval() const { return ((express::base)(get_attribute_value(3))).as<::Ifc4x3_tc1::IfcApproval>(); } void Ifc4x3_tc1::IfcResourceApprovalRelationship::setRelatingApproval(const ::Ifc4x3_tc1::IfcApproval& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } const ifcopenshell::entity& Ifc4x3_tc1::IfcResourceApprovalRelationship::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[953]); } -Ifc4x3_tc1::IfcResourceApprovalRelationship Ifc4x3_tc1::IfcResourceApprovalRelationship::initialize(std::optional< std::string > v1_Name, std::optional< std::string > v2_Description, std::vector< ::Ifc4x3_tc1::IfcResourceObjectSelect > v3_RelatedResourceObjects, ::Ifc4x3_tc1::IfcApproval v4_RelatingApproval) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); } if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, cast_vector(v3_RelatedResourceObjects));set_attribute_value(3, (v4_RelatingApproval));; return *this; } +Ifc4x3_tc1::IfcResourceApprovalRelationship Ifc4x3_tc1::IfcResourceApprovalRelationship::initialize(std::optional< std::string > v1_Name, std::optional< std::string > v2_Description, std::vector< ::Ifc4x3_tc1::IfcResourceObjectSelect > v3_RelatedResourceObjects, ::Ifc4x3_tc1::IfcApproval v4_RelatingApproval) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); } if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, cast_vector(v3_RelatedResourceObjects));set_attribute_value(3, (v4_RelatingApproval));; return *this; } // Function implementations for IfcResourceConstraintRelationship -::Ifc4x3_tc1::IfcConstraint Ifc4x3_tc1::IfcResourceConstraintRelationship::RelatingConstraint() const { return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3_tc1::IfcConstraint>(); } +::Ifc4x3_tc1::IfcConstraint Ifc4x3_tc1::IfcResourceConstraintRelationship::RelatingConstraint() const { return ((express::base)(get_attribute_value(2))).as<::Ifc4x3_tc1::IfcConstraint>(); } void Ifc4x3_tc1::IfcResourceConstraintRelationship::setRelatingConstraint(const ::Ifc4x3_tc1::IfcConstraint& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } -std::vector< ::Ifc4x3_tc1::IfcResourceObjectSelect > Ifc4x3_tc1::IfcResourceConstraintRelationship::RelatedResourceObjects() const { std::vector es = get_attribute_value(3); return cast_vector<::Ifc4x3_tc1::IfcResourceObjectSelect>(es); } -void Ifc4x3_tc1::IfcResourceConstraintRelationship::setRelatedResourceObjects(const std::vector< ::Ifc4x3_tc1::IfcResourceObjectSelect >& v) { set_attribute_value(3, cast_vector(v));if constexpr (false)unset_attribute_value(3); } +std::vector< ::Ifc4x3_tc1::IfcResourceObjectSelect > Ifc4x3_tc1::IfcResourceConstraintRelationship::RelatedResourceObjects() const { std::vector es = get_attribute_value(3); return cast_vector<::Ifc4x3_tc1::IfcResourceObjectSelect>(es); } +void Ifc4x3_tc1::IfcResourceConstraintRelationship::setRelatedResourceObjects(const std::vector< ::Ifc4x3_tc1::IfcResourceObjectSelect >& v) { set_attribute_value(3, cast_vector(v));if constexpr (false)unset_attribute_value(3); } const ifcopenshell::entity& Ifc4x3_tc1::IfcResourceConstraintRelationship::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[954]); } -Ifc4x3_tc1::IfcResourceConstraintRelationship Ifc4x3_tc1::IfcResourceConstraintRelationship::initialize(std::optional< std::string > v1_Name, std::optional< std::string > v2_Description, ::Ifc4x3_tc1::IfcConstraint v3_RelatingConstraint, std::vector< ::Ifc4x3_tc1::IfcResourceObjectSelect > v4_RelatedResourceObjects) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); } if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, (v3_RelatingConstraint));set_attribute_value(3, cast_vector(v4_RelatedResourceObjects));; return *this; } +Ifc4x3_tc1::IfcResourceConstraintRelationship Ifc4x3_tc1::IfcResourceConstraintRelationship::initialize(std::optional< std::string > v1_Name, std::optional< std::string > v2_Description, ::Ifc4x3_tc1::IfcConstraint v3_RelatingConstraint, std::vector< ::Ifc4x3_tc1::IfcResourceObjectSelect > v4_RelatedResourceObjects) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); } if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, (v3_RelatingConstraint));set_attribute_value(3, cast_vector(v4_RelatedResourceObjects));; return *this; } // Function implementations for IfcResourceLevelRelationship std::optional< std::string > Ifc4x3_tc1::IfcResourceLevelRelationship::Name() const { if(get_attribute_value(0).isNull()) { return std::nullopt; } std::string v = get_attribute_value(0); return v; } @@ -14220,7 +14220,7 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcResourceTime::Class() { return *((ifc Ifc4x3_tc1::IfcResourceTime Ifc4x3_tc1::IfcResourceTime::initialize(std::optional< std::string > v1_Name, std::optional< ::Ifc4x3_tc1::IfcDataOriginEnum::Value > v2_DataOrigin, std::optional< std::string > v3_UserDefinedDataOrigin, std::optional< std::string > v4_ScheduleWork, std::optional< double > v5_ScheduleUsage, std::optional< std::string > v6_ScheduleStart, std::optional< std::string > v7_ScheduleFinish, std::optional< std::string > v8_ScheduleContour, std::optional< std::string > v9_LevelingDelay, std::optional< bool > v10_IsOverAllocated, std::optional< std::string > v11_StatusTime, std::optional< std::string > v12_ActualWork, std::optional< double > v13_ActualUsage, std::optional< std::string > v14_ActualStart, std::optional< std::string > v15_ActualFinish, std::optional< std::string > v16_RemainingWork, std::optional< double > v17_RemainingUsage, std::optional< double > v18_Completion) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); } if (v2_DataOrigin) {set_attribute_value(1, (enumeration_reference(&::Ifc4x3_tc1::IfcDataOriginEnum::Class(),(size_t)*v2_DataOrigin))); } if (v3_UserDefinedDataOrigin) {set_attribute_value(2, (*v3_UserDefinedDataOrigin)); } if (v4_ScheduleWork) {set_attribute_value(3, (*v4_ScheduleWork)); } if (v5_ScheduleUsage) {set_attribute_value(4, (*v5_ScheduleUsage)); } if (v6_ScheduleStart) {set_attribute_value(5, (*v6_ScheduleStart)); } if (v7_ScheduleFinish) {set_attribute_value(6, (*v7_ScheduleFinish)); } if (v8_ScheduleContour) {set_attribute_value(7, (*v8_ScheduleContour)); } if (v9_LevelingDelay) {set_attribute_value(8, (*v9_LevelingDelay)); } if (v10_IsOverAllocated) {set_attribute_value(9, (*v10_IsOverAllocated)); } if (v11_StatusTime) {set_attribute_value(10, (*v11_StatusTime)); } if (v12_ActualWork) {set_attribute_value(11, (*v12_ActualWork)); } if (v13_ActualUsage) {set_attribute_value(12, (*v13_ActualUsage)); } if (v14_ActualStart) {set_attribute_value(13, (*v14_ActualStart)); } if (v15_ActualFinish) {set_attribute_value(14, (*v15_ActualFinish)); } if (v16_RemainingWork) {set_attribute_value(15, (*v16_RemainingWork)); } if (v17_RemainingUsage) {set_attribute_value(16, (*v17_RemainingUsage)); } if (v18_Completion) {set_attribute_value(17, (*v18_Completion)); }; return *this; } // Function implementations for IfcRevolvedAreaSolid -::Ifc4x3_tc1::IfcAxis1Placement Ifc4x3_tc1::IfcRevolvedAreaSolid::Axis() const { return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3_tc1::IfcAxis1Placement>(); } +::Ifc4x3_tc1::IfcAxis1Placement Ifc4x3_tc1::IfcRevolvedAreaSolid::Axis() const { return ((express::base)(get_attribute_value(2))).as<::Ifc4x3_tc1::IfcAxis1Placement>(); } void Ifc4x3_tc1::IfcRevolvedAreaSolid::setAxis(const ::Ifc4x3_tc1::IfcAxis1Placement& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } double Ifc4x3_tc1::IfcRevolvedAreaSolid::Angle() const { double v = get_attribute_value(3); return v; } void Ifc4x3_tc1::IfcRevolvedAreaSolid::setAngle(const double& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } @@ -14230,7 +14230,7 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcRevolvedAreaSolid::Class() { return * Ifc4x3_tc1::IfcRevolvedAreaSolid Ifc4x3_tc1::IfcRevolvedAreaSolid::initialize(::Ifc4x3_tc1::IfcProfileDef v1_SweptArea, ::Ifc4x3_tc1::IfcAxis2Placement3D v2_Position, ::Ifc4x3_tc1::IfcAxis1Placement v3_Axis, double v4_Angle) { set_attribute_value(0, (v1_SweptArea));set_attribute_value(1, (v2_Position));set_attribute_value(2, (v3_Axis));set_attribute_value(3, (v4_Angle));; return *this; } // Function implementations for IfcRevolvedAreaSolidTapered -::Ifc4x3_tc1::IfcProfileDef Ifc4x3_tc1::IfcRevolvedAreaSolidTapered::EndSweptArea() const { return ((express::Base)(get_attribute_value(4))).as<::Ifc4x3_tc1::IfcProfileDef>(); } +::Ifc4x3_tc1::IfcProfileDef Ifc4x3_tc1::IfcRevolvedAreaSolidTapered::EndSweptArea() const { return ((express::base)(get_attribute_value(4))).as<::Ifc4x3_tc1::IfcProfileDef>(); } void Ifc4x3_tc1::IfcRevolvedAreaSolidTapered::setEndSweptArea(const ::Ifc4x3_tc1::IfcProfileDef& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } @@ -14287,12 +14287,12 @@ void Ifc4x3_tc1::IfcRoofType::setPredefinedType(const ::Ifc4x3_tc1::IfcRoofTypeE const ifcopenshell::entity& Ifc4x3_tc1::IfcRoofType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[969]); } -Ifc4x3_tc1::IfcRoofType Ifc4x3_tc1::IfcRoofType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcRoofTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcRoofTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_tc1::IfcRoofType Ifc4x3_tc1::IfcRoofType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcRoofTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcRoofTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcRoot std::string Ifc4x3_tc1::IfcRoot::GlobalId() const { std::string v = get_attribute_value(0); return v; } void Ifc4x3_tc1::IfcRoot::setGlobalId(const std::string& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } -::Ifc4x3_tc1::IfcOwnerHistory Ifc4x3_tc1::IfcRoot::OwnerHistory() const { if(get_attribute_value(1).isNull()) { return ::Ifc4x3_tc1::IfcOwnerHistory{}; } return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3_tc1::IfcOwnerHistory>(); } +::Ifc4x3_tc1::IfcOwnerHistory Ifc4x3_tc1::IfcRoot::OwnerHistory() const { if(get_attribute_value(1).isNull()) { return ::Ifc4x3_tc1::IfcOwnerHistory{}; } return ((express::base)(get_attribute_value(1))).as<::Ifc4x3_tc1::IfcOwnerHistory>(); } void Ifc4x3_tc1::IfcRoot::setOwnerHistory(const ::Ifc4x3_tc1::IfcOwnerHistory& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } std::optional< std::string > Ifc4x3_tc1::IfcRoot::Name() const { if(get_attribute_value(2).isNull()) { return std::nullopt; } std::string v = get_attribute_value(2); return v; } void Ifc4x3_tc1::IfcRoot::setName(const std::optional< std::string >& v) { if (v) {set_attribute_value(2, *v);} else {unset_attribute_value(2);} } @@ -14335,7 +14335,7 @@ void Ifc4x3_tc1::IfcSanitaryTerminalType::setPredefinedType(const ::Ifc4x3_tc1:: const ifcopenshell::entity& Ifc4x3_tc1::IfcSanitaryTerminalType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[978]); } -Ifc4x3_tc1::IfcSanitaryTerminalType Ifc4x3_tc1::IfcSanitaryTerminalType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcSanitaryTerminalTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcSanitaryTerminalTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_tc1::IfcSanitaryTerminalType Ifc4x3_tc1::IfcSanitaryTerminalType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcSanitaryTerminalTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcSanitaryTerminalTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcSchedulingTime std::optional< std::string > Ifc4x3_tc1::IfcSchedulingTime::Name() const { if(get_attribute_value(0).isNull()) { return std::nullopt; } std::string v = get_attribute_value(0); return v; } @@ -14353,7 +14353,7 @@ Ifc4x3_tc1::IfcSchedulingTime Ifc4x3_tc1::IfcSchedulingTime::initialize(std::opt const ifcopenshell::entity& Ifc4x3_tc1::IfcSeamCurve::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[981]); } -Ifc4x3_tc1::IfcSeamCurve Ifc4x3_tc1::IfcSeamCurve::initialize(::Ifc4x3_tc1::IfcCurve v1_Curve3D, std::vector< ::Ifc4x3_tc1::IfcPcurve > v2_AssociatedGeometry, ::Ifc4x3_tc1::IfcPreferredSurfaceCurveRepresentation::Value v3_MasterRepresentation) { set_attribute_value(0, (v1_Curve3D));set_attribute_value(1, cast_vector(v2_AssociatedGeometry));set_attribute_value(2, (enumeration_reference(&::Ifc4x3_tc1::IfcPreferredSurfaceCurveRepresentation::Class(),(size_t)v3_MasterRepresentation)));; return *this; } +Ifc4x3_tc1::IfcSeamCurve Ifc4x3_tc1::IfcSeamCurve::initialize(::Ifc4x3_tc1::IfcCurve v1_Curve3D, std::vector< ::Ifc4x3_tc1::IfcPcurve > v2_AssociatedGeometry, ::Ifc4x3_tc1::IfcPreferredSurfaceCurveRepresentation::Value v3_MasterRepresentation) { set_attribute_value(0, (v1_Curve3D));set_attribute_value(1, cast_vector(v2_AssociatedGeometry));set_attribute_value(2, (enumeration_reference(&::Ifc4x3_tc1::IfcPreferredSurfaceCurveRepresentation::Class(),(size_t)v3_MasterRepresentation)));; return *this; } // Function implementations for IfcSecondOrderPolynomialSpiral double Ifc4x3_tc1::IfcSecondOrderPolynomialSpiral::QuadraticTerm() const { double v = get_attribute_value(1); return v; } @@ -14370,9 +14370,9 @@ Ifc4x3_tc1::IfcSecondOrderPolynomialSpiral Ifc4x3_tc1::IfcSecondOrderPolynomialS // Function implementations for IfcSectionProperties ::Ifc4x3_tc1::IfcSectionTypeEnum::Value Ifc4x3_tc1::IfcSectionProperties::SectionType() const { return ::Ifc4x3_tc1::IfcSectionTypeEnum::FromString(get_attribute_value(0)); } void Ifc4x3_tc1::IfcSectionProperties::setSectionType(const ::Ifc4x3_tc1::IfcSectionTypeEnum::Value& v) { set_attribute_value(0, enumeration_reference(&::Ifc4x3_tc1::IfcSectionTypeEnum::Class(), (size_t) v));if constexpr (false)unset_attribute_value(0); } -::Ifc4x3_tc1::IfcProfileDef Ifc4x3_tc1::IfcSectionProperties::StartProfile() const { return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3_tc1::IfcProfileDef>(); } +::Ifc4x3_tc1::IfcProfileDef Ifc4x3_tc1::IfcSectionProperties::StartProfile() const { return ((express::base)(get_attribute_value(1))).as<::Ifc4x3_tc1::IfcProfileDef>(); } void Ifc4x3_tc1::IfcSectionProperties::setStartProfile(const ::Ifc4x3_tc1::IfcProfileDef& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } -::Ifc4x3_tc1::IfcProfileDef Ifc4x3_tc1::IfcSectionProperties::EndProfile() const { if(get_attribute_value(2).isNull()) { return ::Ifc4x3_tc1::IfcProfileDef{}; } return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3_tc1::IfcProfileDef>(); } +::Ifc4x3_tc1::IfcProfileDef Ifc4x3_tc1::IfcSectionProperties::EndProfile() const { if(get_attribute_value(2).isNull()) { return ::Ifc4x3_tc1::IfcProfileDef{}; } return ((express::base)(get_attribute_value(2))).as<::Ifc4x3_tc1::IfcProfileDef>(); } void Ifc4x3_tc1::IfcSectionProperties::setEndProfile(const ::Ifc4x3_tc1::IfcProfileDef& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } @@ -14388,56 +14388,56 @@ std::optional< double > Ifc4x3_tc1::IfcSectionReinforcementProperties::Transvers void Ifc4x3_tc1::IfcSectionReinforcementProperties::setTransversePosition(const std::optional< double >& v) { if (v) {set_attribute_value(2, *v);} else {unset_attribute_value(2);} } ::Ifc4x3_tc1::IfcReinforcingBarRoleEnum::Value Ifc4x3_tc1::IfcSectionReinforcementProperties::ReinforcementRole() const { return ::Ifc4x3_tc1::IfcReinforcingBarRoleEnum::FromString(get_attribute_value(3)); } void Ifc4x3_tc1::IfcSectionReinforcementProperties::setReinforcementRole(const ::Ifc4x3_tc1::IfcReinforcingBarRoleEnum::Value& v) { set_attribute_value(3, enumeration_reference(&::Ifc4x3_tc1::IfcReinforcingBarRoleEnum::Class(), (size_t) v));if constexpr (false)unset_attribute_value(3); } -::Ifc4x3_tc1::IfcSectionProperties Ifc4x3_tc1::IfcSectionReinforcementProperties::SectionDefinition() const { return ((express::Base)(get_attribute_value(4))).as<::Ifc4x3_tc1::IfcSectionProperties>(); } +::Ifc4x3_tc1::IfcSectionProperties Ifc4x3_tc1::IfcSectionReinforcementProperties::SectionDefinition() const { return ((express::base)(get_attribute_value(4))).as<::Ifc4x3_tc1::IfcSectionProperties>(); } void Ifc4x3_tc1::IfcSectionReinforcementProperties::setSectionDefinition(const ::Ifc4x3_tc1::IfcSectionProperties& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } -std::vector< ::Ifc4x3_tc1::IfcReinforcementBarProperties > Ifc4x3_tc1::IfcSectionReinforcementProperties::CrossSectionReinforcementDefinitions() const { std::vector es = get_attribute_value(5); return cast_vector<::Ifc4x3_tc1::IfcReinforcementBarProperties>(es); } -void Ifc4x3_tc1::IfcSectionReinforcementProperties::setCrossSectionReinforcementDefinitions(const std::vector< ::Ifc4x3_tc1::IfcReinforcementBarProperties >& v) { set_attribute_value(5, cast_vector(v));if constexpr (false)unset_attribute_value(5); } +std::vector< ::Ifc4x3_tc1::IfcReinforcementBarProperties > Ifc4x3_tc1::IfcSectionReinforcementProperties::CrossSectionReinforcementDefinitions() const { std::vector es = get_attribute_value(5); return cast_vector<::Ifc4x3_tc1::IfcReinforcementBarProperties>(es); } +void Ifc4x3_tc1::IfcSectionReinforcementProperties::setCrossSectionReinforcementDefinitions(const std::vector< ::Ifc4x3_tc1::IfcReinforcementBarProperties >& v) { set_attribute_value(5, cast_vector(v));if constexpr (false)unset_attribute_value(5); } const ifcopenshell::entity& Ifc4x3_tc1::IfcSectionReinforcementProperties::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[990]); } -Ifc4x3_tc1::IfcSectionReinforcementProperties Ifc4x3_tc1::IfcSectionReinforcementProperties::initialize(double v1_LongitudinalStartPosition, double v2_LongitudinalEndPosition, std::optional< double > v3_TransversePosition, ::Ifc4x3_tc1::IfcReinforcingBarRoleEnum::Value v4_ReinforcementRole, ::Ifc4x3_tc1::IfcSectionProperties v5_SectionDefinition, std::vector< ::Ifc4x3_tc1::IfcReinforcementBarProperties > v6_CrossSectionReinforcementDefinitions) { set_attribute_value(0, (v1_LongitudinalStartPosition));set_attribute_value(1, (v2_LongitudinalEndPosition)); if (v3_TransversePosition) {set_attribute_value(2, (*v3_TransversePosition)); }set_attribute_value(3, (enumeration_reference(&::Ifc4x3_tc1::IfcReinforcingBarRoleEnum::Class(),(size_t)v4_ReinforcementRole)));set_attribute_value(4, (v5_SectionDefinition));set_attribute_value(5, cast_vector(v6_CrossSectionReinforcementDefinitions));; return *this; } +Ifc4x3_tc1::IfcSectionReinforcementProperties Ifc4x3_tc1::IfcSectionReinforcementProperties::initialize(double v1_LongitudinalStartPosition, double v2_LongitudinalEndPosition, std::optional< double > v3_TransversePosition, ::Ifc4x3_tc1::IfcReinforcingBarRoleEnum::Value v4_ReinforcementRole, ::Ifc4x3_tc1::IfcSectionProperties v5_SectionDefinition, std::vector< ::Ifc4x3_tc1::IfcReinforcementBarProperties > v6_CrossSectionReinforcementDefinitions) { set_attribute_value(0, (v1_LongitudinalStartPosition));set_attribute_value(1, (v2_LongitudinalEndPosition)); if (v3_TransversePosition) {set_attribute_value(2, (*v3_TransversePosition)); }set_attribute_value(3, (enumeration_reference(&::Ifc4x3_tc1::IfcReinforcingBarRoleEnum::Class(),(size_t)v4_ReinforcementRole)));set_attribute_value(4, (v5_SectionDefinition));set_attribute_value(5, cast_vector(v6_CrossSectionReinforcementDefinitions));; return *this; } // Function implementations for IfcSectionedSolid -::Ifc4x3_tc1::IfcCurve Ifc4x3_tc1::IfcSectionedSolid::Directrix() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcCurve>(); } +::Ifc4x3_tc1::IfcCurve Ifc4x3_tc1::IfcSectionedSolid::Directrix() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcCurve>(); } void Ifc4x3_tc1::IfcSectionedSolid::setDirectrix(const ::Ifc4x3_tc1::IfcCurve& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } -std::vector< ::Ifc4x3_tc1::IfcProfileDef > Ifc4x3_tc1::IfcSectionedSolid::CrossSections() const { std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3_tc1::IfcProfileDef>(es); } -void Ifc4x3_tc1::IfcSectionedSolid::setCrossSections(const std::vector< ::Ifc4x3_tc1::IfcProfileDef >& v) { set_attribute_value(1, cast_vector(v));if constexpr (false)unset_attribute_value(1); } +std::vector< ::Ifc4x3_tc1::IfcProfileDef > Ifc4x3_tc1::IfcSectionedSolid::CrossSections() const { std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3_tc1::IfcProfileDef>(es); } +void Ifc4x3_tc1::IfcSectionedSolid::setCrossSections(const std::vector< ::Ifc4x3_tc1::IfcProfileDef >& v) { set_attribute_value(1, cast_vector(v));if constexpr (false)unset_attribute_value(1); } const ifcopenshell::entity& Ifc4x3_tc1::IfcSectionedSolid::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[984]); } -Ifc4x3_tc1::IfcSectionedSolid Ifc4x3_tc1::IfcSectionedSolid::initialize(::Ifc4x3_tc1::IfcCurve v1_Directrix, std::vector< ::Ifc4x3_tc1::IfcProfileDef > v2_CrossSections) { set_attribute_value(0, (v1_Directrix));set_attribute_value(1, cast_vector(v2_CrossSections));; return *this; } +Ifc4x3_tc1::IfcSectionedSolid Ifc4x3_tc1::IfcSectionedSolid::initialize(::Ifc4x3_tc1::IfcCurve v1_Directrix, std::vector< ::Ifc4x3_tc1::IfcProfileDef > v2_CrossSections) { set_attribute_value(0, (v1_Directrix));set_attribute_value(1, cast_vector(v2_CrossSections));; return *this; } // Function implementations for IfcSectionedSolidHorizontal -std::vector< ::Ifc4x3_tc1::IfcAxis2PlacementLinear > Ifc4x3_tc1::IfcSectionedSolidHorizontal::CrossSectionPositions() const { std::vector es = get_attribute_value(2); return cast_vector<::Ifc4x3_tc1::IfcAxis2PlacementLinear>(es); } -void Ifc4x3_tc1::IfcSectionedSolidHorizontal::setCrossSectionPositions(const std::vector< ::Ifc4x3_tc1::IfcAxis2PlacementLinear >& v) { set_attribute_value(2, cast_vector(v));if constexpr (false)unset_attribute_value(2); } +std::vector< ::Ifc4x3_tc1::IfcAxis2PlacementLinear > Ifc4x3_tc1::IfcSectionedSolidHorizontal::CrossSectionPositions() const { std::vector es = get_attribute_value(2); return cast_vector<::Ifc4x3_tc1::IfcAxis2PlacementLinear>(es); } +void Ifc4x3_tc1::IfcSectionedSolidHorizontal::setCrossSectionPositions(const std::vector< ::Ifc4x3_tc1::IfcAxis2PlacementLinear >& v) { set_attribute_value(2, cast_vector(v));if constexpr (false)unset_attribute_value(2); } const ifcopenshell::entity& Ifc4x3_tc1::IfcSectionedSolidHorizontal::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[985]); } -Ifc4x3_tc1::IfcSectionedSolidHorizontal Ifc4x3_tc1::IfcSectionedSolidHorizontal::initialize(::Ifc4x3_tc1::IfcCurve v1_Directrix, std::vector< ::Ifc4x3_tc1::IfcProfileDef > v2_CrossSections, std::vector< ::Ifc4x3_tc1::IfcAxis2PlacementLinear > v3_CrossSectionPositions) { set_attribute_value(0, (v1_Directrix));set_attribute_value(1, cast_vector(v2_CrossSections));set_attribute_value(2, cast_vector(v3_CrossSectionPositions));; return *this; } +Ifc4x3_tc1::IfcSectionedSolidHorizontal Ifc4x3_tc1::IfcSectionedSolidHorizontal::initialize(::Ifc4x3_tc1::IfcCurve v1_Directrix, std::vector< ::Ifc4x3_tc1::IfcProfileDef > v2_CrossSections, std::vector< ::Ifc4x3_tc1::IfcAxis2PlacementLinear > v3_CrossSectionPositions) { set_attribute_value(0, (v1_Directrix));set_attribute_value(1, cast_vector(v2_CrossSections));set_attribute_value(2, cast_vector(v3_CrossSectionPositions));; return *this; } // Function implementations for IfcSectionedSpine -::Ifc4x3_tc1::IfcCompositeCurve Ifc4x3_tc1::IfcSectionedSpine::SpineCurve() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcCompositeCurve>(); } +::Ifc4x3_tc1::IfcCompositeCurve Ifc4x3_tc1::IfcSectionedSpine::SpineCurve() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcCompositeCurve>(); } void Ifc4x3_tc1::IfcSectionedSpine::setSpineCurve(const ::Ifc4x3_tc1::IfcCompositeCurve& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } -std::vector< ::Ifc4x3_tc1::IfcProfileDef > Ifc4x3_tc1::IfcSectionedSpine::CrossSections() const { std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3_tc1::IfcProfileDef>(es); } -void Ifc4x3_tc1::IfcSectionedSpine::setCrossSections(const std::vector< ::Ifc4x3_tc1::IfcProfileDef >& v) { set_attribute_value(1, cast_vector(v));if constexpr (false)unset_attribute_value(1); } -std::vector< ::Ifc4x3_tc1::IfcAxis2Placement3D > Ifc4x3_tc1::IfcSectionedSpine::CrossSectionPositions() const { std::vector es = get_attribute_value(2); return cast_vector<::Ifc4x3_tc1::IfcAxis2Placement3D>(es); } -void Ifc4x3_tc1::IfcSectionedSpine::setCrossSectionPositions(const std::vector< ::Ifc4x3_tc1::IfcAxis2Placement3D >& v) { set_attribute_value(2, cast_vector(v));if constexpr (false)unset_attribute_value(2); } +std::vector< ::Ifc4x3_tc1::IfcProfileDef > Ifc4x3_tc1::IfcSectionedSpine::CrossSections() const { std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3_tc1::IfcProfileDef>(es); } +void Ifc4x3_tc1::IfcSectionedSpine::setCrossSections(const std::vector< ::Ifc4x3_tc1::IfcProfileDef >& v) { set_attribute_value(1, cast_vector(v));if constexpr (false)unset_attribute_value(1); } +std::vector< ::Ifc4x3_tc1::IfcAxis2Placement3D > Ifc4x3_tc1::IfcSectionedSpine::CrossSectionPositions() const { std::vector es = get_attribute_value(2); return cast_vector<::Ifc4x3_tc1::IfcAxis2Placement3D>(es); } +void Ifc4x3_tc1::IfcSectionedSpine::setCrossSectionPositions(const std::vector< ::Ifc4x3_tc1::IfcAxis2Placement3D >& v) { set_attribute_value(2, cast_vector(v));if constexpr (false)unset_attribute_value(2); } const ifcopenshell::entity& Ifc4x3_tc1::IfcSectionedSpine::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[986]); } -Ifc4x3_tc1::IfcSectionedSpine Ifc4x3_tc1::IfcSectionedSpine::initialize(::Ifc4x3_tc1::IfcCompositeCurve v1_SpineCurve, std::vector< ::Ifc4x3_tc1::IfcProfileDef > v2_CrossSections, std::vector< ::Ifc4x3_tc1::IfcAxis2Placement3D > v3_CrossSectionPositions) { set_attribute_value(0, (v1_SpineCurve));set_attribute_value(1, cast_vector(v2_CrossSections));set_attribute_value(2, cast_vector(v3_CrossSectionPositions));; return *this; } +Ifc4x3_tc1::IfcSectionedSpine Ifc4x3_tc1::IfcSectionedSpine::initialize(::Ifc4x3_tc1::IfcCompositeCurve v1_SpineCurve, std::vector< ::Ifc4x3_tc1::IfcProfileDef > v2_CrossSections, std::vector< ::Ifc4x3_tc1::IfcAxis2Placement3D > v3_CrossSectionPositions) { set_attribute_value(0, (v1_SpineCurve));set_attribute_value(1, cast_vector(v2_CrossSections));set_attribute_value(2, cast_vector(v3_CrossSectionPositions));; return *this; } // Function implementations for IfcSectionedSurface -::Ifc4x3_tc1::IfcCurve Ifc4x3_tc1::IfcSectionedSurface::Directrix() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcCurve>(); } +::Ifc4x3_tc1::IfcCurve Ifc4x3_tc1::IfcSectionedSurface::Directrix() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcCurve>(); } void Ifc4x3_tc1::IfcSectionedSurface::setDirectrix(const ::Ifc4x3_tc1::IfcCurve& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } -std::vector< ::Ifc4x3_tc1::IfcAxis2PlacementLinear > Ifc4x3_tc1::IfcSectionedSurface::CrossSectionPositions() const { std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3_tc1::IfcAxis2PlacementLinear>(es); } -void Ifc4x3_tc1::IfcSectionedSurface::setCrossSectionPositions(const std::vector< ::Ifc4x3_tc1::IfcAxis2PlacementLinear >& v) { set_attribute_value(1, cast_vector(v));if constexpr (false)unset_attribute_value(1); } -std::vector< ::Ifc4x3_tc1::IfcProfileDef > Ifc4x3_tc1::IfcSectionedSurface::CrossSections() const { std::vector es = get_attribute_value(2); return cast_vector<::Ifc4x3_tc1::IfcProfileDef>(es); } -void Ifc4x3_tc1::IfcSectionedSurface::setCrossSections(const std::vector< ::Ifc4x3_tc1::IfcProfileDef >& v) { set_attribute_value(2, cast_vector(v));if constexpr (false)unset_attribute_value(2); } +std::vector< ::Ifc4x3_tc1::IfcAxis2PlacementLinear > Ifc4x3_tc1::IfcSectionedSurface::CrossSectionPositions() const { std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3_tc1::IfcAxis2PlacementLinear>(es); } +void Ifc4x3_tc1::IfcSectionedSurface::setCrossSectionPositions(const std::vector< ::Ifc4x3_tc1::IfcAxis2PlacementLinear >& v) { set_attribute_value(1, cast_vector(v));if constexpr (false)unset_attribute_value(1); } +std::vector< ::Ifc4x3_tc1::IfcProfileDef > Ifc4x3_tc1::IfcSectionedSurface::CrossSections() const { std::vector es = get_attribute_value(2); return cast_vector<::Ifc4x3_tc1::IfcProfileDef>(es); } +void Ifc4x3_tc1::IfcSectionedSurface::setCrossSections(const std::vector< ::Ifc4x3_tc1::IfcProfileDef >& v) { set_attribute_value(2, cast_vector(v));if constexpr (false)unset_attribute_value(2); } const ifcopenshell::entity& Ifc4x3_tc1::IfcSectionedSurface::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[987]); } -Ifc4x3_tc1::IfcSectionedSurface Ifc4x3_tc1::IfcSectionedSurface::initialize(::Ifc4x3_tc1::IfcCurve v1_Directrix, std::vector< ::Ifc4x3_tc1::IfcAxis2PlacementLinear > v2_CrossSectionPositions, std::vector< ::Ifc4x3_tc1::IfcProfileDef > v3_CrossSections) { set_attribute_value(0, (v1_Directrix));set_attribute_value(1, cast_vector(v2_CrossSectionPositions));set_attribute_value(2, cast_vector(v3_CrossSections));; return *this; } +Ifc4x3_tc1::IfcSectionedSurface Ifc4x3_tc1::IfcSectionedSurface::initialize(::Ifc4x3_tc1::IfcCurve v1_Directrix, std::vector< ::Ifc4x3_tc1::IfcAxis2PlacementLinear > v2_CrossSectionPositions, std::vector< ::Ifc4x3_tc1::IfcProfileDef > v3_CrossSections) { set_attribute_value(0, (v1_Directrix));set_attribute_value(1, cast_vector(v2_CrossSectionPositions));set_attribute_value(2, cast_vector(v3_CrossSections));; return *this; } // Function implementations for IfcSegment ::Ifc4x3_tc1::IfcTransitionCode::Value Ifc4x3_tc1::IfcSegment::Transition() const { return ::Ifc4x3_tc1::IfcTransitionCode::FromString(get_attribute_value(0)); } @@ -14449,14 +14449,14 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcSegment::Class() { return *((ifcopens Ifc4x3_tc1::IfcSegment Ifc4x3_tc1::IfcSegment::initialize(::Ifc4x3_tc1::IfcTransitionCode::Value v1_Transition) { set_attribute_value(0, (enumeration_reference(&::Ifc4x3_tc1::IfcTransitionCode::Class(),(size_t)v1_Transition)));; return *this; } // Function implementations for IfcSegmentedReferenceCurve -::Ifc4x3_tc1::IfcBoundedCurve Ifc4x3_tc1::IfcSegmentedReferenceCurve::BaseCurve() const { return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3_tc1::IfcBoundedCurve>(); } +::Ifc4x3_tc1::IfcBoundedCurve Ifc4x3_tc1::IfcSegmentedReferenceCurve::BaseCurve() const { return ((express::base)(get_attribute_value(2))).as<::Ifc4x3_tc1::IfcBoundedCurve>(); } void Ifc4x3_tc1::IfcSegmentedReferenceCurve::setBaseCurve(const ::Ifc4x3_tc1::IfcBoundedCurve& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } -::Ifc4x3_tc1::IfcPlacement Ifc4x3_tc1::IfcSegmentedReferenceCurve::EndPoint() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3_tc1::IfcPlacement{}; } return ((express::Base)(get_attribute_value(3))).as<::Ifc4x3_tc1::IfcPlacement>(); } +::Ifc4x3_tc1::IfcPlacement Ifc4x3_tc1::IfcSegmentedReferenceCurve::EndPoint() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3_tc1::IfcPlacement{}; } return ((express::base)(get_attribute_value(3))).as<::Ifc4x3_tc1::IfcPlacement>(); } void Ifc4x3_tc1::IfcSegmentedReferenceCurve::setEndPoint(const ::Ifc4x3_tc1::IfcPlacement& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } const ifcopenshell::entity& Ifc4x3_tc1::IfcSegmentedReferenceCurve::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[993]); } -Ifc4x3_tc1::IfcSegmentedReferenceCurve Ifc4x3_tc1::IfcSegmentedReferenceCurve::initialize(std::vector< ::Ifc4x3_tc1::IfcSegment > v1_Segments, boost::logic::tribool v2_SelfIntersect, ::Ifc4x3_tc1::IfcBoundedCurve v3_BaseCurve, ::Ifc4x3_tc1::IfcPlacement v4_EndPoint) { set_attribute_value(0, cast_vector(v1_Segments));set_attribute_value(1, (v2_SelfIntersect));set_attribute_value(2, (v3_BaseCurve));set_attribute_value(3, (v4_EndPoint));; return *this; } +Ifc4x3_tc1::IfcSegmentedReferenceCurve Ifc4x3_tc1::IfcSegmentedReferenceCurve::initialize(std::vector< ::Ifc4x3_tc1::IfcSegment > v1_Segments, boost::logic::tribool v2_SelfIntersect, ::Ifc4x3_tc1::IfcBoundedCurve v3_BaseCurve, ::Ifc4x3_tc1::IfcPlacement v4_EndPoint) { set_attribute_value(0, cast_vector(v1_Segments));set_attribute_value(1, (v2_SelfIntersect));set_attribute_value(2, (v3_BaseCurve));set_attribute_value(3, (v4_EndPoint));; return *this; } // Function implementations for IfcSensor std::optional< ::Ifc4x3_tc1::IfcSensorTypeEnum::Value > Ifc4x3_tc1::IfcSensor::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_tc1::IfcSensorTypeEnum::FromString(get_attribute_value(8)); } @@ -14472,7 +14472,7 @@ void Ifc4x3_tc1::IfcSensorType::setPredefinedType(const ::Ifc4x3_tc1::IfcSensorT const ifcopenshell::entity& Ifc4x3_tc1::IfcSensorType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[996]); } -Ifc4x3_tc1::IfcSensorType Ifc4x3_tc1::IfcSensorType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcSensorTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcSensorTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_tc1::IfcSensorType Ifc4x3_tc1::IfcSensorType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcSensorTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcSensorTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcSeventhOrderPolynomialSpiral double Ifc4x3_tc1::IfcSeventhOrderPolynomialSpiral::SepticTerm() const { double v = get_attribute_value(1); return v; } @@ -14510,45 +14510,45 @@ void Ifc4x3_tc1::IfcShadingDeviceType::setPredefinedType(const ::Ifc4x3_tc1::Ifc const ifcopenshell::entity& Ifc4x3_tc1::IfcShadingDeviceType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[1001]); } -Ifc4x3_tc1::IfcShadingDeviceType Ifc4x3_tc1::IfcShadingDeviceType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcShadingDeviceTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcShadingDeviceTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_tc1::IfcShadingDeviceType Ifc4x3_tc1::IfcShadingDeviceType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcShadingDeviceTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcShadingDeviceTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcShapeAspect -std::vector< ::Ifc4x3_tc1::IfcShapeModel > Ifc4x3_tc1::IfcShapeAspect::ShapeRepresentations() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3_tc1::IfcShapeModel>(es); } -void Ifc4x3_tc1::IfcShapeAspect::setShapeRepresentations(const std::vector< ::Ifc4x3_tc1::IfcShapeModel >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } +std::vector< ::Ifc4x3_tc1::IfcShapeModel > Ifc4x3_tc1::IfcShapeAspect::ShapeRepresentations() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3_tc1::IfcShapeModel>(es); } +void Ifc4x3_tc1::IfcShapeAspect::setShapeRepresentations(const std::vector< ::Ifc4x3_tc1::IfcShapeModel >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } std::optional< std::string > Ifc4x3_tc1::IfcShapeAspect::Name() const { if(get_attribute_value(1).isNull()) { return std::nullopt; } std::string v = get_attribute_value(1); return v; } void Ifc4x3_tc1::IfcShapeAspect::setName(const std::optional< std::string >& v) { if (v) {set_attribute_value(1, *v);} else {unset_attribute_value(1);} } std::optional< std::string > Ifc4x3_tc1::IfcShapeAspect::Description() const { if(get_attribute_value(2).isNull()) { return std::nullopt; } std::string v = get_attribute_value(2); return v; } void Ifc4x3_tc1::IfcShapeAspect::setDescription(const std::optional< std::string >& v) { if (v) {set_attribute_value(2, *v);} else {unset_attribute_value(2);} } boost::logic::tribool Ifc4x3_tc1::IfcShapeAspect::ProductDefinitional() const { boost::logic::tribool v = get_attribute_value(3); return v; } void Ifc4x3_tc1::IfcShapeAspect::setProductDefinitional(const boost::logic::tribool& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } -::Ifc4x3_tc1::IfcProductRepresentationSelect Ifc4x3_tc1::IfcShapeAspect::PartOfProductDefinitionShape() const { if(get_attribute_value(4).isNull()) { return ::Ifc4x3_tc1::IfcProductRepresentationSelect{}; } return ((express::Base)(get_attribute_value(4))).as<::Ifc4x3_tc1::IfcProductRepresentationSelect>(); } +::Ifc4x3_tc1::IfcProductRepresentationSelect Ifc4x3_tc1::IfcShapeAspect::PartOfProductDefinitionShape() const { if(get_attribute_value(4).isNull()) { return ::Ifc4x3_tc1::IfcProductRepresentationSelect{}; } return ((express::base)(get_attribute_value(4))).as<::Ifc4x3_tc1::IfcProductRepresentationSelect>(); } void Ifc4x3_tc1::IfcShapeAspect::setPartOfProductDefinitionShape(const ::Ifc4x3_tc1::IfcProductRepresentationSelect& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } std::vector<::Ifc4x3_tc1::IfcExternalReferenceRelationship> Ifc4x3_tc1::IfcShapeAspect::HasExternalReferences() const { return cast_vector(file()->get_inverse(data()->id(), IFC4X3_TC1_types[427], 3)); } const ifcopenshell::entity& Ifc4x3_tc1::IfcShapeAspect::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[1003]); } -Ifc4x3_tc1::IfcShapeAspect Ifc4x3_tc1::IfcShapeAspect::initialize(std::vector< ::Ifc4x3_tc1::IfcShapeModel > v1_ShapeRepresentations, std::optional< std::string > v2_Name, std::optional< std::string > v3_Description, boost::logic::tribool v4_ProductDefinitional, ::Ifc4x3_tc1::IfcProductRepresentationSelect v5_PartOfProductDefinitionShape) { set_attribute_value(0, cast_vector(v1_ShapeRepresentations)); if (v2_Name) {set_attribute_value(1, (*v2_Name)); } if (v3_Description) {set_attribute_value(2, (*v3_Description)); }set_attribute_value(3, (v4_ProductDefinitional));set_attribute_value(4, (v5_PartOfProductDefinitionShape));; return *this; } +Ifc4x3_tc1::IfcShapeAspect Ifc4x3_tc1::IfcShapeAspect::initialize(std::vector< ::Ifc4x3_tc1::IfcShapeModel > v1_ShapeRepresentations, std::optional< std::string > v2_Name, std::optional< std::string > v3_Description, boost::logic::tribool v4_ProductDefinitional, ::Ifc4x3_tc1::IfcProductRepresentationSelect v5_PartOfProductDefinitionShape) { set_attribute_value(0, cast_vector(v1_ShapeRepresentations)); if (v2_Name) {set_attribute_value(1, (*v2_Name)); } if (v3_Description) {set_attribute_value(2, (*v3_Description)); }set_attribute_value(3, (v4_ProductDefinitional));set_attribute_value(4, (v5_PartOfProductDefinitionShape));; return *this; } // Function implementations for IfcShapeModel std::vector<::Ifc4x3_tc1::IfcShapeAspect> Ifc4x3_tc1::IfcShapeModel::OfShapeAspect() const { return cast_vector(file()->get_inverse(data()->id(), IFC4X3_TC1_types[1003], 0)); } const ifcopenshell::entity& Ifc4x3_tc1::IfcShapeModel::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[1004]); } -Ifc4x3_tc1::IfcShapeModel Ifc4x3_tc1::IfcShapeModel::initialize(::Ifc4x3_tc1::IfcRepresentationContext v1_ContextOfItems, std::optional< std::string > v2_RepresentationIdentifier, std::optional< std::string > v3_RepresentationType, std::vector< ::Ifc4x3_tc1::IfcRepresentationItem > v4_Items) { set_attribute_value(0, (v1_ContextOfItems)); if (v2_RepresentationIdentifier) {set_attribute_value(1, (*v2_RepresentationIdentifier)); } if (v3_RepresentationType) {set_attribute_value(2, (*v3_RepresentationType)); }set_attribute_value(3, cast_vector(v4_Items));; return *this; } +Ifc4x3_tc1::IfcShapeModel Ifc4x3_tc1::IfcShapeModel::initialize(::Ifc4x3_tc1::IfcRepresentationContext v1_ContextOfItems, std::optional< std::string > v2_RepresentationIdentifier, std::optional< std::string > v3_RepresentationType, std::vector< ::Ifc4x3_tc1::IfcRepresentationItem > v4_Items) { set_attribute_value(0, (v1_ContextOfItems)); if (v2_RepresentationIdentifier) {set_attribute_value(1, (*v2_RepresentationIdentifier)); } if (v3_RepresentationType) {set_attribute_value(2, (*v3_RepresentationType)); }set_attribute_value(3, cast_vector(v4_Items));; return *this; } // Function implementations for IfcShapeRepresentation const ifcopenshell::entity& Ifc4x3_tc1::IfcShapeRepresentation::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[1005]); } -Ifc4x3_tc1::IfcShapeRepresentation Ifc4x3_tc1::IfcShapeRepresentation::initialize(::Ifc4x3_tc1::IfcRepresentationContext v1_ContextOfItems, std::optional< std::string > v2_RepresentationIdentifier, std::optional< std::string > v3_RepresentationType, std::vector< ::Ifc4x3_tc1::IfcRepresentationItem > v4_Items) { set_attribute_value(0, (v1_ContextOfItems)); if (v2_RepresentationIdentifier) {set_attribute_value(1, (*v2_RepresentationIdentifier)); } if (v3_RepresentationType) {set_attribute_value(2, (*v3_RepresentationType)); }set_attribute_value(3, cast_vector(v4_Items));; return *this; } +Ifc4x3_tc1::IfcShapeRepresentation Ifc4x3_tc1::IfcShapeRepresentation::initialize(::Ifc4x3_tc1::IfcRepresentationContext v1_ContextOfItems, std::optional< std::string > v2_RepresentationIdentifier, std::optional< std::string > v3_RepresentationType, std::vector< ::Ifc4x3_tc1::IfcRepresentationItem > v4_Items) { set_attribute_value(0, (v1_ContextOfItems)); if (v2_RepresentationIdentifier) {set_attribute_value(1, (*v2_RepresentationIdentifier)); } if (v3_RepresentationType) {set_attribute_value(2, (*v3_RepresentationType)); }set_attribute_value(3, cast_vector(v4_Items));; return *this; } // Function implementations for IfcShellBasedSurfaceModel -std::vector< ::Ifc4x3_tc1::IfcShell > Ifc4x3_tc1::IfcShellBasedSurfaceModel::SbsmBoundary() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3_tc1::IfcShell>(es); } -void Ifc4x3_tc1::IfcShellBasedSurfaceModel::setSbsmBoundary(const std::vector< ::Ifc4x3_tc1::IfcShell >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } +std::vector< ::Ifc4x3_tc1::IfcShell > Ifc4x3_tc1::IfcShellBasedSurfaceModel::SbsmBoundary() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3_tc1::IfcShell>(es); } +void Ifc4x3_tc1::IfcShellBasedSurfaceModel::setSbsmBoundary(const std::vector< ::Ifc4x3_tc1::IfcShell >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } const ifcopenshell::entity& Ifc4x3_tc1::IfcShellBasedSurfaceModel::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[1008]); } -Ifc4x3_tc1::IfcShellBasedSurfaceModel Ifc4x3_tc1::IfcShellBasedSurfaceModel::initialize(std::vector< ::Ifc4x3_tc1::IfcShell > v1_SbsmBoundary) { set_attribute_value(0, cast_vector(v1_SbsmBoundary));; return *this; } +Ifc4x3_tc1::IfcShellBasedSurfaceModel Ifc4x3_tc1::IfcShellBasedSurfaceModel::initialize(std::vector< ::Ifc4x3_tc1::IfcShell > v1_SbsmBoundary) { set_attribute_value(0, cast_vector(v1_SbsmBoundary));; return *this; } // Function implementations for IfcSign std::optional< ::Ifc4x3_tc1::IfcSignTypeEnum::Value > Ifc4x3_tc1::IfcSign::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_tc1::IfcSignTypeEnum::FromString(get_attribute_value(8)); } @@ -14564,7 +14564,7 @@ void Ifc4x3_tc1::IfcSignType::setPredefinedType(const ::Ifc4x3_tc1::IfcSignTypeE const ifcopenshell::entity& Ifc4x3_tc1::IfcSignType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[1013]); } -Ifc4x3_tc1::IfcSignType Ifc4x3_tc1::IfcSignType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcSignTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcSignTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_tc1::IfcSignType Ifc4x3_tc1::IfcSignType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcSignTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcSignTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcSignal std::optional< ::Ifc4x3_tc1::IfcSignalTypeEnum::Value > Ifc4x3_tc1::IfcSignal::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_tc1::IfcSignalTypeEnum::FromString(get_attribute_value(8)); } @@ -14580,7 +14580,7 @@ void Ifc4x3_tc1::IfcSignalType::setPredefinedType(const ::Ifc4x3_tc1::IfcSignalT const ifcopenshell::entity& Ifc4x3_tc1::IfcSignalType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[1011]); } -Ifc4x3_tc1::IfcSignalType Ifc4x3_tc1::IfcSignalType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcSignalTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcSignalTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_tc1::IfcSignalType Ifc4x3_tc1::IfcSignalType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcSignalTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcSignalTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcSimpleProperty @@ -14595,11 +14595,11 @@ std::optional< std::string > Ifc4x3_tc1::IfcSimplePropertyTemplate::PrimaryMeasu void Ifc4x3_tc1::IfcSimplePropertyTemplate::setPrimaryMeasureType(const std::optional< std::string >& v) { if (v) {set_attribute_value(5, *v);} else {unset_attribute_value(5);} } std::optional< std::string > Ifc4x3_tc1::IfcSimplePropertyTemplate::SecondaryMeasureType() const { if(get_attribute_value(6).isNull()) { return std::nullopt; } std::string v = get_attribute_value(6); return v; } void Ifc4x3_tc1::IfcSimplePropertyTemplate::setSecondaryMeasureType(const std::optional< std::string >& v) { if (v) {set_attribute_value(6, *v);} else {unset_attribute_value(6);} } -::Ifc4x3_tc1::IfcPropertyEnumeration Ifc4x3_tc1::IfcSimplePropertyTemplate::Enumerators() const { if(get_attribute_value(7).isNull()) { return ::Ifc4x3_tc1::IfcPropertyEnumeration{}; } return ((express::Base)(get_attribute_value(7))).as<::Ifc4x3_tc1::IfcPropertyEnumeration>(); } +::Ifc4x3_tc1::IfcPropertyEnumeration Ifc4x3_tc1::IfcSimplePropertyTemplate::Enumerators() const { if(get_attribute_value(7).isNull()) { return ::Ifc4x3_tc1::IfcPropertyEnumeration{}; } return ((express::base)(get_attribute_value(7))).as<::Ifc4x3_tc1::IfcPropertyEnumeration>(); } void Ifc4x3_tc1::IfcSimplePropertyTemplate::setEnumerators(const ::Ifc4x3_tc1::IfcPropertyEnumeration& v) { set_attribute_value(7, v);if constexpr (false)unset_attribute_value(7); } -::Ifc4x3_tc1::IfcUnit Ifc4x3_tc1::IfcSimplePropertyTemplate::PrimaryUnit() const { if(get_attribute_value(8).isNull()) { return ::Ifc4x3_tc1::IfcUnit{}; } return ((express::Base)(get_attribute_value(8))).as<::Ifc4x3_tc1::IfcUnit>(); } +::Ifc4x3_tc1::IfcUnit Ifc4x3_tc1::IfcSimplePropertyTemplate::PrimaryUnit() const { if(get_attribute_value(8).isNull()) { return ::Ifc4x3_tc1::IfcUnit{}; } return ((express::base)(get_attribute_value(8))).as<::Ifc4x3_tc1::IfcUnit>(); } void Ifc4x3_tc1::IfcSimplePropertyTemplate::setPrimaryUnit(const ::Ifc4x3_tc1::IfcUnit& v) { set_attribute_value(8, v);if constexpr (false)unset_attribute_value(8); } -::Ifc4x3_tc1::IfcUnit Ifc4x3_tc1::IfcSimplePropertyTemplate::SecondaryUnit() const { if(get_attribute_value(9).isNull()) { return ::Ifc4x3_tc1::IfcUnit{}; } return ((express::Base)(get_attribute_value(9))).as<::Ifc4x3_tc1::IfcUnit>(); } +::Ifc4x3_tc1::IfcUnit Ifc4x3_tc1::IfcSimplePropertyTemplate::SecondaryUnit() const { if(get_attribute_value(9).isNull()) { return ::Ifc4x3_tc1::IfcUnit{}; } return ((express::base)(get_attribute_value(9))).as<::Ifc4x3_tc1::IfcUnit>(); } void Ifc4x3_tc1::IfcSimplePropertyTemplate::setSecondaryUnit(const ::Ifc4x3_tc1::IfcUnit& v) { set_attribute_value(9, v);if constexpr (false)unset_attribute_value(9); } std::optional< std::string > Ifc4x3_tc1::IfcSimplePropertyTemplate::Expression() const { if(get_attribute_value(10).isNull()) { return std::nullopt; } std::string v = get_attribute_value(10); return v; } void Ifc4x3_tc1::IfcSimplePropertyTemplate::setExpression(const std::optional< std::string >& v) { if (v) {set_attribute_value(10, *v);} else {unset_attribute_value(10);} } @@ -14631,7 +14631,7 @@ std::optional< double > Ifc4x3_tc1::IfcSite::RefElevation() const { if(get_attri void Ifc4x3_tc1::IfcSite::setRefElevation(const std::optional< double >& v) { if (v) {set_attribute_value(11, *v);} else {unset_attribute_value(11);} } std::optional< std::string > Ifc4x3_tc1::IfcSite::LandTitleNumber() const { if(get_attribute_value(12).isNull()) { return std::nullopt; } std::string v = get_attribute_value(12); return v; } void Ifc4x3_tc1::IfcSite::setLandTitleNumber(const std::optional< std::string >& v) { if (v) {set_attribute_value(12, *v);} else {unset_attribute_value(12);} } -::Ifc4x3_tc1::IfcPostalAddress Ifc4x3_tc1::IfcSite::SiteAddress() const { if(get_attribute_value(13).isNull()) { return ::Ifc4x3_tc1::IfcPostalAddress{}; } return ((express::Base)(get_attribute_value(13))).as<::Ifc4x3_tc1::IfcPostalAddress>(); } +::Ifc4x3_tc1::IfcPostalAddress Ifc4x3_tc1::IfcSite::SiteAddress() const { if(get_attribute_value(13).isNull()) { return ::Ifc4x3_tc1::IfcPostalAddress{}; } return ((express::base)(get_attribute_value(13))).as<::Ifc4x3_tc1::IfcPostalAddress>(); } void Ifc4x3_tc1::IfcSite::setSiteAddress(const ::Ifc4x3_tc1::IfcPostalAddress& v) { set_attribute_value(13, v);if constexpr (false)unset_attribute_value(13); } @@ -14652,7 +14652,7 @@ void Ifc4x3_tc1::IfcSlabType::setPredefinedType(const ::Ifc4x3_tc1::IfcSlabTypeE const ifcopenshell::entity& Ifc4x3_tc1::IfcSlabType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[1026]); } -Ifc4x3_tc1::IfcSlabType Ifc4x3_tc1::IfcSlabType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcSlabTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcSlabTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_tc1::IfcSlabType Ifc4x3_tc1::IfcSlabType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcSlabTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcSlabTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcSlippageConnectionCondition std::optional< double > Ifc4x3_tc1::IfcSlippageConnectionCondition::SlippageX() const { if(get_attribute_value(1).isNull()) { return std::nullopt; } double v = get_attribute_value(1); return v; } @@ -14680,7 +14680,7 @@ void Ifc4x3_tc1::IfcSolarDeviceType::setPredefinedType(const ::Ifc4x3_tc1::IfcSo const ifcopenshell::entity& Ifc4x3_tc1::IfcSolarDeviceType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[1030]); } -Ifc4x3_tc1::IfcSolarDeviceType Ifc4x3_tc1::IfcSolarDeviceType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcSolarDeviceTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcSolarDeviceTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_tc1::IfcSolarDeviceType Ifc4x3_tc1::IfcSolarDeviceType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcSolarDeviceTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcSolarDeviceTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcSolidModel @@ -14714,7 +14714,7 @@ void Ifc4x3_tc1::IfcSpaceHeaterType::setPredefinedType(const ::Ifc4x3_tc1::IfcSp const ifcopenshell::entity& Ifc4x3_tc1::IfcSpaceHeaterType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[1042]); } -Ifc4x3_tc1::IfcSpaceHeaterType Ifc4x3_tc1::IfcSpaceHeaterType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcSpaceHeaterTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcSpaceHeaterTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_tc1::IfcSpaceHeaterType Ifc4x3_tc1::IfcSpaceHeaterType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcSpaceHeaterTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcSpaceHeaterTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcSpaceType ::Ifc4x3_tc1::IfcSpaceTypeEnum::Value Ifc4x3_tc1::IfcSpaceType::PredefinedType() const { return ::Ifc4x3_tc1::IfcSpaceTypeEnum::FromString(get_attribute_value(9)); } @@ -14724,7 +14724,7 @@ void Ifc4x3_tc1::IfcSpaceType::setLongName(const std::optional< std::string >& v const ifcopenshell::entity& Ifc4x3_tc1::IfcSpaceType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[1044]); } -Ifc4x3_tc1::IfcSpaceType Ifc4x3_tc1::IfcSpaceType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcSpaceTypeEnum::Value v10_PredefinedType, std::optional< std::string > v11_LongName) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcSpaceTypeEnum::Class(),(size_t)v10_PredefinedType))); if (v11_LongName) {set_attribute_value(10, (*v11_LongName)); }; return *this; } +Ifc4x3_tc1::IfcSpaceType Ifc4x3_tc1::IfcSpaceType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcSpaceTypeEnum::Value v10_PredefinedType, std::optional< std::string > v11_LongName) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcSpaceTypeEnum::Class(),(size_t)v10_PredefinedType))); if (v11_LongName) {set_attribute_value(10, (*v11_LongName)); }; return *this; } // Function implementations for IfcSpatialElement std::optional< std::string > Ifc4x3_tc1::IfcSpatialElement::LongName() const { if(get_attribute_value(7).isNull()) { return std::nullopt; } std::string v = get_attribute_value(7); return v; } @@ -14745,7 +14745,7 @@ void Ifc4x3_tc1::IfcSpatialElementType::setElementType(const std::optional< std: const ifcopenshell::entity& Ifc4x3_tc1::IfcSpatialElementType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[1047]); } -Ifc4x3_tc1::IfcSpatialElementType Ifc4x3_tc1::IfcSpatialElementType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } +Ifc4x3_tc1::IfcSpatialElementType Ifc4x3_tc1::IfcSpatialElementType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } // Function implementations for IfcSpatialStructureElement std::optional< ::Ifc4x3_tc1::IfcElementCompositionEnum::Value > Ifc4x3_tc1::IfcSpatialStructureElement::CompositionType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_tc1::IfcElementCompositionEnum::FromString(get_attribute_value(8)); } @@ -14759,7 +14759,7 @@ Ifc4x3_tc1::IfcSpatialStructureElement Ifc4x3_tc1::IfcSpatialStructureElement::i const ifcopenshell::entity& Ifc4x3_tc1::IfcSpatialStructureElementType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[1050]); } -Ifc4x3_tc1::IfcSpatialStructureElementType Ifc4x3_tc1::IfcSpatialStructureElementType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } +Ifc4x3_tc1::IfcSpatialStructureElementType Ifc4x3_tc1::IfcSpatialStructureElementType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } // Function implementations for IfcSpatialZone std::optional< ::Ifc4x3_tc1::IfcSpatialZoneTypeEnum::Value > Ifc4x3_tc1::IfcSpatialZone::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_tc1::IfcSpatialZoneTypeEnum::FromString(get_attribute_value(8)); } @@ -14777,7 +14777,7 @@ void Ifc4x3_tc1::IfcSpatialZoneType::setLongName(const std::optional< std::strin const ifcopenshell::entity& Ifc4x3_tc1::IfcSpatialZoneType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[1052]); } -Ifc4x3_tc1::IfcSpatialZoneType Ifc4x3_tc1::IfcSpatialZoneType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcSpatialZoneTypeEnum::Value v10_PredefinedType, std::optional< std::string > v11_LongName) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcSpatialZoneTypeEnum::Class(),(size_t)v10_PredefinedType))); if (v11_LongName) {set_attribute_value(10, (*v11_LongName)); }; return *this; } +Ifc4x3_tc1::IfcSpatialZoneType Ifc4x3_tc1::IfcSpatialZoneType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcSpatialZoneTypeEnum::Value v10_PredefinedType, std::optional< std::string > v11_LongName) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcSpatialZoneTypeEnum::Class(),(size_t)v10_PredefinedType))); if (v11_LongName) {set_attribute_value(10, (*v11_LongName)); }; return *this; } // Function implementations for IfcSphere double Ifc4x3_tc1::IfcSphere::Radius() const { double v = get_attribute_value(1); return v; } @@ -14796,7 +14796,7 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcSphericalSurface::Class() { return *( Ifc4x3_tc1::IfcSphericalSurface Ifc4x3_tc1::IfcSphericalSurface::initialize(::Ifc4x3_tc1::IfcAxis2Placement3D v1_Position, double v2_Radius) { set_attribute_value(0, (v1_Position));set_attribute_value(1, (v2_Radius));; return *this; } // Function implementations for IfcSpiral -::Ifc4x3_tc1::IfcAxis2Placement Ifc4x3_tc1::IfcSpiral::Position() const { if(get_attribute_value(0).isNull()) { return ::Ifc4x3_tc1::IfcAxis2Placement{}; } return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcAxis2Placement>(); } +::Ifc4x3_tc1::IfcAxis2Placement Ifc4x3_tc1::IfcSpiral::Position() const { if(get_attribute_value(0).isNull()) { return ::Ifc4x3_tc1::IfcAxis2Placement{}; } return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcAxis2Placement>(); } void Ifc4x3_tc1::IfcSpiral::setPosition(const ::Ifc4x3_tc1::IfcAxis2Placement& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } @@ -14817,7 +14817,7 @@ void Ifc4x3_tc1::IfcStackTerminalType::setPredefinedType(const ::Ifc4x3_tc1::Ifc const ifcopenshell::entity& Ifc4x3_tc1::IfcStackTerminalType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[1062]); } -Ifc4x3_tc1::IfcStackTerminalType Ifc4x3_tc1::IfcStackTerminalType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcStackTerminalTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcStackTerminalTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_tc1::IfcStackTerminalType Ifc4x3_tc1::IfcStackTerminalType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcStackTerminalTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcStackTerminalTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcStair std::optional< ::Ifc4x3_tc1::IfcStairTypeEnum::Value > Ifc4x3_tc1::IfcStair::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_tc1::IfcStairTypeEnum::FromString(get_attribute_value(8)); } @@ -14849,7 +14849,7 @@ void Ifc4x3_tc1::IfcStairFlightType::setPredefinedType(const ::Ifc4x3_tc1::IfcSt const ifcopenshell::entity& Ifc4x3_tc1::IfcStairFlightType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[1066]); } -Ifc4x3_tc1::IfcStairFlightType Ifc4x3_tc1::IfcStairFlightType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcStairFlightTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcStairFlightTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_tc1::IfcStairFlightType Ifc4x3_tc1::IfcStairFlightType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcStairFlightTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcStairFlightTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcStairType ::Ifc4x3_tc1::IfcStairTypeEnum::Value Ifc4x3_tc1::IfcStairType::PredefinedType() const { return ::Ifc4x3_tc1::IfcStairTypeEnum::FromString(get_attribute_value(9)); } @@ -14857,7 +14857,7 @@ void Ifc4x3_tc1::IfcStairType::setPredefinedType(const ::Ifc4x3_tc1::IfcStairTyp const ifcopenshell::entity& Ifc4x3_tc1::IfcStairType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[1068]); } -Ifc4x3_tc1::IfcStairType Ifc4x3_tc1::IfcStairType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcStairTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcStairTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_tc1::IfcStairType Ifc4x3_tc1::IfcStairType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcStairTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcStairTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcStructuralAction std::optional< bool > Ifc4x3_tc1::IfcStructuralAction::DestabilizingLoad() const { if(get_attribute_value(9).isNull()) { return std::nullopt; } bool v = get_attribute_value(9); return v; } @@ -14868,7 +14868,7 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcStructuralAction::Class() { return *( Ifc4x3_tc1::IfcStructuralAction Ifc4x3_tc1::IfcStructuralAction::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, ::Ifc4x3_tc1::IfcObjectPlacement v6_ObjectPlacement, ::Ifc4x3_tc1::IfcProductRepresentation v7_Representation, ::Ifc4x3_tc1::IfcStructuralLoad v8_AppliedLoad, ::Ifc4x3_tc1::IfcGlobalOrLocalEnum::Value v9_GlobalOrLocal, std::optional< bool > v10_DestabilizingLoad) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); }set_attribute_value(5, (v6_ObjectPlacement));set_attribute_value(6, (v7_Representation));set_attribute_value(7, (v8_AppliedLoad));set_attribute_value(8, (enumeration_reference(&::Ifc4x3_tc1::IfcGlobalOrLocalEnum::Class(),(size_t)v9_GlobalOrLocal))); if (v10_DestabilizingLoad) {set_attribute_value(9, (*v10_DestabilizingLoad)); }; return *this; } // Function implementations for IfcStructuralActivity -::Ifc4x3_tc1::IfcStructuralLoad Ifc4x3_tc1::IfcStructuralActivity::AppliedLoad() const { return ((express::Base)(get_attribute_value(7))).as<::Ifc4x3_tc1::IfcStructuralLoad>(); } +::Ifc4x3_tc1::IfcStructuralLoad Ifc4x3_tc1::IfcStructuralActivity::AppliedLoad() const { return ((express::base)(get_attribute_value(7))).as<::Ifc4x3_tc1::IfcStructuralLoad>(); } void Ifc4x3_tc1::IfcStructuralActivity::setAppliedLoad(const ::Ifc4x3_tc1::IfcStructuralLoad& v) { set_attribute_value(7, v);if constexpr (false)unset_attribute_value(7); } ::Ifc4x3_tc1::IfcGlobalOrLocalEnum::Value Ifc4x3_tc1::IfcStructuralActivity::GlobalOrLocal() const { return ::Ifc4x3_tc1::IfcGlobalOrLocalEnum::FromString(get_attribute_value(8)); } void Ifc4x3_tc1::IfcStructuralActivity::setGlobalOrLocal(const ::Ifc4x3_tc1::IfcGlobalOrLocalEnum::Value& v) { set_attribute_value(8, enumeration_reference(&::Ifc4x3_tc1::IfcGlobalOrLocalEnum::Class(), (size_t) v));if constexpr (false)unset_attribute_value(8); } @@ -14881,21 +14881,21 @@ Ifc4x3_tc1::IfcStructuralActivity Ifc4x3_tc1::IfcStructuralActivity::initialize( // Function implementations for IfcStructuralAnalysisModel ::Ifc4x3_tc1::IfcAnalysisModelTypeEnum::Value Ifc4x3_tc1::IfcStructuralAnalysisModel::PredefinedType() const { return ::Ifc4x3_tc1::IfcAnalysisModelTypeEnum::FromString(get_attribute_value(5)); } void Ifc4x3_tc1::IfcStructuralAnalysisModel::setPredefinedType(const ::Ifc4x3_tc1::IfcAnalysisModelTypeEnum::Value& v) { set_attribute_value(5, enumeration_reference(&::Ifc4x3_tc1::IfcAnalysisModelTypeEnum::Class(), (size_t) v));if constexpr (false)unset_attribute_value(5); } -::Ifc4x3_tc1::IfcAxis2Placement3D Ifc4x3_tc1::IfcStructuralAnalysisModel::OrientationOf2DPlane() const { if(get_attribute_value(6).isNull()) { return ::Ifc4x3_tc1::IfcAxis2Placement3D{}; } return ((express::Base)(get_attribute_value(6))).as<::Ifc4x3_tc1::IfcAxis2Placement3D>(); } +::Ifc4x3_tc1::IfcAxis2Placement3D Ifc4x3_tc1::IfcStructuralAnalysisModel::OrientationOf2DPlane() const { if(get_attribute_value(6).isNull()) { return ::Ifc4x3_tc1::IfcAxis2Placement3D{}; } return ((express::base)(get_attribute_value(6))).as<::Ifc4x3_tc1::IfcAxis2Placement3D>(); } void Ifc4x3_tc1::IfcStructuralAnalysisModel::setOrientationOf2DPlane(const ::Ifc4x3_tc1::IfcAxis2Placement3D& v) { set_attribute_value(6, v);if constexpr (false)unset_attribute_value(6); } -std::optional< std::vector< ::Ifc4x3_tc1::IfcStructuralLoadGroup > > Ifc4x3_tc1::IfcStructuralAnalysisModel::LoadedBy() const { if(get_attribute_value(7).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(7); return cast_vector<::Ifc4x3_tc1::IfcStructuralLoadGroup>(es); } -void Ifc4x3_tc1::IfcStructuralAnalysisModel::setLoadedBy(const std::optional< std::vector< ::Ifc4x3_tc1::IfcStructuralLoadGroup > >& v) { if (v) {set_attribute_value(7, cast_vector(*v));} else {unset_attribute_value(7);} } -std::optional< std::vector< ::Ifc4x3_tc1::IfcStructuralResultGroup > > Ifc4x3_tc1::IfcStructuralAnalysisModel::HasResults() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(8); return cast_vector<::Ifc4x3_tc1::IfcStructuralResultGroup>(es); } -void Ifc4x3_tc1::IfcStructuralAnalysisModel::setHasResults(const std::optional< std::vector< ::Ifc4x3_tc1::IfcStructuralResultGroup > >& v) { if (v) {set_attribute_value(8, cast_vector(*v));} else {unset_attribute_value(8);} } -::Ifc4x3_tc1::IfcObjectPlacement Ifc4x3_tc1::IfcStructuralAnalysisModel::SharedPlacement() const { if(get_attribute_value(9).isNull()) { return ::Ifc4x3_tc1::IfcObjectPlacement{}; } return ((express::Base)(get_attribute_value(9))).as<::Ifc4x3_tc1::IfcObjectPlacement>(); } +std::optional< std::vector< ::Ifc4x3_tc1::IfcStructuralLoadGroup > > Ifc4x3_tc1::IfcStructuralAnalysisModel::LoadedBy() const { if(get_attribute_value(7).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(7); return cast_vector<::Ifc4x3_tc1::IfcStructuralLoadGroup>(es); } +void Ifc4x3_tc1::IfcStructuralAnalysisModel::setLoadedBy(const std::optional< std::vector< ::Ifc4x3_tc1::IfcStructuralLoadGroup > >& v) { if (v) {set_attribute_value(7, cast_vector(*v));} else {unset_attribute_value(7);} } +std::optional< std::vector< ::Ifc4x3_tc1::IfcStructuralResultGroup > > Ifc4x3_tc1::IfcStructuralAnalysisModel::HasResults() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(8); return cast_vector<::Ifc4x3_tc1::IfcStructuralResultGroup>(es); } +void Ifc4x3_tc1::IfcStructuralAnalysisModel::setHasResults(const std::optional< std::vector< ::Ifc4x3_tc1::IfcStructuralResultGroup > >& v) { if (v) {set_attribute_value(8, cast_vector(*v));} else {unset_attribute_value(8);} } +::Ifc4x3_tc1::IfcObjectPlacement Ifc4x3_tc1::IfcStructuralAnalysisModel::SharedPlacement() const { if(get_attribute_value(9).isNull()) { return ::Ifc4x3_tc1::IfcObjectPlacement{}; } return ((express::base)(get_attribute_value(9))).as<::Ifc4x3_tc1::IfcObjectPlacement>(); } void Ifc4x3_tc1::IfcStructuralAnalysisModel::setSharedPlacement(const ::Ifc4x3_tc1::IfcObjectPlacement& v) { set_attribute_value(9, v);if constexpr (false)unset_attribute_value(9); } const ifcopenshell::entity& Ifc4x3_tc1::IfcStructuralAnalysisModel::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[1075]); } -Ifc4x3_tc1::IfcStructuralAnalysisModel Ifc4x3_tc1::IfcStructuralAnalysisModel::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, ::Ifc4x3_tc1::IfcAnalysisModelTypeEnum::Value v6_PredefinedType, ::Ifc4x3_tc1::IfcAxis2Placement3D v7_OrientationOf2DPlane, std::optional< std::vector< ::Ifc4x3_tc1::IfcStructuralLoadGroup > > v8_LoadedBy, std::optional< std::vector< ::Ifc4x3_tc1::IfcStructuralResultGroup > > v9_HasResults, ::Ifc4x3_tc1::IfcObjectPlacement v10_SharedPlacement) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); }set_attribute_value(5, (enumeration_reference(&::Ifc4x3_tc1::IfcAnalysisModelTypeEnum::Class(),(size_t)v6_PredefinedType)));set_attribute_value(6, (v7_OrientationOf2DPlane)); if (v8_LoadedBy) {set_attribute_value(7, cast_vector(*v8_LoadedBy)); } if (v9_HasResults) {set_attribute_value(8, cast_vector(*v9_HasResults)); }set_attribute_value(9, (v10_SharedPlacement));; return *this; } +Ifc4x3_tc1::IfcStructuralAnalysisModel Ifc4x3_tc1::IfcStructuralAnalysisModel::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, ::Ifc4x3_tc1::IfcAnalysisModelTypeEnum::Value v6_PredefinedType, ::Ifc4x3_tc1::IfcAxis2Placement3D v7_OrientationOf2DPlane, std::optional< std::vector< ::Ifc4x3_tc1::IfcStructuralLoadGroup > > v8_LoadedBy, std::optional< std::vector< ::Ifc4x3_tc1::IfcStructuralResultGroup > > v9_HasResults, ::Ifc4x3_tc1::IfcObjectPlacement v10_SharedPlacement) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); }set_attribute_value(5, (enumeration_reference(&::Ifc4x3_tc1::IfcAnalysisModelTypeEnum::Class(),(size_t)v6_PredefinedType)));set_attribute_value(6, (v7_OrientationOf2DPlane)); if (v8_LoadedBy) {set_attribute_value(7, cast_vector(*v8_LoadedBy)); } if (v9_HasResults) {set_attribute_value(8, cast_vector(*v9_HasResults)); }set_attribute_value(9, (v10_SharedPlacement));; return *this; } // Function implementations for IfcStructuralConnection -::Ifc4x3_tc1::IfcBoundaryCondition Ifc4x3_tc1::IfcStructuralConnection::AppliedCondition() const { if(get_attribute_value(7).isNull()) { return ::Ifc4x3_tc1::IfcBoundaryCondition{}; } return ((express::Base)(get_attribute_value(7))).as<::Ifc4x3_tc1::IfcBoundaryCondition>(); } +::Ifc4x3_tc1::IfcBoundaryCondition Ifc4x3_tc1::IfcStructuralConnection::AppliedCondition() const { if(get_attribute_value(7).isNull()) { return ::Ifc4x3_tc1::IfcBoundaryCondition{}; } return ((express::base)(get_attribute_value(7))).as<::Ifc4x3_tc1::IfcBoundaryCondition>(); } void Ifc4x3_tc1::IfcStructuralConnection::setAppliedCondition(const ::Ifc4x3_tc1::IfcBoundaryCondition& v) { set_attribute_value(7, v);if constexpr (false)unset_attribute_value(7); } std::vector<::Ifc4x3_tc1::IfcRelConnectsStructuralMember> Ifc4x3_tc1::IfcStructuralConnection::ConnectsStructuralMembers() const { return cast_vector(file()->get_inverse(data()->id(), IFC4X3_TC1_types[921], 5)); } @@ -14922,7 +14922,7 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcStructuralCurveAction::Class() { retu Ifc4x3_tc1::IfcStructuralCurveAction Ifc4x3_tc1::IfcStructuralCurveAction::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, ::Ifc4x3_tc1::IfcObjectPlacement v6_ObjectPlacement, ::Ifc4x3_tc1::IfcProductRepresentation v7_Representation, ::Ifc4x3_tc1::IfcStructuralLoad v8_AppliedLoad, ::Ifc4x3_tc1::IfcGlobalOrLocalEnum::Value v9_GlobalOrLocal, std::optional< bool > v10_DestabilizingLoad, std::optional< ::Ifc4x3_tc1::IfcProjectedOrTrueLengthEnum::Value > v11_ProjectedOrTrue, ::Ifc4x3_tc1::IfcStructuralCurveActivityTypeEnum::Value v12_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); }set_attribute_value(5, (v6_ObjectPlacement));set_attribute_value(6, (v7_Representation));set_attribute_value(7, (v8_AppliedLoad));set_attribute_value(8, (enumeration_reference(&::Ifc4x3_tc1::IfcGlobalOrLocalEnum::Class(),(size_t)v9_GlobalOrLocal))); if (v10_DestabilizingLoad) {set_attribute_value(9, (*v10_DestabilizingLoad)); } if (v11_ProjectedOrTrue) {set_attribute_value(10, (enumeration_reference(&::Ifc4x3_tc1::IfcProjectedOrTrueLengthEnum::Class(),(size_t)*v11_ProjectedOrTrue))); }set_attribute_value(11, (enumeration_reference(&::Ifc4x3_tc1::IfcStructuralCurveActivityTypeEnum::Class(),(size_t)v12_PredefinedType)));; return *this; } // Function implementations for IfcStructuralCurveConnection -::Ifc4x3_tc1::IfcDirection Ifc4x3_tc1::IfcStructuralCurveConnection::AxisDirection() const { return ((express::Base)(get_attribute_value(8))).as<::Ifc4x3_tc1::IfcDirection>(); } +::Ifc4x3_tc1::IfcDirection Ifc4x3_tc1::IfcStructuralCurveConnection::AxisDirection() const { return ((express::base)(get_attribute_value(8))).as<::Ifc4x3_tc1::IfcDirection>(); } void Ifc4x3_tc1::IfcStructuralCurveConnection::setAxisDirection(const ::Ifc4x3_tc1::IfcDirection& v) { set_attribute_value(8, v);if constexpr (false)unset_attribute_value(8); } @@ -14932,7 +14932,7 @@ Ifc4x3_tc1::IfcStructuralCurveConnection Ifc4x3_tc1::IfcStructuralCurveConnectio // Function implementations for IfcStructuralCurveMember ::Ifc4x3_tc1::IfcStructuralCurveMemberTypeEnum::Value Ifc4x3_tc1::IfcStructuralCurveMember::PredefinedType() const { return ::Ifc4x3_tc1::IfcStructuralCurveMemberTypeEnum::FromString(get_attribute_value(7)); } void Ifc4x3_tc1::IfcStructuralCurveMember::setPredefinedType(const ::Ifc4x3_tc1::IfcStructuralCurveMemberTypeEnum::Value& v) { set_attribute_value(7, enumeration_reference(&::Ifc4x3_tc1::IfcStructuralCurveMemberTypeEnum::Class(), (size_t) v));if constexpr (false)unset_attribute_value(7); } -::Ifc4x3_tc1::IfcDirection Ifc4x3_tc1::IfcStructuralCurveMember::Axis() const { return ((express::Base)(get_attribute_value(8))).as<::Ifc4x3_tc1::IfcDirection>(); } +::Ifc4x3_tc1::IfcDirection Ifc4x3_tc1::IfcStructuralCurveMember::Axis() const { return ((express::base)(get_attribute_value(8))).as<::Ifc4x3_tc1::IfcDirection>(); } void Ifc4x3_tc1::IfcStructuralCurveMember::setAxis(const ::Ifc4x3_tc1::IfcDirection& v) { set_attribute_value(8, v);if constexpr (false)unset_attribute_value(8); } @@ -14983,14 +14983,14 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcStructuralLoadCase::Class() { return Ifc4x3_tc1::IfcStructuralLoadCase Ifc4x3_tc1::IfcStructuralLoadCase::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, ::Ifc4x3_tc1::IfcLoadGroupTypeEnum::Value v6_PredefinedType, ::Ifc4x3_tc1::IfcActionTypeEnum::Value v7_ActionType, ::Ifc4x3_tc1::IfcActionSourceTypeEnum::Value v8_ActionSource, std::optional< double > v9_Coefficient, std::optional< std::string > v10_Purpose, std::optional< std::vector< double > /*[3:3]*/ > v11_SelfWeightCoefficients) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); }set_attribute_value(5, (enumeration_reference(&::Ifc4x3_tc1::IfcLoadGroupTypeEnum::Class(),(size_t)v6_PredefinedType)));set_attribute_value(6, (enumeration_reference(&::Ifc4x3_tc1::IfcActionTypeEnum::Class(),(size_t)v7_ActionType)));set_attribute_value(7, (enumeration_reference(&::Ifc4x3_tc1::IfcActionSourceTypeEnum::Class(),(size_t)v8_ActionSource))); if (v9_Coefficient) {set_attribute_value(8, (*v9_Coefficient)); } if (v10_Purpose) {set_attribute_value(9, (*v10_Purpose)); } if (v11_SelfWeightCoefficients) {set_attribute_value(10, (*v11_SelfWeightCoefficients)); }; return *this; } // Function implementations for IfcStructuralLoadConfiguration -std::vector< ::Ifc4x3_tc1::IfcStructuralLoadOrResult > Ifc4x3_tc1::IfcStructuralLoadConfiguration::Values() const { std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3_tc1::IfcStructuralLoadOrResult>(es); } -void Ifc4x3_tc1::IfcStructuralLoadConfiguration::setValues(const std::vector< ::Ifc4x3_tc1::IfcStructuralLoadOrResult >& v) { set_attribute_value(1, cast_vector(v));if constexpr (false)unset_attribute_value(1); } +std::vector< ::Ifc4x3_tc1::IfcStructuralLoadOrResult > Ifc4x3_tc1::IfcStructuralLoadConfiguration::Values() const { std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3_tc1::IfcStructuralLoadOrResult>(es); } +void Ifc4x3_tc1::IfcStructuralLoadConfiguration::setValues(const std::vector< ::Ifc4x3_tc1::IfcStructuralLoadOrResult >& v) { set_attribute_value(1, cast_vector(v));if constexpr (false)unset_attribute_value(1); } std::optional< std::vector< std::vector< double > > > Ifc4x3_tc1::IfcStructuralLoadConfiguration::Locations() const { if(get_attribute_value(2).isNull()) { return std::nullopt; } std::vector< std::vector< double > > v = get_attribute_value(2); return v; } void Ifc4x3_tc1::IfcStructuralLoadConfiguration::setLocations(const std::optional< std::vector< std::vector< double > > >& v) { if (v) {set_attribute_value(2, *v);} else {unset_attribute_value(2);} } const ifcopenshell::entity& Ifc4x3_tc1::IfcStructuralLoadConfiguration::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[1089]); } -Ifc4x3_tc1::IfcStructuralLoadConfiguration Ifc4x3_tc1::IfcStructuralLoadConfiguration::initialize(std::optional< std::string > v1_Name, std::vector< ::Ifc4x3_tc1::IfcStructuralLoadOrResult > v2_Values, std::optional< std::vector< std::vector< double > > > v3_Locations) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); }set_attribute_value(1, cast_vector(v2_Values)); if (v3_Locations) {set_attribute_value(2, (*v3_Locations)); }; return *this; } +Ifc4x3_tc1::IfcStructuralLoadConfiguration Ifc4x3_tc1::IfcStructuralLoadConfiguration::initialize(std::optional< std::string > v1_Name, std::vector< ::Ifc4x3_tc1::IfcStructuralLoadOrResult > v2_Values, std::optional< std::vector< std::vector< double > > > v3_Locations) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); }set_attribute_value(1, cast_vector(v2_Values)); if (v3_Locations) {set_attribute_value(2, (*v3_Locations)); }; return *this; } // Function implementations for IfcStructuralLoadGroup ::Ifc4x3_tc1::IfcLoadGroupTypeEnum::Value Ifc4x3_tc1::IfcStructuralLoadGroup::PredefinedType() const { return ::Ifc4x3_tc1::IfcLoadGroupTypeEnum::FromString(get_attribute_value(5)); } @@ -15136,7 +15136,7 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcStructuralPointAction::Class() { retu Ifc4x3_tc1::IfcStructuralPointAction Ifc4x3_tc1::IfcStructuralPointAction::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, ::Ifc4x3_tc1::IfcObjectPlacement v6_ObjectPlacement, ::Ifc4x3_tc1::IfcProductRepresentation v7_Representation, ::Ifc4x3_tc1::IfcStructuralLoad v8_AppliedLoad, ::Ifc4x3_tc1::IfcGlobalOrLocalEnum::Value v9_GlobalOrLocal, std::optional< bool > v10_DestabilizingLoad) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); }set_attribute_value(5, (v6_ObjectPlacement));set_attribute_value(6, (v7_Representation));set_attribute_value(7, (v8_AppliedLoad));set_attribute_value(8, (enumeration_reference(&::Ifc4x3_tc1::IfcGlobalOrLocalEnum::Class(),(size_t)v9_GlobalOrLocal))); if (v10_DestabilizingLoad) {set_attribute_value(9, (*v10_DestabilizingLoad)); }; return *this; } // Function implementations for IfcStructuralPointConnection -::Ifc4x3_tc1::IfcAxis2Placement3D Ifc4x3_tc1::IfcStructuralPointConnection::ConditionCoordinateSystem() const { if(get_attribute_value(8).isNull()) { return ::Ifc4x3_tc1::IfcAxis2Placement3D{}; } return ((express::Base)(get_attribute_value(8))).as<::Ifc4x3_tc1::IfcAxis2Placement3D>(); } +::Ifc4x3_tc1::IfcAxis2Placement3D Ifc4x3_tc1::IfcStructuralPointConnection::ConditionCoordinateSystem() const { if(get_attribute_value(8).isNull()) { return ::Ifc4x3_tc1::IfcAxis2Placement3D{}; } return ((express::base)(get_attribute_value(8))).as<::Ifc4x3_tc1::IfcAxis2Placement3D>(); } void Ifc4x3_tc1::IfcStructuralPointConnection::setConditionCoordinateSystem(const ::Ifc4x3_tc1::IfcAxis2Placement3D& v) { set_attribute_value(8, v);if constexpr (false)unset_attribute_value(8); } @@ -15158,7 +15158,7 @@ Ifc4x3_tc1::IfcStructuralReaction Ifc4x3_tc1::IfcStructuralReaction::initialize( // Function implementations for IfcStructuralResultGroup ::Ifc4x3_tc1::IfcAnalysisTheoryTypeEnum::Value Ifc4x3_tc1::IfcStructuralResultGroup::TheoryType() const { return ::Ifc4x3_tc1::IfcAnalysisTheoryTypeEnum::FromString(get_attribute_value(5)); } void Ifc4x3_tc1::IfcStructuralResultGroup::setTheoryType(const ::Ifc4x3_tc1::IfcAnalysisTheoryTypeEnum::Value& v) { set_attribute_value(5, enumeration_reference(&::Ifc4x3_tc1::IfcAnalysisTheoryTypeEnum::Class(), (size_t) v));if constexpr (false)unset_attribute_value(5); } -::Ifc4x3_tc1::IfcStructuralLoadGroup Ifc4x3_tc1::IfcStructuralResultGroup::ResultForLoadGroup() const { if(get_attribute_value(6).isNull()) { return ::Ifc4x3_tc1::IfcStructuralLoadGroup{}; } return ((express::Base)(get_attribute_value(6))).as<::Ifc4x3_tc1::IfcStructuralLoadGroup>(); } +::Ifc4x3_tc1::IfcStructuralLoadGroup Ifc4x3_tc1::IfcStructuralResultGroup::ResultForLoadGroup() const { if(get_attribute_value(6).isNull()) { return ::Ifc4x3_tc1::IfcStructuralLoadGroup{}; } return ((express::base)(get_attribute_value(6))).as<::Ifc4x3_tc1::IfcStructuralLoadGroup>(); } void Ifc4x3_tc1::IfcStructuralResultGroup::setResultForLoadGroup(const ::Ifc4x3_tc1::IfcStructuralLoadGroup& v) { set_attribute_value(6, v);if constexpr (false)unset_attribute_value(6); } bool Ifc4x3_tc1::IfcStructuralResultGroup::IsLinear() const { bool v = get_attribute_value(7); return v; } void Ifc4x3_tc1::IfcStructuralResultGroup::setIsLinear(const bool& v) { set_attribute_value(7, v);if constexpr (false)unset_attribute_value(7); } @@ -15212,25 +15212,25 @@ Ifc4x3_tc1::IfcStructuralSurfaceReaction Ifc4x3_tc1::IfcStructuralSurfaceReactio const ifcopenshell::entity& Ifc4x3_tc1::IfcStyleModel::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[1116]); } -Ifc4x3_tc1::IfcStyleModel Ifc4x3_tc1::IfcStyleModel::initialize(::Ifc4x3_tc1::IfcRepresentationContext v1_ContextOfItems, std::optional< std::string > v2_RepresentationIdentifier, std::optional< std::string > v3_RepresentationType, std::vector< ::Ifc4x3_tc1::IfcRepresentationItem > v4_Items) { set_attribute_value(0, (v1_ContextOfItems)); if (v2_RepresentationIdentifier) {set_attribute_value(1, (*v2_RepresentationIdentifier)); } if (v3_RepresentationType) {set_attribute_value(2, (*v3_RepresentationType)); }set_attribute_value(3, cast_vector(v4_Items));; return *this; } +Ifc4x3_tc1::IfcStyleModel Ifc4x3_tc1::IfcStyleModel::initialize(::Ifc4x3_tc1::IfcRepresentationContext v1_ContextOfItems, std::optional< std::string > v2_RepresentationIdentifier, std::optional< std::string > v3_RepresentationType, std::vector< ::Ifc4x3_tc1::IfcRepresentationItem > v4_Items) { set_attribute_value(0, (v1_ContextOfItems)); if (v2_RepresentationIdentifier) {set_attribute_value(1, (*v2_RepresentationIdentifier)); } if (v3_RepresentationType) {set_attribute_value(2, (*v3_RepresentationType)); }set_attribute_value(3, cast_vector(v4_Items));; return *this; } // Function implementations for IfcStyledItem -::Ifc4x3_tc1::IfcRepresentationItem Ifc4x3_tc1::IfcStyledItem::Item() const { if(get_attribute_value(0).isNull()) { return ::Ifc4x3_tc1::IfcRepresentationItem{}; } return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcRepresentationItem>(); } +::Ifc4x3_tc1::IfcRepresentationItem Ifc4x3_tc1::IfcStyledItem::Item() const { if(get_attribute_value(0).isNull()) { return ::Ifc4x3_tc1::IfcRepresentationItem{}; } return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcRepresentationItem>(); } void Ifc4x3_tc1::IfcStyledItem::setItem(const ::Ifc4x3_tc1::IfcRepresentationItem& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } -std::vector< ::Ifc4x3_tc1::IfcPresentationStyle > Ifc4x3_tc1::IfcStyledItem::Styles() const { std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3_tc1::IfcPresentationStyle>(es); } -void Ifc4x3_tc1::IfcStyledItem::setStyles(const std::vector< ::Ifc4x3_tc1::IfcPresentationStyle >& v) { set_attribute_value(1, cast_vector(v));if constexpr (false)unset_attribute_value(1); } +std::vector< ::Ifc4x3_tc1::IfcPresentationStyle > Ifc4x3_tc1::IfcStyledItem::Styles() const { std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3_tc1::IfcPresentationStyle>(es); } +void Ifc4x3_tc1::IfcStyledItem::setStyles(const std::vector< ::Ifc4x3_tc1::IfcPresentationStyle >& v) { set_attribute_value(1, cast_vector(v));if constexpr (false)unset_attribute_value(1); } std::optional< std::string > Ifc4x3_tc1::IfcStyledItem::Name() const { if(get_attribute_value(2).isNull()) { return std::nullopt; } std::string v = get_attribute_value(2); return v; } void Ifc4x3_tc1::IfcStyledItem::setName(const std::optional< std::string >& v) { if (v) {set_attribute_value(2, *v);} else {unset_attribute_value(2);} } const ifcopenshell::entity& Ifc4x3_tc1::IfcStyledItem::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[1114]); } -Ifc4x3_tc1::IfcStyledItem Ifc4x3_tc1::IfcStyledItem::initialize(::Ifc4x3_tc1::IfcRepresentationItem v1_Item, std::vector< ::Ifc4x3_tc1::IfcPresentationStyle > v2_Styles, std::optional< std::string > v3_Name) { set_attribute_value(0, (v1_Item));set_attribute_value(1, cast_vector(v2_Styles)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); }; return *this; } +Ifc4x3_tc1::IfcStyledItem Ifc4x3_tc1::IfcStyledItem::initialize(::Ifc4x3_tc1::IfcRepresentationItem v1_Item, std::vector< ::Ifc4x3_tc1::IfcPresentationStyle > v2_Styles, std::optional< std::string > v3_Name) { set_attribute_value(0, (v1_Item));set_attribute_value(1, cast_vector(v2_Styles)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); }; return *this; } // Function implementations for IfcStyledRepresentation const ifcopenshell::entity& Ifc4x3_tc1::IfcStyledRepresentation::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[1115]); } -Ifc4x3_tc1::IfcStyledRepresentation Ifc4x3_tc1::IfcStyledRepresentation::initialize(::Ifc4x3_tc1::IfcRepresentationContext v1_ContextOfItems, std::optional< std::string > v2_RepresentationIdentifier, std::optional< std::string > v3_RepresentationType, std::vector< ::Ifc4x3_tc1::IfcRepresentationItem > v4_Items) { set_attribute_value(0, (v1_ContextOfItems)); if (v2_RepresentationIdentifier) {set_attribute_value(1, (*v2_RepresentationIdentifier)); } if (v3_RepresentationType) {set_attribute_value(2, (*v3_RepresentationType)); }set_attribute_value(3, cast_vector(v4_Items));; return *this; } +Ifc4x3_tc1::IfcStyledRepresentation Ifc4x3_tc1::IfcStyledRepresentation::initialize(::Ifc4x3_tc1::IfcRepresentationContext v1_ContextOfItems, std::optional< std::string > v2_RepresentationIdentifier, std::optional< std::string > v3_RepresentationType, std::vector< ::Ifc4x3_tc1::IfcRepresentationItem > v4_Items) { set_attribute_value(0, (v1_ContextOfItems)); if (v2_RepresentationIdentifier) {set_attribute_value(1, (*v2_RepresentationIdentifier)); } if (v3_RepresentationType) {set_attribute_value(2, (*v3_RepresentationType)); }set_attribute_value(3, cast_vector(v4_Items));; return *this; } // Function implementations for IfcSubContractResource std::optional< ::Ifc4x3_tc1::IfcSubContractResourceTypeEnum::Value > Ifc4x3_tc1::IfcSubContractResource::PredefinedType() const { if(get_attribute_value(10).isNull()) { return std::nullopt; } return ::Ifc4x3_tc1::IfcSubContractResourceTypeEnum::FromString(get_attribute_value(10)); } @@ -15238,7 +15238,7 @@ void Ifc4x3_tc1::IfcSubContractResource::setPredefinedType(const std::optional< const ifcopenshell::entity& Ifc4x3_tc1::IfcSubContractResource::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[1117]); } -Ifc4x3_tc1::IfcSubContractResource Ifc4x3_tc1::IfcSubContractResource::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, std::optional< std::string > v6_Identification, std::optional< std::string > v7_LongDescription, ::Ifc4x3_tc1::IfcResourceTime v8_Usage, std::optional< std::vector< ::Ifc4x3_tc1::IfcAppliedValue > > v9_BaseCosts, ::Ifc4x3_tc1::IfcPhysicalQuantity v10_BaseQuantity, std::optional< ::Ifc4x3_tc1::IfcSubContractResourceTypeEnum::Value > v11_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); } if (v6_Identification) {set_attribute_value(5, (*v6_Identification)); } if (v7_LongDescription) {set_attribute_value(6, (*v7_LongDescription)); }set_attribute_value(7, (v8_Usage)); if (v9_BaseCosts) {set_attribute_value(8, cast_vector(*v9_BaseCosts)); }set_attribute_value(9, (v10_BaseQuantity)); if (v11_PredefinedType) {set_attribute_value(10, (enumeration_reference(&::Ifc4x3_tc1::IfcSubContractResourceTypeEnum::Class(),(size_t)*v11_PredefinedType))); }; return *this; } +Ifc4x3_tc1::IfcSubContractResource Ifc4x3_tc1::IfcSubContractResource::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, std::optional< std::string > v6_Identification, std::optional< std::string > v7_LongDescription, ::Ifc4x3_tc1::IfcResourceTime v8_Usage, std::optional< std::vector< ::Ifc4x3_tc1::IfcAppliedValue > > v9_BaseCosts, ::Ifc4x3_tc1::IfcPhysicalQuantity v10_BaseQuantity, std::optional< ::Ifc4x3_tc1::IfcSubContractResourceTypeEnum::Value > v11_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); } if (v6_Identification) {set_attribute_value(5, (*v6_Identification)); } if (v7_LongDescription) {set_attribute_value(6, (*v7_LongDescription)); }set_attribute_value(7, (v8_Usage)); if (v9_BaseCosts) {set_attribute_value(8, cast_vector(*v9_BaseCosts)); }set_attribute_value(9, (v10_BaseQuantity)); if (v11_PredefinedType) {set_attribute_value(10, (enumeration_reference(&::Ifc4x3_tc1::IfcSubContractResourceTypeEnum::Class(),(size_t)*v11_PredefinedType))); }; return *this; } // Function implementations for IfcSubContractResourceType ::Ifc4x3_tc1::IfcSubContractResourceTypeEnum::Value Ifc4x3_tc1::IfcSubContractResourceType::PredefinedType() const { return ::Ifc4x3_tc1::IfcSubContractResourceTypeEnum::FromString(get_attribute_value(11)); } @@ -15246,10 +15246,10 @@ void Ifc4x3_tc1::IfcSubContractResourceType::setPredefinedType(const ::Ifc4x3_tc const ifcopenshell::entity& Ifc4x3_tc1::IfcSubContractResourceType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[1118]); } -Ifc4x3_tc1::IfcSubContractResourceType Ifc4x3_tc1::IfcSubContractResourceType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::string > v7_Identification, std::optional< std::string > v8_LongDescription, std::optional< std::string > v9_ResourceType, std::optional< std::vector< ::Ifc4x3_tc1::IfcAppliedValue > > v10_BaseCosts, ::Ifc4x3_tc1::IfcPhysicalQuantity v11_BaseQuantity, ::Ifc4x3_tc1::IfcSubContractResourceTypeEnum::Value v12_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_Identification) {set_attribute_value(6, (*v7_Identification)); } if (v8_LongDescription) {set_attribute_value(7, (*v8_LongDescription)); } if (v9_ResourceType) {set_attribute_value(8, (*v9_ResourceType)); } if (v10_BaseCosts) {set_attribute_value(9, cast_vector(*v10_BaseCosts)); }set_attribute_value(10, (v11_BaseQuantity));set_attribute_value(11, (enumeration_reference(&::Ifc4x3_tc1::IfcSubContractResourceTypeEnum::Class(),(size_t)v12_PredefinedType)));; return *this; } +Ifc4x3_tc1::IfcSubContractResourceType Ifc4x3_tc1::IfcSubContractResourceType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::string > v7_Identification, std::optional< std::string > v8_LongDescription, std::optional< std::string > v9_ResourceType, std::optional< std::vector< ::Ifc4x3_tc1::IfcAppliedValue > > v10_BaseCosts, ::Ifc4x3_tc1::IfcPhysicalQuantity v11_BaseQuantity, ::Ifc4x3_tc1::IfcSubContractResourceTypeEnum::Value v12_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_Identification) {set_attribute_value(6, (*v7_Identification)); } if (v8_LongDescription) {set_attribute_value(7, (*v8_LongDescription)); } if (v9_ResourceType) {set_attribute_value(8, (*v9_ResourceType)); } if (v10_BaseCosts) {set_attribute_value(9, cast_vector(*v10_BaseCosts)); }set_attribute_value(10, (v11_BaseQuantity));set_attribute_value(11, (enumeration_reference(&::Ifc4x3_tc1::IfcSubContractResourceTypeEnum::Class(),(size_t)v12_PredefinedType)));; return *this; } // Function implementations for IfcSubedge -::Ifc4x3_tc1::IfcEdge Ifc4x3_tc1::IfcSubedge::ParentEdge() const { return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3_tc1::IfcEdge>(); } +::Ifc4x3_tc1::IfcEdge Ifc4x3_tc1::IfcSubedge::ParentEdge() const { return ((express::base)(get_attribute_value(2))).as<::Ifc4x3_tc1::IfcEdge>(); } void Ifc4x3_tc1::IfcSubedge::setParentEdge(const ::Ifc4x3_tc1::IfcEdge& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } @@ -15263,19 +15263,19 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcSurface::Class() { return *((ifcopens Ifc4x3_tc1::IfcSurface Ifc4x3_tc1::IfcSurface::initialize() { ; return *this; } // Function implementations for IfcSurfaceCurve -::Ifc4x3_tc1::IfcCurve Ifc4x3_tc1::IfcSurfaceCurve::Curve3D() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcCurve>(); } +::Ifc4x3_tc1::IfcCurve Ifc4x3_tc1::IfcSurfaceCurve::Curve3D() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcCurve>(); } void Ifc4x3_tc1::IfcSurfaceCurve::setCurve3D(const ::Ifc4x3_tc1::IfcCurve& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } -std::vector< ::Ifc4x3_tc1::IfcPcurve > Ifc4x3_tc1::IfcSurfaceCurve::AssociatedGeometry() const { std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3_tc1::IfcPcurve>(es); } -void Ifc4x3_tc1::IfcSurfaceCurve::setAssociatedGeometry(const std::vector< ::Ifc4x3_tc1::IfcPcurve >& v) { set_attribute_value(1, cast_vector(v));if constexpr (false)unset_attribute_value(1); } +std::vector< ::Ifc4x3_tc1::IfcPcurve > Ifc4x3_tc1::IfcSurfaceCurve::AssociatedGeometry() const { std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3_tc1::IfcPcurve>(es); } +void Ifc4x3_tc1::IfcSurfaceCurve::setAssociatedGeometry(const std::vector< ::Ifc4x3_tc1::IfcPcurve >& v) { set_attribute_value(1, cast_vector(v));if constexpr (false)unset_attribute_value(1); } ::Ifc4x3_tc1::IfcPreferredSurfaceCurveRepresentation::Value Ifc4x3_tc1::IfcSurfaceCurve::MasterRepresentation() const { return ::Ifc4x3_tc1::IfcPreferredSurfaceCurveRepresentation::FromString(get_attribute_value(2)); } void Ifc4x3_tc1::IfcSurfaceCurve::setMasterRepresentation(const ::Ifc4x3_tc1::IfcPreferredSurfaceCurveRepresentation::Value& v) { set_attribute_value(2, enumeration_reference(&::Ifc4x3_tc1::IfcPreferredSurfaceCurveRepresentation::Class(), (size_t) v));if constexpr (false)unset_attribute_value(2); } const ifcopenshell::entity& Ifc4x3_tc1::IfcSurfaceCurve::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[1122]); } -Ifc4x3_tc1::IfcSurfaceCurve Ifc4x3_tc1::IfcSurfaceCurve::initialize(::Ifc4x3_tc1::IfcCurve v1_Curve3D, std::vector< ::Ifc4x3_tc1::IfcPcurve > v2_AssociatedGeometry, ::Ifc4x3_tc1::IfcPreferredSurfaceCurveRepresentation::Value v3_MasterRepresentation) { set_attribute_value(0, (v1_Curve3D));set_attribute_value(1, cast_vector(v2_AssociatedGeometry));set_attribute_value(2, (enumeration_reference(&::Ifc4x3_tc1::IfcPreferredSurfaceCurveRepresentation::Class(),(size_t)v3_MasterRepresentation)));; return *this; } +Ifc4x3_tc1::IfcSurfaceCurve Ifc4x3_tc1::IfcSurfaceCurve::initialize(::Ifc4x3_tc1::IfcCurve v1_Curve3D, std::vector< ::Ifc4x3_tc1::IfcPcurve > v2_AssociatedGeometry, ::Ifc4x3_tc1::IfcPreferredSurfaceCurveRepresentation::Value v3_MasterRepresentation) { set_attribute_value(0, (v1_Curve3D));set_attribute_value(1, cast_vector(v2_AssociatedGeometry));set_attribute_value(2, (enumeration_reference(&::Ifc4x3_tc1::IfcPreferredSurfaceCurveRepresentation::Class(),(size_t)v3_MasterRepresentation)));; return *this; } // Function implementations for IfcSurfaceCurveSweptAreaSolid -::Ifc4x3_tc1::IfcSurface Ifc4x3_tc1::IfcSurfaceCurveSweptAreaSolid::ReferenceSurface() const { return ((express::Base)(get_attribute_value(5))).as<::Ifc4x3_tc1::IfcSurface>(); } +::Ifc4x3_tc1::IfcSurface Ifc4x3_tc1::IfcSurfaceCurveSweptAreaSolid::ReferenceSurface() const { return ((express::base)(get_attribute_value(5))).as<::Ifc4x3_tc1::IfcSurface>(); } void Ifc4x3_tc1::IfcSurfaceCurveSweptAreaSolid::setReferenceSurface(const ::Ifc4x3_tc1::IfcSurface& v) { set_attribute_value(5, v);if constexpr (false)unset_attribute_value(5); } @@ -15292,7 +15292,7 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcSurfaceFeature::Class() { return *((i Ifc4x3_tc1::IfcSurfaceFeature Ifc4x3_tc1::IfcSurfaceFeature::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, ::Ifc4x3_tc1::IfcObjectPlacement v6_ObjectPlacement, ::Ifc4x3_tc1::IfcProductRepresentation v7_Representation, std::optional< std::string > v8_Tag, std::optional< ::Ifc4x3_tc1::IfcSurfaceFeatureTypeEnum::Value > v9_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); }set_attribute_value(5, (v6_ObjectPlacement));set_attribute_value(6, (v7_Representation)); if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_PredefinedType) {set_attribute_value(8, (enumeration_reference(&::Ifc4x3_tc1::IfcSurfaceFeatureTypeEnum::Class(),(size_t)*v9_PredefinedType))); }; return *this; } // Function implementations for IfcSurfaceOfLinearExtrusion -::Ifc4x3_tc1::IfcDirection Ifc4x3_tc1::IfcSurfaceOfLinearExtrusion::ExtrudedDirection() const { return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3_tc1::IfcDirection>(); } +::Ifc4x3_tc1::IfcDirection Ifc4x3_tc1::IfcSurfaceOfLinearExtrusion::ExtrudedDirection() const { return ((express::base)(get_attribute_value(2))).as<::Ifc4x3_tc1::IfcDirection>(); } void Ifc4x3_tc1::IfcSurfaceOfLinearExtrusion::setExtrudedDirection(const ::Ifc4x3_tc1::IfcDirection& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } double Ifc4x3_tc1::IfcSurfaceOfLinearExtrusion::Depth() const { double v = get_attribute_value(3); return v; } void Ifc4x3_tc1::IfcSurfaceOfLinearExtrusion::setDepth(const double& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } @@ -15302,7 +15302,7 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcSurfaceOfLinearExtrusion::Class() { r Ifc4x3_tc1::IfcSurfaceOfLinearExtrusion Ifc4x3_tc1::IfcSurfaceOfLinearExtrusion::initialize(::Ifc4x3_tc1::IfcProfileDef v1_SweptCurve, ::Ifc4x3_tc1::IfcAxis2Placement3D v2_Position, ::Ifc4x3_tc1::IfcDirection v3_ExtrudedDirection, double v4_Depth) { set_attribute_value(0, (v1_SweptCurve));set_attribute_value(1, (v2_Position));set_attribute_value(2, (v3_ExtrudedDirection));set_attribute_value(3, (v4_Depth));; return *this; } // Function implementations for IfcSurfaceOfRevolution -::Ifc4x3_tc1::IfcAxis1Placement Ifc4x3_tc1::IfcSurfaceOfRevolution::AxisPosition() const { return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3_tc1::IfcAxis1Placement>(); } +::Ifc4x3_tc1::IfcAxis1Placement Ifc4x3_tc1::IfcSurfaceOfRevolution::AxisPosition() const { return ((express::base)(get_attribute_value(2))).as<::Ifc4x3_tc1::IfcAxis1Placement>(); } void Ifc4x3_tc1::IfcSurfaceOfRevolution::setAxisPosition(const ::Ifc4x3_tc1::IfcAxis1Placement& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } @@ -15324,21 +15324,21 @@ Ifc4x3_tc1::IfcSurfaceReinforcementArea Ifc4x3_tc1::IfcSurfaceReinforcementArea: // Function implementations for IfcSurfaceStyle ::Ifc4x3_tc1::IfcSurfaceSide::Value Ifc4x3_tc1::IfcSurfaceStyle::Side() const { return ::Ifc4x3_tc1::IfcSurfaceSide::FromString(get_attribute_value(1)); } void Ifc4x3_tc1::IfcSurfaceStyle::setSide(const ::Ifc4x3_tc1::IfcSurfaceSide::Value& v) { set_attribute_value(1, enumeration_reference(&::Ifc4x3_tc1::IfcSurfaceSide::Class(), (size_t) v));if constexpr (false)unset_attribute_value(1); } -std::vector< ::Ifc4x3_tc1::IfcSurfaceStyleElementSelect > Ifc4x3_tc1::IfcSurfaceStyle::Styles() const { std::vector es = get_attribute_value(2); return cast_vector<::Ifc4x3_tc1::IfcSurfaceStyleElementSelect>(es); } -void Ifc4x3_tc1::IfcSurfaceStyle::setStyles(const std::vector< ::Ifc4x3_tc1::IfcSurfaceStyleElementSelect >& v) { set_attribute_value(2, cast_vector(v));if constexpr (false)unset_attribute_value(2); } +std::vector< ::Ifc4x3_tc1::IfcSurfaceStyleElementSelect > Ifc4x3_tc1::IfcSurfaceStyle::Styles() const { std::vector es = get_attribute_value(2); return cast_vector<::Ifc4x3_tc1::IfcSurfaceStyleElementSelect>(es); } +void Ifc4x3_tc1::IfcSurfaceStyle::setStyles(const std::vector< ::Ifc4x3_tc1::IfcSurfaceStyleElementSelect >& v) { set_attribute_value(2, cast_vector(v));if constexpr (false)unset_attribute_value(2); } const ifcopenshell::entity& Ifc4x3_tc1::IfcSurfaceStyle::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[1131]); } -Ifc4x3_tc1::IfcSurfaceStyle Ifc4x3_tc1::IfcSurfaceStyle::initialize(std::optional< std::string > v1_Name, ::Ifc4x3_tc1::IfcSurfaceSide::Value v2_Side, std::vector< ::Ifc4x3_tc1::IfcSurfaceStyleElementSelect > v3_Styles) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); }set_attribute_value(1, (enumeration_reference(&::Ifc4x3_tc1::IfcSurfaceSide::Class(),(size_t)v2_Side)));set_attribute_value(2, cast_vector(v3_Styles));; return *this; } +Ifc4x3_tc1::IfcSurfaceStyle Ifc4x3_tc1::IfcSurfaceStyle::initialize(std::optional< std::string > v1_Name, ::Ifc4x3_tc1::IfcSurfaceSide::Value v2_Side, std::vector< ::Ifc4x3_tc1::IfcSurfaceStyleElementSelect > v3_Styles) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); }set_attribute_value(1, (enumeration_reference(&::Ifc4x3_tc1::IfcSurfaceSide::Class(),(size_t)v2_Side)));set_attribute_value(2, cast_vector(v3_Styles));; return *this; } // Function implementations for IfcSurfaceStyleLighting -::Ifc4x3_tc1::IfcColourRgb Ifc4x3_tc1::IfcSurfaceStyleLighting::DiffuseTransmissionColour() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcColourRgb>(); } +::Ifc4x3_tc1::IfcColourRgb Ifc4x3_tc1::IfcSurfaceStyleLighting::DiffuseTransmissionColour() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcColourRgb>(); } void Ifc4x3_tc1::IfcSurfaceStyleLighting::setDiffuseTransmissionColour(const ::Ifc4x3_tc1::IfcColourRgb& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } -::Ifc4x3_tc1::IfcColourRgb Ifc4x3_tc1::IfcSurfaceStyleLighting::DiffuseReflectionColour() const { return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3_tc1::IfcColourRgb>(); } +::Ifc4x3_tc1::IfcColourRgb Ifc4x3_tc1::IfcSurfaceStyleLighting::DiffuseReflectionColour() const { return ((express::base)(get_attribute_value(1))).as<::Ifc4x3_tc1::IfcColourRgb>(); } void Ifc4x3_tc1::IfcSurfaceStyleLighting::setDiffuseReflectionColour(const ::Ifc4x3_tc1::IfcColourRgb& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } -::Ifc4x3_tc1::IfcColourRgb Ifc4x3_tc1::IfcSurfaceStyleLighting::TransmissionColour() const { return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3_tc1::IfcColourRgb>(); } +::Ifc4x3_tc1::IfcColourRgb Ifc4x3_tc1::IfcSurfaceStyleLighting::TransmissionColour() const { return ((express::base)(get_attribute_value(2))).as<::Ifc4x3_tc1::IfcColourRgb>(); } void Ifc4x3_tc1::IfcSurfaceStyleLighting::setTransmissionColour(const ::Ifc4x3_tc1::IfcColourRgb& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } -::Ifc4x3_tc1::IfcColourRgb Ifc4x3_tc1::IfcSurfaceStyleLighting::ReflectanceColour() const { return ((express::Base)(get_attribute_value(3))).as<::Ifc4x3_tc1::IfcColourRgb>(); } +::Ifc4x3_tc1::IfcColourRgb Ifc4x3_tc1::IfcSurfaceStyleLighting::ReflectanceColour() const { return ((express::base)(get_attribute_value(3))).as<::Ifc4x3_tc1::IfcColourRgb>(); } void Ifc4x3_tc1::IfcSurfaceStyleLighting::setReflectanceColour(const ::Ifc4x3_tc1::IfcColourRgb& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } @@ -15356,17 +15356,17 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcSurfaceStyleRefraction::Class() { ret Ifc4x3_tc1::IfcSurfaceStyleRefraction Ifc4x3_tc1::IfcSurfaceStyleRefraction::initialize(std::optional< double > v1_RefractionIndex, std::optional< double > v2_DispersionFactor) { if (v1_RefractionIndex) {set_attribute_value(0, (*v1_RefractionIndex)); } if (v2_DispersionFactor) {set_attribute_value(1, (*v2_DispersionFactor)); }; return *this; } // Function implementations for IfcSurfaceStyleRendering -::Ifc4x3_tc1::IfcColourOrFactor Ifc4x3_tc1::IfcSurfaceStyleRendering::DiffuseColour() const { if(get_attribute_value(2).isNull()) { return ::Ifc4x3_tc1::IfcColourOrFactor{}; } return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3_tc1::IfcColourOrFactor>(); } +::Ifc4x3_tc1::IfcColourOrFactor Ifc4x3_tc1::IfcSurfaceStyleRendering::DiffuseColour() const { if(get_attribute_value(2).isNull()) { return ::Ifc4x3_tc1::IfcColourOrFactor{}; } return ((express::base)(get_attribute_value(2))).as<::Ifc4x3_tc1::IfcColourOrFactor>(); } void Ifc4x3_tc1::IfcSurfaceStyleRendering::setDiffuseColour(const ::Ifc4x3_tc1::IfcColourOrFactor& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } -::Ifc4x3_tc1::IfcColourOrFactor Ifc4x3_tc1::IfcSurfaceStyleRendering::TransmissionColour() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3_tc1::IfcColourOrFactor{}; } return ((express::Base)(get_attribute_value(3))).as<::Ifc4x3_tc1::IfcColourOrFactor>(); } +::Ifc4x3_tc1::IfcColourOrFactor Ifc4x3_tc1::IfcSurfaceStyleRendering::TransmissionColour() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3_tc1::IfcColourOrFactor{}; } return ((express::base)(get_attribute_value(3))).as<::Ifc4x3_tc1::IfcColourOrFactor>(); } void Ifc4x3_tc1::IfcSurfaceStyleRendering::setTransmissionColour(const ::Ifc4x3_tc1::IfcColourOrFactor& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } -::Ifc4x3_tc1::IfcColourOrFactor Ifc4x3_tc1::IfcSurfaceStyleRendering::DiffuseTransmissionColour() const { if(get_attribute_value(4).isNull()) { return ::Ifc4x3_tc1::IfcColourOrFactor{}; } return ((express::Base)(get_attribute_value(4))).as<::Ifc4x3_tc1::IfcColourOrFactor>(); } +::Ifc4x3_tc1::IfcColourOrFactor Ifc4x3_tc1::IfcSurfaceStyleRendering::DiffuseTransmissionColour() const { if(get_attribute_value(4).isNull()) { return ::Ifc4x3_tc1::IfcColourOrFactor{}; } return ((express::base)(get_attribute_value(4))).as<::Ifc4x3_tc1::IfcColourOrFactor>(); } void Ifc4x3_tc1::IfcSurfaceStyleRendering::setDiffuseTransmissionColour(const ::Ifc4x3_tc1::IfcColourOrFactor& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } -::Ifc4x3_tc1::IfcColourOrFactor Ifc4x3_tc1::IfcSurfaceStyleRendering::ReflectionColour() const { if(get_attribute_value(5).isNull()) { return ::Ifc4x3_tc1::IfcColourOrFactor{}; } return ((express::Base)(get_attribute_value(5))).as<::Ifc4x3_tc1::IfcColourOrFactor>(); } +::Ifc4x3_tc1::IfcColourOrFactor Ifc4x3_tc1::IfcSurfaceStyleRendering::ReflectionColour() const { if(get_attribute_value(5).isNull()) { return ::Ifc4x3_tc1::IfcColourOrFactor{}; } return ((express::base)(get_attribute_value(5))).as<::Ifc4x3_tc1::IfcColourOrFactor>(); } void Ifc4x3_tc1::IfcSurfaceStyleRendering::setReflectionColour(const ::Ifc4x3_tc1::IfcColourOrFactor& v) { set_attribute_value(5, v);if constexpr (false)unset_attribute_value(5); } -::Ifc4x3_tc1::IfcColourOrFactor Ifc4x3_tc1::IfcSurfaceStyleRendering::SpecularColour() const { if(get_attribute_value(6).isNull()) { return ::Ifc4x3_tc1::IfcColourOrFactor{}; } return ((express::Base)(get_attribute_value(6))).as<::Ifc4x3_tc1::IfcColourOrFactor>(); } +::Ifc4x3_tc1::IfcColourOrFactor Ifc4x3_tc1::IfcSurfaceStyleRendering::SpecularColour() const { if(get_attribute_value(6).isNull()) { return ::Ifc4x3_tc1::IfcColourOrFactor{}; } return ((express::base)(get_attribute_value(6))).as<::Ifc4x3_tc1::IfcColourOrFactor>(); } void Ifc4x3_tc1::IfcSurfaceStyleRendering::setSpecularColour(const ::Ifc4x3_tc1::IfcColourOrFactor& v) { set_attribute_value(6, v);if constexpr (false)unset_attribute_value(6); } -::Ifc4x3_tc1::IfcSpecularHighlightSelect Ifc4x3_tc1::IfcSurfaceStyleRendering::SpecularHighlight() const { if(get_attribute_value(7).isNull()) { return ::Ifc4x3_tc1::IfcSpecularHighlightSelect{}; } return ((express::Base)(get_attribute_value(7))).as<::Ifc4x3_tc1::IfcSpecularHighlightSelect>(); } +::Ifc4x3_tc1::IfcSpecularHighlightSelect Ifc4x3_tc1::IfcSurfaceStyleRendering::SpecularHighlight() const { if(get_attribute_value(7).isNull()) { return ::Ifc4x3_tc1::IfcSpecularHighlightSelect{}; } return ((express::base)(get_attribute_value(7))).as<::Ifc4x3_tc1::IfcSpecularHighlightSelect>(); } void Ifc4x3_tc1::IfcSurfaceStyleRendering::setSpecularHighlight(const ::Ifc4x3_tc1::IfcSpecularHighlightSelect& v) { set_attribute_value(7, v);if constexpr (false)unset_attribute_value(7); } ::Ifc4x3_tc1::IfcReflectanceMethodEnum::Value Ifc4x3_tc1::IfcSurfaceStyleRendering::ReflectanceMethod() const { return ::Ifc4x3_tc1::IfcReflectanceMethodEnum::FromString(get_attribute_value(8)); } void Ifc4x3_tc1::IfcSurfaceStyleRendering::setReflectanceMethod(const ::Ifc4x3_tc1::IfcReflectanceMethodEnum::Value& v) { set_attribute_value(8, enumeration_reference(&::Ifc4x3_tc1::IfcReflectanceMethodEnum::Class(), (size_t) v));if constexpr (false)unset_attribute_value(8); } @@ -15376,7 +15376,7 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcSurfaceStyleRendering::Class() { retu Ifc4x3_tc1::IfcSurfaceStyleRendering Ifc4x3_tc1::IfcSurfaceStyleRendering::initialize(::Ifc4x3_tc1::IfcColourRgb v1_SurfaceColour, std::optional< double > v2_Transparency, ::Ifc4x3_tc1::IfcColourOrFactor v3_DiffuseColour, ::Ifc4x3_tc1::IfcColourOrFactor v4_TransmissionColour, ::Ifc4x3_tc1::IfcColourOrFactor v5_DiffuseTransmissionColour, ::Ifc4x3_tc1::IfcColourOrFactor v6_ReflectionColour, ::Ifc4x3_tc1::IfcColourOrFactor v7_SpecularColour, ::Ifc4x3_tc1::IfcSpecularHighlightSelect v8_SpecularHighlight, ::Ifc4x3_tc1::IfcReflectanceMethodEnum::Value v9_ReflectanceMethod) { set_attribute_value(0, (v1_SurfaceColour)); if (v2_Transparency) {set_attribute_value(1, (*v2_Transparency)); }set_attribute_value(2, (v3_DiffuseColour));set_attribute_value(3, (v4_TransmissionColour));set_attribute_value(4, (v5_DiffuseTransmissionColour));set_attribute_value(5, (v6_ReflectionColour));set_attribute_value(6, (v7_SpecularColour));set_attribute_value(7, (v8_SpecularHighlight));set_attribute_value(8, (enumeration_reference(&::Ifc4x3_tc1::IfcReflectanceMethodEnum::Class(),(size_t)v9_ReflectanceMethod)));; return *this; } // Function implementations for IfcSurfaceStyleShading -::Ifc4x3_tc1::IfcColourRgb Ifc4x3_tc1::IfcSurfaceStyleShading::SurfaceColour() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcColourRgb>(); } +::Ifc4x3_tc1::IfcColourRgb Ifc4x3_tc1::IfcSurfaceStyleShading::SurfaceColour() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcColourRgb>(); } void Ifc4x3_tc1::IfcSurfaceStyleShading::setSurfaceColour(const ::Ifc4x3_tc1::IfcColourRgb& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } std::optional< double > Ifc4x3_tc1::IfcSurfaceStyleShading::Transparency() const { if(get_attribute_value(1).isNull()) { return std::nullopt; } double v = get_attribute_value(1); return v; } void Ifc4x3_tc1::IfcSurfaceStyleShading::setTransparency(const std::optional< double >& v) { if (v) {set_attribute_value(1, *v);} else {unset_attribute_value(1);} } @@ -15386,12 +15386,12 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcSurfaceStyleShading::Class() { return Ifc4x3_tc1::IfcSurfaceStyleShading Ifc4x3_tc1::IfcSurfaceStyleShading::initialize(::Ifc4x3_tc1::IfcColourRgb v1_SurfaceColour, std::optional< double > v2_Transparency) { set_attribute_value(0, (v1_SurfaceColour)); if (v2_Transparency) {set_attribute_value(1, (*v2_Transparency)); }; return *this; } // Function implementations for IfcSurfaceStyleWithTextures -std::vector< ::Ifc4x3_tc1::IfcSurfaceTexture > Ifc4x3_tc1::IfcSurfaceStyleWithTextures::Textures() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3_tc1::IfcSurfaceTexture>(es); } -void Ifc4x3_tc1::IfcSurfaceStyleWithTextures::setTextures(const std::vector< ::Ifc4x3_tc1::IfcSurfaceTexture >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } +std::vector< ::Ifc4x3_tc1::IfcSurfaceTexture > Ifc4x3_tc1::IfcSurfaceStyleWithTextures::Textures() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3_tc1::IfcSurfaceTexture>(es); } +void Ifc4x3_tc1::IfcSurfaceStyleWithTextures::setTextures(const std::vector< ::Ifc4x3_tc1::IfcSurfaceTexture >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } const ifcopenshell::entity& Ifc4x3_tc1::IfcSurfaceStyleWithTextures::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[1137]); } -Ifc4x3_tc1::IfcSurfaceStyleWithTextures Ifc4x3_tc1::IfcSurfaceStyleWithTextures::initialize(std::vector< ::Ifc4x3_tc1::IfcSurfaceTexture > v1_Textures) { set_attribute_value(0, cast_vector(v1_Textures));; return *this; } +Ifc4x3_tc1::IfcSurfaceStyleWithTextures Ifc4x3_tc1::IfcSurfaceStyleWithTextures::initialize(std::vector< ::Ifc4x3_tc1::IfcSurfaceTexture > v1_Textures) { set_attribute_value(0, cast_vector(v1_Textures));; return *this; } // Function implementations for IfcSurfaceTexture bool Ifc4x3_tc1::IfcSurfaceTexture::RepeatS() const { bool v = get_attribute_value(0); return v; } @@ -15400,7 +15400,7 @@ bool Ifc4x3_tc1::IfcSurfaceTexture::RepeatT() const { bool v = get_attribute_va void Ifc4x3_tc1::IfcSurfaceTexture::setRepeatT(const bool& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } std::optional< std::string > Ifc4x3_tc1::IfcSurfaceTexture::Mode() const { if(get_attribute_value(2).isNull()) { return std::nullopt; } std::string v = get_attribute_value(2); return v; } void Ifc4x3_tc1::IfcSurfaceTexture::setMode(const std::optional< std::string >& v) { if (v) {set_attribute_value(2, *v);} else {unset_attribute_value(2);} } -::Ifc4x3_tc1::IfcCartesianTransformationOperator2D Ifc4x3_tc1::IfcSurfaceTexture::TextureTransform() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3_tc1::IfcCartesianTransformationOperator2D{}; } return ((express::Base)(get_attribute_value(3))).as<::Ifc4x3_tc1::IfcCartesianTransformationOperator2D>(); } +::Ifc4x3_tc1::IfcCartesianTransformationOperator2D Ifc4x3_tc1::IfcSurfaceTexture::TextureTransform() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3_tc1::IfcCartesianTransformationOperator2D{}; } return ((express::base)(get_attribute_value(3))).as<::Ifc4x3_tc1::IfcCartesianTransformationOperator2D>(); } void Ifc4x3_tc1::IfcSurfaceTexture::setTextureTransform(const ::Ifc4x3_tc1::IfcCartesianTransformationOperator2D& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } std::optional< std::vector< std::string > /*[1:?]*/ > Ifc4x3_tc1::IfcSurfaceTexture::Parameter() const { if(get_attribute_value(4).isNull()) { return std::nullopt; } std::vector< std::string > /*[1:?]*/ v = get_attribute_value(4); return v; } void Ifc4x3_tc1::IfcSurfaceTexture::setParameter(const std::optional< std::vector< std::string > /*[1:?]*/ >& v) { if (v) {set_attribute_value(4, *v);} else {unset_attribute_value(4);} } @@ -15412,9 +15412,9 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcSurfaceTexture::Class() { return *((i Ifc4x3_tc1::IfcSurfaceTexture Ifc4x3_tc1::IfcSurfaceTexture::initialize(bool v1_RepeatS, bool v2_RepeatT, std::optional< std::string > v3_Mode, ::Ifc4x3_tc1::IfcCartesianTransformationOperator2D v4_TextureTransform, std::optional< std::vector< std::string > /*[1:?]*/ > v5_Parameter) { set_attribute_value(0, (v1_RepeatS));set_attribute_value(1, (v2_RepeatT)); if (v3_Mode) {set_attribute_value(2, (*v3_Mode)); }set_attribute_value(3, (v4_TextureTransform)); if (v5_Parameter) {set_attribute_value(4, (*v5_Parameter)); }; return *this; } // Function implementations for IfcSweptAreaSolid -::Ifc4x3_tc1::IfcProfileDef Ifc4x3_tc1::IfcSweptAreaSolid::SweptArea() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcProfileDef>(); } +::Ifc4x3_tc1::IfcProfileDef Ifc4x3_tc1::IfcSweptAreaSolid::SweptArea() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcProfileDef>(); } void Ifc4x3_tc1::IfcSweptAreaSolid::setSweptArea(const ::Ifc4x3_tc1::IfcProfileDef& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } -::Ifc4x3_tc1::IfcAxis2Placement3D Ifc4x3_tc1::IfcSweptAreaSolid::Position() const { if(get_attribute_value(1).isNull()) { return ::Ifc4x3_tc1::IfcAxis2Placement3D{}; } return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3_tc1::IfcAxis2Placement3D>(); } +::Ifc4x3_tc1::IfcAxis2Placement3D Ifc4x3_tc1::IfcSweptAreaSolid::Position() const { if(get_attribute_value(1).isNull()) { return ::Ifc4x3_tc1::IfcAxis2Placement3D{}; } return ((express::base)(get_attribute_value(1))).as<::Ifc4x3_tc1::IfcAxis2Placement3D>(); } void Ifc4x3_tc1::IfcSweptAreaSolid::setPosition(const ::Ifc4x3_tc1::IfcAxis2Placement3D& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } @@ -15422,7 +15422,7 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcSweptAreaSolid::Class() { return *((i Ifc4x3_tc1::IfcSweptAreaSolid Ifc4x3_tc1::IfcSweptAreaSolid::initialize(::Ifc4x3_tc1::IfcProfileDef v1_SweptArea, ::Ifc4x3_tc1::IfcAxis2Placement3D v2_Position) { set_attribute_value(0, (v1_SweptArea));set_attribute_value(1, (v2_Position));; return *this; } // Function implementations for IfcSweptDiskSolid -::Ifc4x3_tc1::IfcCurve Ifc4x3_tc1::IfcSweptDiskSolid::Directrix() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcCurve>(); } +::Ifc4x3_tc1::IfcCurve Ifc4x3_tc1::IfcSweptDiskSolid::Directrix() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcCurve>(); } void Ifc4x3_tc1::IfcSweptDiskSolid::setDirectrix(const ::Ifc4x3_tc1::IfcCurve& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } double Ifc4x3_tc1::IfcSweptDiskSolid::Radius() const { double v = get_attribute_value(1); return v; } void Ifc4x3_tc1::IfcSweptDiskSolid::setRadius(const double& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } @@ -15446,9 +15446,9 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcSweptDiskSolidPolygonal::Class() { re Ifc4x3_tc1::IfcSweptDiskSolidPolygonal Ifc4x3_tc1::IfcSweptDiskSolidPolygonal::initialize(::Ifc4x3_tc1::IfcCurve v1_Directrix, double v2_Radius, std::optional< double > v3_InnerRadius, std::optional< double > v4_StartParam, std::optional< double > v5_EndParam, std::optional< double > v6_FilletRadius) { set_attribute_value(0, (v1_Directrix));set_attribute_value(1, (v2_Radius)); if (v3_InnerRadius) {set_attribute_value(2, (*v3_InnerRadius)); } if (v4_StartParam) {set_attribute_value(3, (*v4_StartParam)); } if (v5_EndParam) {set_attribute_value(4, (*v5_EndParam)); } if (v6_FilletRadius) {set_attribute_value(5, (*v6_FilletRadius)); }; return *this; } // Function implementations for IfcSweptSurface -::Ifc4x3_tc1::IfcProfileDef Ifc4x3_tc1::IfcSweptSurface::SweptCurve() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcProfileDef>(); } +::Ifc4x3_tc1::IfcProfileDef Ifc4x3_tc1::IfcSweptSurface::SweptCurve() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcProfileDef>(); } void Ifc4x3_tc1::IfcSweptSurface::setSweptCurve(const ::Ifc4x3_tc1::IfcProfileDef& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } -::Ifc4x3_tc1::IfcAxis2Placement3D Ifc4x3_tc1::IfcSweptSurface::Position() const { if(get_attribute_value(1).isNull()) { return ::Ifc4x3_tc1::IfcAxis2Placement3D{}; } return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3_tc1::IfcAxis2Placement3D>(); } +::Ifc4x3_tc1::IfcAxis2Placement3D Ifc4x3_tc1::IfcSweptSurface::Position() const { if(get_attribute_value(1).isNull()) { return ::Ifc4x3_tc1::IfcAxis2Placement3D{}; } return ((express::base)(get_attribute_value(1))).as<::Ifc4x3_tc1::IfcAxis2Placement3D>(); } void Ifc4x3_tc1::IfcSweptSurface::setPosition(const ::Ifc4x3_tc1::IfcAxis2Placement3D& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } @@ -15469,7 +15469,7 @@ void Ifc4x3_tc1::IfcSwitchingDeviceType::setPredefinedType(const ::Ifc4x3_tc1::I const ifcopenshell::entity& Ifc4x3_tc1::IfcSwitchingDeviceType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[1144]); } -Ifc4x3_tc1::IfcSwitchingDeviceType Ifc4x3_tc1::IfcSwitchingDeviceType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcSwitchingDeviceTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcSwitchingDeviceTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_tc1::IfcSwitchingDeviceType Ifc4x3_tc1::IfcSwitchingDeviceType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcSwitchingDeviceTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcSwitchingDeviceTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcSystem @@ -15493,7 +15493,7 @@ void Ifc4x3_tc1::IfcSystemFurnitureElementType::setPredefinedType(const std::opt const ifcopenshell::entity& Ifc4x3_tc1::IfcSystemFurnitureElementType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[1148]); } -Ifc4x3_tc1::IfcSystemFurnitureElementType Ifc4x3_tc1::IfcSystemFurnitureElementType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, std::optional< ::Ifc4x3_tc1::IfcSystemFurnitureElementTypeEnum::Value > v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); } if (v10_PredefinedType) {set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcSystemFurnitureElementTypeEnum::Class(),(size_t)*v10_PredefinedType))); }; return *this; } +Ifc4x3_tc1::IfcSystemFurnitureElementType Ifc4x3_tc1::IfcSystemFurnitureElementType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, std::optional< ::Ifc4x3_tc1::IfcSystemFurnitureElementTypeEnum::Value > v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); } if (v10_PredefinedType) {set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcSystemFurnitureElementTypeEnum::Class(),(size_t)*v10_PredefinedType))); }; return *this; } // Function implementations for IfcTShapeProfileDef double Ifc4x3_tc1::IfcTShapeProfileDef::Depth() const { double v = get_attribute_value(3); return v; } @@ -15522,14 +15522,14 @@ Ifc4x3_tc1::IfcTShapeProfileDef Ifc4x3_tc1::IfcTShapeProfileDef::initialize(::If // Function implementations for IfcTable std::optional< std::string > Ifc4x3_tc1::IfcTable::Name() const { if(get_attribute_value(0).isNull()) { return std::nullopt; } std::string v = get_attribute_value(0); return v; } void Ifc4x3_tc1::IfcTable::setName(const std::optional< std::string >& v) { if (v) {set_attribute_value(0, *v);} else {unset_attribute_value(0);} } -std::optional< std::vector< ::Ifc4x3_tc1::IfcTableRow > > Ifc4x3_tc1::IfcTable::Rows() const { if(get_attribute_value(1).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3_tc1::IfcTableRow>(es); } -void Ifc4x3_tc1::IfcTable::setRows(const std::optional< std::vector< ::Ifc4x3_tc1::IfcTableRow > >& v) { if (v) {set_attribute_value(1, cast_vector(*v));} else {unset_attribute_value(1);} } -std::optional< std::vector< ::Ifc4x3_tc1::IfcTableColumn > > Ifc4x3_tc1::IfcTable::Columns() const { if(get_attribute_value(2).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(2); return cast_vector<::Ifc4x3_tc1::IfcTableColumn>(es); } -void Ifc4x3_tc1::IfcTable::setColumns(const std::optional< std::vector< ::Ifc4x3_tc1::IfcTableColumn > >& v) { if (v) {set_attribute_value(2, cast_vector(*v));} else {unset_attribute_value(2);} } +std::optional< std::vector< ::Ifc4x3_tc1::IfcTableRow > > Ifc4x3_tc1::IfcTable::Rows() const { if(get_attribute_value(1).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3_tc1::IfcTableRow>(es); } +void Ifc4x3_tc1::IfcTable::setRows(const std::optional< std::vector< ::Ifc4x3_tc1::IfcTableRow > >& v) { if (v) {set_attribute_value(1, cast_vector(*v));} else {unset_attribute_value(1);} } +std::optional< std::vector< ::Ifc4x3_tc1::IfcTableColumn > > Ifc4x3_tc1::IfcTable::Columns() const { if(get_attribute_value(2).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(2); return cast_vector<::Ifc4x3_tc1::IfcTableColumn>(es); } +void Ifc4x3_tc1::IfcTable::setColumns(const std::optional< std::vector< ::Ifc4x3_tc1::IfcTableColumn > >& v) { if (v) {set_attribute_value(2, cast_vector(*v));} else {unset_attribute_value(2);} } const ifcopenshell::entity& Ifc4x3_tc1::IfcTable::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[1150]); } -Ifc4x3_tc1::IfcTable Ifc4x3_tc1::IfcTable::initialize(std::optional< std::string > v1_Name, std::optional< std::vector< ::Ifc4x3_tc1::IfcTableRow > > v2_Rows, std::optional< std::vector< ::Ifc4x3_tc1::IfcTableColumn > > v3_Columns) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); } if (v2_Rows) {set_attribute_value(1, cast_vector(*v2_Rows)); } if (v3_Columns) {set_attribute_value(2, cast_vector(*v3_Columns)); }; return *this; } +Ifc4x3_tc1::IfcTable Ifc4x3_tc1::IfcTable::initialize(std::optional< std::string > v1_Name, std::optional< std::vector< ::Ifc4x3_tc1::IfcTableRow > > v2_Rows, std::optional< std::vector< ::Ifc4x3_tc1::IfcTableColumn > > v3_Columns) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); } if (v2_Rows) {set_attribute_value(1, cast_vector(*v2_Rows)); } if (v3_Columns) {set_attribute_value(2, cast_vector(*v3_Columns)); }; return *this; } // Function implementations for IfcTableColumn std::optional< std::string > Ifc4x3_tc1::IfcTableColumn::Identifier() const { if(get_attribute_value(0).isNull()) { return std::nullopt; } std::string v = get_attribute_value(0); return v; } @@ -15538,9 +15538,9 @@ std::optional< std::string > Ifc4x3_tc1::IfcTableColumn::Name() const { if(get_a void Ifc4x3_tc1::IfcTableColumn::setName(const std::optional< std::string >& v) { if (v) {set_attribute_value(1, *v);} else {unset_attribute_value(1);} } std::optional< std::string > Ifc4x3_tc1::IfcTableColumn::Description() const { if(get_attribute_value(2).isNull()) { return std::nullopt; } std::string v = get_attribute_value(2); return v; } void Ifc4x3_tc1::IfcTableColumn::setDescription(const std::optional< std::string >& v) { if (v) {set_attribute_value(2, *v);} else {unset_attribute_value(2);} } -::Ifc4x3_tc1::IfcUnit Ifc4x3_tc1::IfcTableColumn::Unit() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3_tc1::IfcUnit{}; } return ((express::Base)(get_attribute_value(3))).as<::Ifc4x3_tc1::IfcUnit>(); } +::Ifc4x3_tc1::IfcUnit Ifc4x3_tc1::IfcTableColumn::Unit() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3_tc1::IfcUnit{}; } return ((express::base)(get_attribute_value(3))).as<::Ifc4x3_tc1::IfcUnit>(); } void Ifc4x3_tc1::IfcTableColumn::setUnit(const ::Ifc4x3_tc1::IfcUnit& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } -::Ifc4x3_tc1::IfcReference Ifc4x3_tc1::IfcTableColumn::ReferencePath() const { if(get_attribute_value(4).isNull()) { return ::Ifc4x3_tc1::IfcReference{}; } return ((express::Base)(get_attribute_value(4))).as<::Ifc4x3_tc1::IfcReference>(); } +::Ifc4x3_tc1::IfcReference Ifc4x3_tc1::IfcTableColumn::ReferencePath() const { if(get_attribute_value(4).isNull()) { return ::Ifc4x3_tc1::IfcReference{}; } return ((express::base)(get_attribute_value(4))).as<::Ifc4x3_tc1::IfcReference>(); } void Ifc4x3_tc1::IfcTableColumn::setReferencePath(const ::Ifc4x3_tc1::IfcReference& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } @@ -15548,14 +15548,14 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcTableColumn::Class() { return *((ifco Ifc4x3_tc1::IfcTableColumn Ifc4x3_tc1::IfcTableColumn::initialize(std::optional< std::string > v1_Identifier, std::optional< std::string > v2_Name, std::optional< std::string > v3_Description, ::Ifc4x3_tc1::IfcUnit v4_Unit, ::Ifc4x3_tc1::IfcReference v5_ReferencePath) { if (v1_Identifier) {set_attribute_value(0, (*v1_Identifier)); } if (v2_Name) {set_attribute_value(1, (*v2_Name)); } if (v3_Description) {set_attribute_value(2, (*v3_Description)); }set_attribute_value(3, (v4_Unit));set_attribute_value(4, (v5_ReferencePath));; return *this; } // Function implementations for IfcTableRow -std::optional< std::vector< ::Ifc4x3_tc1::IfcValue > > Ifc4x3_tc1::IfcTableRow::RowCells() const { if(get_attribute_value(0).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3_tc1::IfcValue>(es); } -void Ifc4x3_tc1::IfcTableRow::setRowCells(const std::optional< std::vector< ::Ifc4x3_tc1::IfcValue > >& v) { if (v) {set_attribute_value(0, cast_vector(*v));} else {unset_attribute_value(0);} } +std::optional< std::vector< ::Ifc4x3_tc1::IfcValue > > Ifc4x3_tc1::IfcTableRow::RowCells() const { if(get_attribute_value(0).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3_tc1::IfcValue>(es); } +void Ifc4x3_tc1::IfcTableRow::setRowCells(const std::optional< std::vector< ::Ifc4x3_tc1::IfcValue > >& v) { if (v) {set_attribute_value(0, cast_vector(*v));} else {unset_attribute_value(0);} } std::optional< bool > Ifc4x3_tc1::IfcTableRow::IsHeading() const { if(get_attribute_value(1).isNull()) { return std::nullopt; } bool v = get_attribute_value(1); return v; } void Ifc4x3_tc1::IfcTableRow::setIsHeading(const std::optional< bool >& v) { if (v) {set_attribute_value(1, *v);} else {unset_attribute_value(1);} } const ifcopenshell::entity& Ifc4x3_tc1::IfcTableRow::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[1152]); } -Ifc4x3_tc1::IfcTableRow Ifc4x3_tc1::IfcTableRow::initialize(std::optional< std::vector< ::Ifc4x3_tc1::IfcValue > > v1_RowCells, std::optional< bool > v2_IsHeading) { if (v1_RowCells) {set_attribute_value(0, cast_vector(*v1_RowCells)); } if (v2_IsHeading) {set_attribute_value(1, (*v2_IsHeading)); }; return *this; } +Ifc4x3_tc1::IfcTableRow Ifc4x3_tc1::IfcTableRow::initialize(std::optional< std::vector< ::Ifc4x3_tc1::IfcValue > > v1_RowCells, std::optional< bool > v2_IsHeading) { if (v1_RowCells) {set_attribute_value(0, cast_vector(*v1_RowCells)); } if (v2_IsHeading) {set_attribute_value(1, (*v2_IsHeading)); }; return *this; } // Function implementations for IfcTank std::optional< ::Ifc4x3_tc1::IfcTankTypeEnum::Value > Ifc4x3_tc1::IfcTank::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_tc1::IfcTankTypeEnum::FromString(get_attribute_value(8)); } @@ -15571,7 +15571,7 @@ void Ifc4x3_tc1::IfcTankType::setPredefinedType(const ::Ifc4x3_tc1::IfcTankTypeE const ifcopenshell::entity& Ifc4x3_tc1::IfcTankType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[1154]); } -Ifc4x3_tc1::IfcTankType Ifc4x3_tc1::IfcTankType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcTankTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcTankTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_tc1::IfcTankType Ifc4x3_tc1::IfcTankType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcTankTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcTankTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcTask std::optional< std::string > Ifc4x3_tc1::IfcTask::Status() const { if(get_attribute_value(7).isNull()) { return std::nullopt; } std::string v = get_attribute_value(7); return v; } @@ -15582,7 +15582,7 @@ bool Ifc4x3_tc1::IfcTask::IsMilestone() const { bool v = get_attribute_value(9) void Ifc4x3_tc1::IfcTask::setIsMilestone(const bool& v) { set_attribute_value(9, v);if constexpr (false)unset_attribute_value(9); } std::optional< int64_t > Ifc4x3_tc1::IfcTask::Priority() const { if(get_attribute_value(10).isNull()) { return std::nullopt; } int64_t v = get_attribute_value(10); return v; } void Ifc4x3_tc1::IfcTask::setPriority(const std::optional< int64_t >& v) { if (v) {set_attribute_value(10, *v);} else {unset_attribute_value(10);} } -::Ifc4x3_tc1::IfcTaskTime Ifc4x3_tc1::IfcTask::TaskTime() const { if(get_attribute_value(11).isNull()) { return ::Ifc4x3_tc1::IfcTaskTime{}; } return ((express::Base)(get_attribute_value(11))).as<::Ifc4x3_tc1::IfcTaskTime>(); } +::Ifc4x3_tc1::IfcTaskTime Ifc4x3_tc1::IfcTask::TaskTime() const { if(get_attribute_value(11).isNull()) { return ::Ifc4x3_tc1::IfcTaskTime{}; } return ((express::base)(get_attribute_value(11))).as<::Ifc4x3_tc1::IfcTaskTime>(); } void Ifc4x3_tc1::IfcTask::setTaskTime(const ::Ifc4x3_tc1::IfcTaskTime& v) { set_attribute_value(11, v);if constexpr (false)unset_attribute_value(11); } std::optional< ::Ifc4x3_tc1::IfcTaskTypeEnum::Value > Ifc4x3_tc1::IfcTask::PredefinedType() const { if(get_attribute_value(12).isNull()) { return std::nullopt; } return ::Ifc4x3_tc1::IfcTaskTypeEnum::FromString(get_attribute_value(12)); } void Ifc4x3_tc1::IfcTask::setPredefinedType(const std::optional< ::Ifc4x3_tc1::IfcTaskTypeEnum::Value >& v) { if (v) {set_attribute_value(12, enumeration_reference(&::Ifc4x3_tc1::IfcTaskTypeEnum::Class(), (size_t) *v));} else {unset_attribute_value(12);} } @@ -15632,7 +15632,7 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcTaskTime::Class() { return *((ifcopen Ifc4x3_tc1::IfcTaskTime Ifc4x3_tc1::IfcTaskTime::initialize(std::optional< std::string > v1_Name, std::optional< ::Ifc4x3_tc1::IfcDataOriginEnum::Value > v2_DataOrigin, std::optional< std::string > v3_UserDefinedDataOrigin, std::optional< ::Ifc4x3_tc1::IfcTaskDurationEnum::Value > v4_DurationType, std::optional< std::string > v5_ScheduleDuration, std::optional< std::string > v6_ScheduleStart, std::optional< std::string > v7_ScheduleFinish, std::optional< std::string > v8_EarlyStart, std::optional< std::string > v9_EarlyFinish, std::optional< std::string > v10_LateStart, std::optional< std::string > v11_LateFinish, std::optional< std::string > v12_FreeFloat, std::optional< std::string > v13_TotalFloat, std::optional< bool > v14_IsCritical, std::optional< std::string > v15_StatusTime, std::optional< std::string > v16_ActualDuration, std::optional< std::string > v17_ActualStart, std::optional< std::string > v18_ActualFinish, std::optional< std::string > v19_RemainingTime, std::optional< double > v20_Completion) { if (v1_Name) {set_attribute_value(0, (*v1_Name)); } if (v2_DataOrigin) {set_attribute_value(1, (enumeration_reference(&::Ifc4x3_tc1::IfcDataOriginEnum::Class(),(size_t)*v2_DataOrigin))); } if (v3_UserDefinedDataOrigin) {set_attribute_value(2, (*v3_UserDefinedDataOrigin)); } if (v4_DurationType) {set_attribute_value(3, (enumeration_reference(&::Ifc4x3_tc1::IfcTaskDurationEnum::Class(),(size_t)*v4_DurationType))); } if (v5_ScheduleDuration) {set_attribute_value(4, (*v5_ScheduleDuration)); } if (v6_ScheduleStart) {set_attribute_value(5, (*v6_ScheduleStart)); } if (v7_ScheduleFinish) {set_attribute_value(6, (*v7_ScheduleFinish)); } if (v8_EarlyStart) {set_attribute_value(7, (*v8_EarlyStart)); } if (v9_EarlyFinish) {set_attribute_value(8, (*v9_EarlyFinish)); } if (v10_LateStart) {set_attribute_value(9, (*v10_LateStart)); } if (v11_LateFinish) {set_attribute_value(10, (*v11_LateFinish)); } if (v12_FreeFloat) {set_attribute_value(11, (*v12_FreeFloat)); } if (v13_TotalFloat) {set_attribute_value(12, (*v13_TotalFloat)); } if (v14_IsCritical) {set_attribute_value(13, (*v14_IsCritical)); } if (v15_StatusTime) {set_attribute_value(14, (*v15_StatusTime)); } if (v16_ActualDuration) {set_attribute_value(15, (*v16_ActualDuration)); } if (v17_ActualStart) {set_attribute_value(16, (*v17_ActualStart)); } if (v18_ActualFinish) {set_attribute_value(17, (*v18_ActualFinish)); } if (v19_RemainingTime) {set_attribute_value(18, (*v19_RemainingTime)); } if (v20_Completion) {set_attribute_value(19, (*v20_Completion)); }; return *this; } // Function implementations for IfcTaskTimeRecurring -::Ifc4x3_tc1::IfcRecurrencePattern Ifc4x3_tc1::IfcTaskTimeRecurring::Recurrence() const { return ((express::Base)(get_attribute_value(20))).as<::Ifc4x3_tc1::IfcRecurrencePattern>(); } +::Ifc4x3_tc1::IfcRecurrencePattern Ifc4x3_tc1::IfcTaskTimeRecurring::Recurrence() const { return ((express::base)(get_attribute_value(20))).as<::Ifc4x3_tc1::IfcRecurrencePattern>(); } void Ifc4x3_tc1::IfcTaskTimeRecurring::setRecurrence(const ::Ifc4x3_tc1::IfcRecurrencePattern& v) { set_attribute_value(20, v);if constexpr (false)unset_attribute_value(20); } @@ -15647,7 +15647,7 @@ void Ifc4x3_tc1::IfcTaskType::setWorkMethod(const std::optional< std::string >& const ifcopenshell::entity& Ifc4x3_tc1::IfcTaskType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[1160]); } -Ifc4x3_tc1::IfcTaskType Ifc4x3_tc1::IfcTaskType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::string > v7_Identification, std::optional< std::string > v8_LongDescription, std::optional< std::string > v9_ProcessType, ::Ifc4x3_tc1::IfcTaskTypeEnum::Value v10_PredefinedType, std::optional< std::string > v11_WorkMethod) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_Identification) {set_attribute_value(6, (*v7_Identification)); } if (v8_LongDescription) {set_attribute_value(7, (*v8_LongDescription)); } if (v9_ProcessType) {set_attribute_value(8, (*v9_ProcessType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcTaskTypeEnum::Class(),(size_t)v10_PredefinedType))); if (v11_WorkMethod) {set_attribute_value(10, (*v11_WorkMethod)); }; return *this; } +Ifc4x3_tc1::IfcTaskType Ifc4x3_tc1::IfcTaskType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::string > v7_Identification, std::optional< std::string > v8_LongDescription, std::optional< std::string > v9_ProcessType, ::Ifc4x3_tc1::IfcTaskTypeEnum::Value v10_PredefinedType, std::optional< std::string > v11_WorkMethod) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_Identification) {set_attribute_value(6, (*v7_Identification)); } if (v8_LongDescription) {set_attribute_value(7, (*v8_LongDescription)); } if (v9_ProcessType) {set_attribute_value(8, (*v9_ProcessType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcTaskTypeEnum::Class(),(size_t)v10_PredefinedType))); if (v11_WorkMethod) {set_attribute_value(10, (*v11_WorkMethod)); }; return *this; } // Function implementations for IfcTelecomAddress std::optional< std::vector< std::string > /*[1:?]*/ > Ifc4x3_tc1::IfcTelecomAddress::TelephoneNumbers() const { if(get_attribute_value(3).isNull()) { return std::nullopt; } std::vector< std::string > /*[1:?]*/ v = get_attribute_value(3); return v; } @@ -15703,7 +15703,7 @@ void Ifc4x3_tc1::IfcTendonAnchorType::setPredefinedType(const ::Ifc4x3_tc1::IfcT const ifcopenshell::entity& Ifc4x3_tc1::IfcTendonAnchorType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[1167]); } -Ifc4x3_tc1::IfcTendonAnchorType Ifc4x3_tc1::IfcTendonAnchorType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcTendonAnchorTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcTendonAnchorTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_tc1::IfcTendonAnchorType Ifc4x3_tc1::IfcTendonAnchorType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcTendonAnchorTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcTendonAnchorTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcTendonConduit ::Ifc4x3_tc1::IfcTendonConduitTypeEnum::Value Ifc4x3_tc1::IfcTendonConduit::PredefinedType() const { return ::Ifc4x3_tc1::IfcTendonConduitTypeEnum::FromString(get_attribute_value(9)); } @@ -15719,7 +15719,7 @@ void Ifc4x3_tc1::IfcTendonConduitType::setPredefinedType(const ::Ifc4x3_tc1::Ifc const ifcopenshell::entity& Ifc4x3_tc1::IfcTendonConduitType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[1170]); } -Ifc4x3_tc1::IfcTendonConduitType Ifc4x3_tc1::IfcTendonConduitType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcTendonConduitTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcTendonConduitTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_tc1::IfcTendonConduitType Ifc4x3_tc1::IfcTendonConduitType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcTendonConduitTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcTendonConduitTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcTendonType ::Ifc4x3_tc1::IfcTendonTypeEnum::Value Ifc4x3_tc1::IfcTendonType::PredefinedType() const { return ::Ifc4x3_tc1::IfcTendonTypeEnum::FromString(get_attribute_value(9)); } @@ -15733,10 +15733,10 @@ void Ifc4x3_tc1::IfcTendonType::setSheathDiameter(const std::optional< double >& const ifcopenshell::entity& Ifc4x3_tc1::IfcTendonType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[1172]); } -Ifc4x3_tc1::IfcTendonType Ifc4x3_tc1::IfcTendonType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcTendonTypeEnum::Value v10_PredefinedType, std::optional< double > v11_NominalDiameter, std::optional< double > v12_CrossSectionArea, std::optional< double > v13_SheathDiameter) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcTendonTypeEnum::Class(),(size_t)v10_PredefinedType))); if (v11_NominalDiameter) {set_attribute_value(10, (*v11_NominalDiameter)); } if (v12_CrossSectionArea) {set_attribute_value(11, (*v12_CrossSectionArea)); } if (v13_SheathDiameter) {set_attribute_value(12, (*v13_SheathDiameter)); }; return *this; } +Ifc4x3_tc1::IfcTendonType Ifc4x3_tc1::IfcTendonType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcTendonTypeEnum::Value v10_PredefinedType, std::optional< double > v11_NominalDiameter, std::optional< double > v12_CrossSectionArea, std::optional< double > v13_SheathDiameter) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcTendonTypeEnum::Class(),(size_t)v10_PredefinedType))); if (v11_NominalDiameter) {set_attribute_value(10, (*v11_NominalDiameter)); } if (v12_CrossSectionArea) {set_attribute_value(11, (*v12_CrossSectionArea)); } if (v13_SheathDiameter) {set_attribute_value(12, (*v13_SheathDiameter)); }; return *this; } // Function implementations for IfcTessellatedFaceSet -::Ifc4x3_tc1::IfcCartesianPointList3D Ifc4x3_tc1::IfcTessellatedFaceSet::Coordinates() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcCartesianPointList3D>(); } +::Ifc4x3_tc1::IfcCartesianPointList3D Ifc4x3_tc1::IfcTessellatedFaceSet::Coordinates() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcCartesianPointList3D>(); } void Ifc4x3_tc1::IfcTessellatedFaceSet::setCoordinates(const ::Ifc4x3_tc1::IfcCartesianPointList3D& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } std::vector<::Ifc4x3_tc1::IfcIndexedColourMap> Ifc4x3_tc1::IfcTessellatedFaceSet::HasColours() const { return cast_vector(file()->get_inverse(data()->id(), IFC4X3_TC1_types[541], 0)); } @@ -15754,7 +15754,7 @@ Ifc4x3_tc1::IfcTessellatedItem Ifc4x3_tc1::IfcTessellatedItem::initialize() { ; // Function implementations for IfcTextLiteral std::string Ifc4x3_tc1::IfcTextLiteral::Literal() const { std::string v = get_attribute_value(0); return v; } void Ifc4x3_tc1::IfcTextLiteral::setLiteral(const std::string& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } -::Ifc4x3_tc1::IfcAxis2Placement Ifc4x3_tc1::IfcTextLiteral::Placement() const { return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3_tc1::IfcAxis2Placement>(); } +::Ifc4x3_tc1::IfcAxis2Placement Ifc4x3_tc1::IfcTextLiteral::Placement() const { return ((express::base)(get_attribute_value(1))).as<::Ifc4x3_tc1::IfcAxis2Placement>(); } void Ifc4x3_tc1::IfcTextLiteral::setPlacement(const ::Ifc4x3_tc1::IfcAxis2Placement& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } ::Ifc4x3_tc1::IfcTextPath::Value Ifc4x3_tc1::IfcTextLiteral::Path() const { return ::Ifc4x3_tc1::IfcTextPath::FromString(get_attribute_value(2)); } void Ifc4x3_tc1::IfcTextLiteral::setPath(const ::Ifc4x3_tc1::IfcTextPath::Value& v) { set_attribute_value(2, enumeration_reference(&::Ifc4x3_tc1::IfcTextPath::Class(), (size_t) v));if constexpr (false)unset_attribute_value(2); } @@ -15764,7 +15764,7 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcTextLiteral::Class() { return *((ifco Ifc4x3_tc1::IfcTextLiteral Ifc4x3_tc1::IfcTextLiteral::initialize(std::string v1_Literal, ::Ifc4x3_tc1::IfcAxis2Placement v2_Placement, ::Ifc4x3_tc1::IfcTextPath::Value v3_Path) { set_attribute_value(0, (v1_Literal));set_attribute_value(1, (v2_Placement));set_attribute_value(2, (enumeration_reference(&::Ifc4x3_tc1::IfcTextPath::Class(),(size_t)v3_Path)));; return *this; } // Function implementations for IfcTextLiteralWithExtent -::Ifc4x3_tc1::IfcPlanarExtent Ifc4x3_tc1::IfcTextLiteralWithExtent::Extent() const { return ((express::Base)(get_attribute_value(3))).as<::Ifc4x3_tc1::IfcPlanarExtent>(); } +::Ifc4x3_tc1::IfcPlanarExtent Ifc4x3_tc1::IfcTextLiteralWithExtent::Extent() const { return ((express::base)(get_attribute_value(3))).as<::Ifc4x3_tc1::IfcPlanarExtent>(); } void Ifc4x3_tc1::IfcTextLiteralWithExtent::setExtent(const ::Ifc4x3_tc1::IfcPlanarExtent& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } std::string Ifc4x3_tc1::IfcTextLiteralWithExtent::BoxAlignment() const { std::string v = get_attribute_value(4); return v; } void Ifc4x3_tc1::IfcTextLiteralWithExtent::setBoxAlignment(const std::string& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } @@ -15774,11 +15774,11 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcTextLiteralWithExtent::Class() { retu Ifc4x3_tc1::IfcTextLiteralWithExtent Ifc4x3_tc1::IfcTextLiteralWithExtent::initialize(std::string v1_Literal, ::Ifc4x3_tc1::IfcAxis2Placement v2_Placement, ::Ifc4x3_tc1::IfcTextPath::Value v3_Path, ::Ifc4x3_tc1::IfcPlanarExtent v4_Extent, std::string v5_BoxAlignment) { set_attribute_value(0, (v1_Literal));set_attribute_value(1, (v2_Placement));set_attribute_value(2, (enumeration_reference(&::Ifc4x3_tc1::IfcTextPath::Class(),(size_t)v3_Path)));set_attribute_value(3, (v4_Extent));set_attribute_value(4, (v5_BoxAlignment));; return *this; } // Function implementations for IfcTextStyle -::Ifc4x3_tc1::IfcTextStyleForDefinedFont Ifc4x3_tc1::IfcTextStyle::TextCharacterAppearance() const { if(get_attribute_value(1).isNull()) { return ::Ifc4x3_tc1::IfcTextStyleForDefinedFont{}; } return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3_tc1::IfcTextStyleForDefinedFont>(); } +::Ifc4x3_tc1::IfcTextStyleForDefinedFont Ifc4x3_tc1::IfcTextStyle::TextCharacterAppearance() const { if(get_attribute_value(1).isNull()) { return ::Ifc4x3_tc1::IfcTextStyleForDefinedFont{}; } return ((express::base)(get_attribute_value(1))).as<::Ifc4x3_tc1::IfcTextStyleForDefinedFont>(); } void Ifc4x3_tc1::IfcTextStyle::setTextCharacterAppearance(const ::Ifc4x3_tc1::IfcTextStyleForDefinedFont& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } -::Ifc4x3_tc1::IfcTextStyleTextModel Ifc4x3_tc1::IfcTextStyle::TextStyle() const { if(get_attribute_value(2).isNull()) { return ::Ifc4x3_tc1::IfcTextStyleTextModel{}; } return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3_tc1::IfcTextStyleTextModel>(); } +::Ifc4x3_tc1::IfcTextStyleTextModel Ifc4x3_tc1::IfcTextStyle::TextStyle() const { if(get_attribute_value(2).isNull()) { return ::Ifc4x3_tc1::IfcTextStyleTextModel{}; } return ((express::base)(get_attribute_value(2))).as<::Ifc4x3_tc1::IfcTextStyleTextModel>(); } void Ifc4x3_tc1::IfcTextStyle::setTextStyle(const ::Ifc4x3_tc1::IfcTextStyleTextModel& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } -::Ifc4x3_tc1::IfcTextFontSelect Ifc4x3_tc1::IfcTextStyle::TextFontStyle() const { return ((express::Base)(get_attribute_value(3))).as<::Ifc4x3_tc1::IfcTextFontSelect>(); } +::Ifc4x3_tc1::IfcTextFontSelect Ifc4x3_tc1::IfcTextStyle::TextFontStyle() const { return ((express::base)(get_attribute_value(3))).as<::Ifc4x3_tc1::IfcTextFontSelect>(); } void Ifc4x3_tc1::IfcTextStyle::setTextFontStyle(const ::Ifc4x3_tc1::IfcTextFontSelect& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } std::optional< bool > Ifc4x3_tc1::IfcTextStyle::ModelOrDraughting() const { if(get_attribute_value(4).isNull()) { return std::nullopt; } bool v = get_attribute_value(4); return v; } void Ifc4x3_tc1::IfcTextStyle::setModelOrDraughting(const std::optional< bool >& v) { if (v) {set_attribute_value(4, *v);} else {unset_attribute_value(4);} } @@ -15796,7 +15796,7 @@ std::optional< std::string > Ifc4x3_tc1::IfcTextStyleFontModel::FontVariant() co void Ifc4x3_tc1::IfcTextStyleFontModel::setFontVariant(const std::optional< std::string >& v) { if (v) {set_attribute_value(3, *v);} else {unset_attribute_value(3);} } std::optional< std::string > Ifc4x3_tc1::IfcTextStyleFontModel::FontWeight() const { if(get_attribute_value(4).isNull()) { return std::nullopt; } std::string v = get_attribute_value(4); return v; } void Ifc4x3_tc1::IfcTextStyleFontModel::setFontWeight(const std::optional< std::string >& v) { if (v) {set_attribute_value(4, *v);} else {unset_attribute_value(4);} } -::Ifc4x3_tc1::IfcSizeSelect Ifc4x3_tc1::IfcTextStyleFontModel::FontSize() const { return ((express::Base)(get_attribute_value(5))).as<::Ifc4x3_tc1::IfcSizeSelect>(); } +::Ifc4x3_tc1::IfcSizeSelect Ifc4x3_tc1::IfcTextStyleFontModel::FontSize() const { return ((express::base)(get_attribute_value(5))).as<::Ifc4x3_tc1::IfcSizeSelect>(); } void Ifc4x3_tc1::IfcTextStyleFontModel::setFontSize(const ::Ifc4x3_tc1::IfcSizeSelect& v) { set_attribute_value(5, v);if constexpr (false)unset_attribute_value(5); } @@ -15804,9 +15804,9 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcTextStyleFontModel::Class() { return Ifc4x3_tc1::IfcTextStyleFontModel Ifc4x3_tc1::IfcTextStyleFontModel::initialize(std::string v1_Name, std::vector< std::string > /*[1:?]*/ v2_FontFamily, std::optional< std::string > v3_FontStyle, std::optional< std::string > v4_FontVariant, std::optional< std::string > v5_FontWeight, ::Ifc4x3_tc1::IfcSizeSelect v6_FontSize) { set_attribute_value(0, (v1_Name));set_attribute_value(1, (v2_FontFamily)); if (v3_FontStyle) {set_attribute_value(2, (*v3_FontStyle)); } if (v4_FontVariant) {set_attribute_value(3, (*v4_FontVariant)); } if (v5_FontWeight) {set_attribute_value(4, (*v5_FontWeight)); }set_attribute_value(5, (v6_FontSize));; return *this; } // Function implementations for IfcTextStyleForDefinedFont -::Ifc4x3_tc1::IfcColour Ifc4x3_tc1::IfcTextStyleForDefinedFont::Colour() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcColour>(); } +::Ifc4x3_tc1::IfcColour Ifc4x3_tc1::IfcTextStyleForDefinedFont::Colour() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcColour>(); } void Ifc4x3_tc1::IfcTextStyleForDefinedFont::setColour(const ::Ifc4x3_tc1::IfcColour& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } -::Ifc4x3_tc1::IfcColour Ifc4x3_tc1::IfcTextStyleForDefinedFont::BackgroundColour() const { if(get_attribute_value(1).isNull()) { return ::Ifc4x3_tc1::IfcColour{}; } return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3_tc1::IfcColour>(); } +::Ifc4x3_tc1::IfcColour Ifc4x3_tc1::IfcTextStyleForDefinedFont::BackgroundColour() const { if(get_attribute_value(1).isNull()) { return ::Ifc4x3_tc1::IfcColour{}; } return ((express::base)(get_attribute_value(1))).as<::Ifc4x3_tc1::IfcColour>(); } void Ifc4x3_tc1::IfcTextStyleForDefinedFont::setBackgroundColour(const ::Ifc4x3_tc1::IfcColour& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } @@ -15814,19 +15814,19 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcTextStyleForDefinedFont::Class() { re Ifc4x3_tc1::IfcTextStyleForDefinedFont Ifc4x3_tc1::IfcTextStyleForDefinedFont::initialize(::Ifc4x3_tc1::IfcColour v1_Colour, ::Ifc4x3_tc1::IfcColour v2_BackgroundColour) { set_attribute_value(0, (v1_Colour));set_attribute_value(1, (v2_BackgroundColour));; return *this; } // Function implementations for IfcTextStyleTextModel -::Ifc4x3_tc1::IfcSizeSelect Ifc4x3_tc1::IfcTextStyleTextModel::TextIndent() const { if(get_attribute_value(0).isNull()) { return ::Ifc4x3_tc1::IfcSizeSelect{}; } return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcSizeSelect>(); } +::Ifc4x3_tc1::IfcSizeSelect Ifc4x3_tc1::IfcTextStyleTextModel::TextIndent() const { if(get_attribute_value(0).isNull()) { return ::Ifc4x3_tc1::IfcSizeSelect{}; } return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcSizeSelect>(); } void Ifc4x3_tc1::IfcTextStyleTextModel::setTextIndent(const ::Ifc4x3_tc1::IfcSizeSelect& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } std::optional< std::string > Ifc4x3_tc1::IfcTextStyleTextModel::TextAlign() const { if(get_attribute_value(1).isNull()) { return std::nullopt; } std::string v = get_attribute_value(1); return v; } void Ifc4x3_tc1::IfcTextStyleTextModel::setTextAlign(const std::optional< std::string >& v) { if (v) {set_attribute_value(1, *v);} else {unset_attribute_value(1);} } std::optional< std::string > Ifc4x3_tc1::IfcTextStyleTextModel::TextDecoration() const { if(get_attribute_value(2).isNull()) { return std::nullopt; } std::string v = get_attribute_value(2); return v; } void Ifc4x3_tc1::IfcTextStyleTextModel::setTextDecoration(const std::optional< std::string >& v) { if (v) {set_attribute_value(2, *v);} else {unset_attribute_value(2);} } -::Ifc4x3_tc1::IfcSizeSelect Ifc4x3_tc1::IfcTextStyleTextModel::LetterSpacing() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3_tc1::IfcSizeSelect{}; } return ((express::Base)(get_attribute_value(3))).as<::Ifc4x3_tc1::IfcSizeSelect>(); } +::Ifc4x3_tc1::IfcSizeSelect Ifc4x3_tc1::IfcTextStyleTextModel::LetterSpacing() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3_tc1::IfcSizeSelect{}; } return ((express::base)(get_attribute_value(3))).as<::Ifc4x3_tc1::IfcSizeSelect>(); } void Ifc4x3_tc1::IfcTextStyleTextModel::setLetterSpacing(const ::Ifc4x3_tc1::IfcSizeSelect& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } -::Ifc4x3_tc1::IfcSizeSelect Ifc4x3_tc1::IfcTextStyleTextModel::WordSpacing() const { if(get_attribute_value(4).isNull()) { return ::Ifc4x3_tc1::IfcSizeSelect{}; } return ((express::Base)(get_attribute_value(4))).as<::Ifc4x3_tc1::IfcSizeSelect>(); } +::Ifc4x3_tc1::IfcSizeSelect Ifc4x3_tc1::IfcTextStyleTextModel::WordSpacing() const { if(get_attribute_value(4).isNull()) { return ::Ifc4x3_tc1::IfcSizeSelect{}; } return ((express::base)(get_attribute_value(4))).as<::Ifc4x3_tc1::IfcSizeSelect>(); } void Ifc4x3_tc1::IfcTextStyleTextModel::setWordSpacing(const ::Ifc4x3_tc1::IfcSizeSelect& v) { set_attribute_value(4, v);if constexpr (false)unset_attribute_value(4); } std::optional< std::string > Ifc4x3_tc1::IfcTextStyleTextModel::TextTransform() const { if(get_attribute_value(5).isNull()) { return std::nullopt; } std::string v = get_attribute_value(5); return v; } void Ifc4x3_tc1::IfcTextStyleTextModel::setTextTransform(const std::optional< std::string >& v) { if (v) {set_attribute_value(5, *v);} else {unset_attribute_value(5);} } -::Ifc4x3_tc1::IfcSizeSelect Ifc4x3_tc1::IfcTextStyleTextModel::LineHeight() const { if(get_attribute_value(6).isNull()) { return ::Ifc4x3_tc1::IfcSizeSelect{}; } return ((express::Base)(get_attribute_value(6))).as<::Ifc4x3_tc1::IfcSizeSelect>(); } +::Ifc4x3_tc1::IfcSizeSelect Ifc4x3_tc1::IfcTextStyleTextModel::LineHeight() const { if(get_attribute_value(6).isNull()) { return ::Ifc4x3_tc1::IfcSizeSelect{}; } return ((express::base)(get_attribute_value(6))).as<::Ifc4x3_tc1::IfcSizeSelect>(); } void Ifc4x3_tc1::IfcTextStyleTextModel::setLineHeight(const ::Ifc4x3_tc1::IfcSizeSelect& v) { set_attribute_value(6, v);if constexpr (false)unset_attribute_value(6); } @@ -15834,12 +15834,12 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcTextStyleTextModel::Class() { return Ifc4x3_tc1::IfcTextStyleTextModel Ifc4x3_tc1::IfcTextStyleTextModel::initialize(::Ifc4x3_tc1::IfcSizeSelect v1_TextIndent, std::optional< std::string > v2_TextAlign, std::optional< std::string > v3_TextDecoration, ::Ifc4x3_tc1::IfcSizeSelect v4_LetterSpacing, ::Ifc4x3_tc1::IfcSizeSelect v5_WordSpacing, std::optional< std::string > v6_TextTransform, ::Ifc4x3_tc1::IfcSizeSelect v7_LineHeight) { set_attribute_value(0, (v1_TextIndent)); if (v2_TextAlign) {set_attribute_value(1, (*v2_TextAlign)); } if (v3_TextDecoration) {set_attribute_value(2, (*v3_TextDecoration)); }set_attribute_value(3, (v4_LetterSpacing));set_attribute_value(4, (v5_WordSpacing)); if (v6_TextTransform) {set_attribute_value(5, (*v6_TextTransform)); }set_attribute_value(6, (v7_LineHeight));; return *this; } // Function implementations for IfcTextureCoordinate -std::vector< ::Ifc4x3_tc1::IfcSurfaceTexture > Ifc4x3_tc1::IfcTextureCoordinate::Maps() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3_tc1::IfcSurfaceTexture>(es); } -void Ifc4x3_tc1::IfcTextureCoordinate::setMaps(const std::vector< ::Ifc4x3_tc1::IfcSurfaceTexture >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } +std::vector< ::Ifc4x3_tc1::IfcSurfaceTexture > Ifc4x3_tc1::IfcTextureCoordinate::Maps() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3_tc1::IfcSurfaceTexture>(es); } +void Ifc4x3_tc1::IfcTextureCoordinate::setMaps(const std::vector< ::Ifc4x3_tc1::IfcSurfaceTexture >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } const ifcopenshell::entity& Ifc4x3_tc1::IfcTextureCoordinate::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[1189]); } -Ifc4x3_tc1::IfcTextureCoordinate Ifc4x3_tc1::IfcTextureCoordinate::initialize(std::vector< ::Ifc4x3_tc1::IfcSurfaceTexture > v1_Maps) { set_attribute_value(0, cast_vector(v1_Maps));; return *this; } +Ifc4x3_tc1::IfcTextureCoordinate Ifc4x3_tc1::IfcTextureCoordinate::initialize(std::vector< ::Ifc4x3_tc1::IfcSurfaceTexture > v1_Maps) { set_attribute_value(0, cast_vector(v1_Maps));; return *this; } // Function implementations for IfcTextureCoordinateGenerator std::string Ifc4x3_tc1::IfcTextureCoordinateGenerator::Mode() const { std::string v = get_attribute_value(1); return v; } @@ -15849,12 +15849,12 @@ void Ifc4x3_tc1::IfcTextureCoordinateGenerator::setParameter(const std::optional const ifcopenshell::entity& Ifc4x3_tc1::IfcTextureCoordinateGenerator::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[1190]); } -Ifc4x3_tc1::IfcTextureCoordinateGenerator Ifc4x3_tc1::IfcTextureCoordinateGenerator::initialize(std::vector< ::Ifc4x3_tc1::IfcSurfaceTexture > v1_Maps, std::string v2_Mode, std::optional< std::vector< double > /*[1:?]*/ > v3_Parameter) { set_attribute_value(0, cast_vector(v1_Maps));set_attribute_value(1, (v2_Mode)); if (v3_Parameter) {set_attribute_value(2, (*v3_Parameter)); }; return *this; } +Ifc4x3_tc1::IfcTextureCoordinateGenerator Ifc4x3_tc1::IfcTextureCoordinateGenerator::initialize(std::vector< ::Ifc4x3_tc1::IfcSurfaceTexture > v1_Maps, std::string v2_Mode, std::optional< std::vector< double > /*[1:?]*/ > v3_Parameter) { set_attribute_value(0, cast_vector(v1_Maps));set_attribute_value(1, (v2_Mode)); if (v3_Parameter) {set_attribute_value(2, (*v3_Parameter)); }; return *this; } // Function implementations for IfcTextureCoordinateIndices std::vector< int64_t > /*[3:?]*/ Ifc4x3_tc1::IfcTextureCoordinateIndices::TexCoordIndex() const { std::vector< int64_t > /*[3:?]*/ v = get_attribute_value(0); return v; } void Ifc4x3_tc1::IfcTextureCoordinateIndices::setTexCoordIndex(const std::vector< int64_t > /*[3:?]*/& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } -::Ifc4x3_tc1::IfcIndexedPolygonalFace Ifc4x3_tc1::IfcTextureCoordinateIndices::TexCoordsOf() const { return ((express::Base)(get_attribute_value(1))).as<::Ifc4x3_tc1::IfcIndexedPolygonalFace>(); } +::Ifc4x3_tc1::IfcIndexedPolygonalFace Ifc4x3_tc1::IfcTextureCoordinateIndices::TexCoordsOf() const { return ((express::base)(get_attribute_value(1))).as<::Ifc4x3_tc1::IfcIndexedPolygonalFace>(); } void Ifc4x3_tc1::IfcTextureCoordinateIndices::setTexCoordsOf(const ::Ifc4x3_tc1::IfcIndexedPolygonalFace& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } std::vector<::Ifc4x3_tc1::IfcIndexedPolygonalTextureMap> Ifc4x3_tc1::IfcTextureCoordinateIndices::ToTexMap() const { return cast_vector(file()->get_inverse(data()->id(), IFC4X3_TC1_types[545], 3)); } @@ -15871,14 +15871,14 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcTextureCoordinateIndicesWithVoids::Cl Ifc4x3_tc1::IfcTextureCoordinateIndicesWithVoids Ifc4x3_tc1::IfcTextureCoordinateIndicesWithVoids::initialize(std::vector< int64_t > /*[3:?]*/ v1_TexCoordIndex, ::Ifc4x3_tc1::IfcIndexedPolygonalFace v2_TexCoordsOf, std::vector< std::vector< int64_t > > v3_InnerTexCoordIndices) { set_attribute_value(0, (v1_TexCoordIndex));set_attribute_value(1, (v2_TexCoordsOf));set_attribute_value(2, (v3_InnerTexCoordIndices));; return *this; } // Function implementations for IfcTextureMap -std::vector< ::Ifc4x3_tc1::IfcTextureVertex > Ifc4x3_tc1::IfcTextureMap::Vertices() const { std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3_tc1::IfcTextureVertex>(es); } -void Ifc4x3_tc1::IfcTextureMap::setVertices(const std::vector< ::Ifc4x3_tc1::IfcTextureVertex >& v) { set_attribute_value(1, cast_vector(v));if constexpr (false)unset_attribute_value(1); } -::Ifc4x3_tc1::IfcFace Ifc4x3_tc1::IfcTextureMap::MappedTo() const { return ((express::Base)(get_attribute_value(2))).as<::Ifc4x3_tc1::IfcFace>(); } +std::vector< ::Ifc4x3_tc1::IfcTextureVertex > Ifc4x3_tc1::IfcTextureMap::Vertices() const { std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3_tc1::IfcTextureVertex>(es); } +void Ifc4x3_tc1::IfcTextureMap::setVertices(const std::vector< ::Ifc4x3_tc1::IfcTextureVertex >& v) { set_attribute_value(1, cast_vector(v));if constexpr (false)unset_attribute_value(1); } +::Ifc4x3_tc1::IfcFace Ifc4x3_tc1::IfcTextureMap::MappedTo() const { return ((express::base)(get_attribute_value(2))).as<::Ifc4x3_tc1::IfcFace>(); } void Ifc4x3_tc1::IfcTextureMap::setMappedTo(const ::Ifc4x3_tc1::IfcFace& v) { set_attribute_value(2, v);if constexpr (false)unset_attribute_value(2); } const ifcopenshell::entity& Ifc4x3_tc1::IfcTextureMap::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[1193]); } -Ifc4x3_tc1::IfcTextureMap Ifc4x3_tc1::IfcTextureMap::initialize(std::vector< ::Ifc4x3_tc1::IfcSurfaceTexture > v1_Maps, std::vector< ::Ifc4x3_tc1::IfcTextureVertex > v2_Vertices, ::Ifc4x3_tc1::IfcFace v3_MappedTo) { set_attribute_value(0, cast_vector(v1_Maps));set_attribute_value(1, cast_vector(v2_Vertices));set_attribute_value(2, (v3_MappedTo));; return *this; } +Ifc4x3_tc1::IfcTextureMap Ifc4x3_tc1::IfcTextureMap::initialize(std::vector< ::Ifc4x3_tc1::IfcSurfaceTexture > v1_Maps, std::vector< ::Ifc4x3_tc1::IfcTextureVertex > v2_Vertices, ::Ifc4x3_tc1::IfcFace v3_MappedTo) { set_attribute_value(0, cast_vector(v1_Maps));set_attribute_value(1, cast_vector(v2_Vertices));set_attribute_value(2, (v3_MappedTo));; return *this; } // Function implementations for IfcTextureVertex std::vector< double > /*[2:2]*/ Ifc4x3_tc1::IfcTextureVertex::Coordinates() const { std::vector< double > /*[2:2]*/ v = get_attribute_value(0); return v; } @@ -15935,7 +15935,7 @@ void Ifc4x3_tc1::IfcTimeSeries::setTimeSeriesDataType(const ::Ifc4x3_tc1::IfcTim void Ifc4x3_tc1::IfcTimeSeries::setDataOrigin(const ::Ifc4x3_tc1::IfcDataOriginEnum::Value& v) { set_attribute_value(5, enumeration_reference(&::Ifc4x3_tc1::IfcDataOriginEnum::Class(), (size_t) v));if constexpr (false)unset_attribute_value(5); } std::optional< std::string > Ifc4x3_tc1::IfcTimeSeries::UserDefinedDataOrigin() const { if(get_attribute_value(6).isNull()) { return std::nullopt; } std::string v = get_attribute_value(6); return v; } void Ifc4x3_tc1::IfcTimeSeries::setUserDefinedDataOrigin(const std::optional< std::string >& v) { if (v) {set_attribute_value(6, *v);} else {unset_attribute_value(6);} } -::Ifc4x3_tc1::IfcUnit Ifc4x3_tc1::IfcTimeSeries::Unit() const { if(get_attribute_value(7).isNull()) { return ::Ifc4x3_tc1::IfcUnit{}; } return ((express::Base)(get_attribute_value(7))).as<::Ifc4x3_tc1::IfcUnit>(); } +::Ifc4x3_tc1::IfcUnit Ifc4x3_tc1::IfcTimeSeries::Unit() const { if(get_attribute_value(7).isNull()) { return ::Ifc4x3_tc1::IfcUnit{}; } return ((express::base)(get_attribute_value(7))).as<::Ifc4x3_tc1::IfcUnit>(); } void Ifc4x3_tc1::IfcTimeSeries::setUnit(const ::Ifc4x3_tc1::IfcUnit& v) { set_attribute_value(7, v);if constexpr (false)unset_attribute_value(7); } std::vector<::Ifc4x3_tc1::IfcExternalReferenceRelationship> Ifc4x3_tc1::IfcTimeSeries::HasExternalReference() const { return cast_vector(file()->get_inverse(data()->id(), IFC4X3_TC1_types[427], 3)); } @@ -15944,12 +15944,12 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcTimeSeries::Class() { return *((ifcop Ifc4x3_tc1::IfcTimeSeries Ifc4x3_tc1::IfcTimeSeries::initialize(std::string v1_Name, std::optional< std::string > v2_Description, std::string v3_StartTime, std::string v4_EndTime, ::Ifc4x3_tc1::IfcTimeSeriesDataTypeEnum::Value v5_TimeSeriesDataType, ::Ifc4x3_tc1::IfcDataOriginEnum::Value v6_DataOrigin, std::optional< std::string > v7_UserDefinedDataOrigin, ::Ifc4x3_tc1::IfcUnit v8_Unit) { set_attribute_value(0, (v1_Name)); if (v2_Description) {set_attribute_value(1, (*v2_Description)); }set_attribute_value(2, (v3_StartTime));set_attribute_value(3, (v4_EndTime));set_attribute_value(4, (enumeration_reference(&::Ifc4x3_tc1::IfcTimeSeriesDataTypeEnum::Class(),(size_t)v5_TimeSeriesDataType)));set_attribute_value(5, (enumeration_reference(&::Ifc4x3_tc1::IfcDataOriginEnum::Class(),(size_t)v6_DataOrigin))); if (v7_UserDefinedDataOrigin) {set_attribute_value(6, (*v7_UserDefinedDataOrigin)); }set_attribute_value(7, (v8_Unit));; return *this; } // Function implementations for IfcTimeSeriesValue -std::vector< ::Ifc4x3_tc1::IfcValue > Ifc4x3_tc1::IfcTimeSeriesValue::ListValues() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3_tc1::IfcValue>(es); } -void Ifc4x3_tc1::IfcTimeSeriesValue::setListValues(const std::vector< ::Ifc4x3_tc1::IfcValue >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } +std::vector< ::Ifc4x3_tc1::IfcValue > Ifc4x3_tc1::IfcTimeSeriesValue::ListValues() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3_tc1::IfcValue>(es); } +void Ifc4x3_tc1::IfcTimeSeriesValue::setListValues(const std::vector< ::Ifc4x3_tc1::IfcValue >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } const ifcopenshell::entity& Ifc4x3_tc1::IfcTimeSeriesValue::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[1209]); } -Ifc4x3_tc1::IfcTimeSeriesValue Ifc4x3_tc1::IfcTimeSeriesValue::initialize(std::vector< ::Ifc4x3_tc1::IfcValue > v1_ListValues) { set_attribute_value(0, cast_vector(v1_ListValues));; return *this; } +Ifc4x3_tc1::IfcTimeSeriesValue Ifc4x3_tc1::IfcTimeSeriesValue::initialize(std::vector< ::Ifc4x3_tc1::IfcValue > v1_ListValues) { set_attribute_value(0, cast_vector(v1_ListValues));; return *this; } // Function implementations for IfcTopologicalRepresentationItem @@ -15961,7 +15961,7 @@ Ifc4x3_tc1::IfcTopologicalRepresentationItem Ifc4x3_tc1::IfcTopologicalRepresent const ifcopenshell::entity& Ifc4x3_tc1::IfcTopologyRepresentation::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[1212]); } -Ifc4x3_tc1::IfcTopologyRepresentation Ifc4x3_tc1::IfcTopologyRepresentation::initialize(::Ifc4x3_tc1::IfcRepresentationContext v1_ContextOfItems, std::optional< std::string > v2_RepresentationIdentifier, std::optional< std::string > v3_RepresentationType, std::vector< ::Ifc4x3_tc1::IfcRepresentationItem > v4_Items) { set_attribute_value(0, (v1_ContextOfItems)); if (v2_RepresentationIdentifier) {set_attribute_value(1, (*v2_RepresentationIdentifier)); } if (v3_RepresentationType) {set_attribute_value(2, (*v3_RepresentationType)); }set_attribute_value(3, cast_vector(v4_Items));; return *this; } +Ifc4x3_tc1::IfcTopologyRepresentation Ifc4x3_tc1::IfcTopologyRepresentation::initialize(::Ifc4x3_tc1::IfcRepresentationContext v1_ContextOfItems, std::optional< std::string > v2_RepresentationIdentifier, std::optional< std::string > v3_RepresentationType, std::vector< ::Ifc4x3_tc1::IfcRepresentationItem > v4_Items) { set_attribute_value(0, (v1_ContextOfItems)); if (v2_RepresentationIdentifier) {set_attribute_value(1, (*v2_RepresentationIdentifier)); } if (v3_RepresentationType) {set_attribute_value(2, (*v3_RepresentationType)); }set_attribute_value(3, cast_vector(v4_Items));; return *this; } // Function implementations for IfcToroidalSurface double Ifc4x3_tc1::IfcToroidalSurface::MajorRadius() const { double v = get_attribute_value(1); return v; } @@ -15987,7 +15987,7 @@ void Ifc4x3_tc1::IfcTrackElementType::setPredefinedType(const ::Ifc4x3_tc1::IfcT const ifcopenshell::entity& Ifc4x3_tc1::IfcTrackElementType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[1216]); } -Ifc4x3_tc1::IfcTrackElementType Ifc4x3_tc1::IfcTrackElementType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcTrackElementTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcTrackElementTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_tc1::IfcTrackElementType Ifc4x3_tc1::IfcTrackElementType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcTrackElementTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcTrackElementTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcTransformer std::optional< ::Ifc4x3_tc1::IfcTransformerTypeEnum::Value > Ifc4x3_tc1::IfcTransformer::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_tc1::IfcTransformerTypeEnum::FromString(get_attribute_value(8)); } @@ -16003,7 +16003,7 @@ void Ifc4x3_tc1::IfcTransformerType::setPredefinedType(const ::Ifc4x3_tc1::IfcTr const ifcopenshell::entity& Ifc4x3_tc1::IfcTransformerType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[1219]); } -Ifc4x3_tc1::IfcTransformerType Ifc4x3_tc1::IfcTransformerType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcTransformerTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcTransformerTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_tc1::IfcTransformerType Ifc4x3_tc1::IfcTransformerType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcTransformerTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcTransformerTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcTransportElement std::optional< ::Ifc4x3_tc1::IfcTransportElementTypeEnum::Value > Ifc4x3_tc1::IfcTransportElement::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_tc1::IfcTransportElementTypeEnum::FromString(get_attribute_value(8)); } @@ -16019,7 +16019,7 @@ void Ifc4x3_tc1::IfcTransportElementType::setPredefinedType(const ::Ifc4x3_tc1:: const ifcopenshell::entity& Ifc4x3_tc1::IfcTransportElementType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[1226]); } -Ifc4x3_tc1::IfcTransportElementType Ifc4x3_tc1::IfcTransportElementType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcTransportElementTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcTransportElementTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_tc1::IfcTransportElementType Ifc4x3_tc1::IfcTransportElementType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcTransportElementTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcTransportElementTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcTransportationDevice @@ -16031,7 +16031,7 @@ Ifc4x3_tc1::IfcTransportationDevice Ifc4x3_tc1::IfcTransportationDevice::initial const ifcopenshell::entity& Ifc4x3_tc1::IfcTransportationDeviceType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[1224]); } -Ifc4x3_tc1::IfcTransportationDeviceType Ifc4x3_tc1::IfcTransportationDeviceType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } +Ifc4x3_tc1::IfcTransportationDeviceType Ifc4x3_tc1::IfcTransportationDeviceType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }; return *this; } // Function implementations for IfcTrapeziumProfileDef double Ifc4x3_tc1::IfcTrapeziumProfileDef::BottomXDim() const { double v = get_attribute_value(3); return v; } @@ -16070,12 +16070,12 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcTriangulatedIrregularNetwork::Class() Ifc4x3_tc1::IfcTriangulatedIrregularNetwork Ifc4x3_tc1::IfcTriangulatedIrregularNetwork::initialize(::Ifc4x3_tc1::IfcCartesianPointList3D v1_Coordinates, std::optional< std::vector< std::vector< double > > > v2_Normals, std::optional< bool > v3_Closed, std::vector< std::vector< int64_t > > v4_CoordIndex, std::optional< std::vector< int64_t > /*[1:?]*/ > v5_PnIndex, std::vector< int64_t > /*[1:?]*/ v6_Flags) { set_attribute_value(0, (v1_Coordinates)); if (v2_Normals) {set_attribute_value(1, (*v2_Normals)); } if (v3_Closed) {set_attribute_value(2, (*v3_Closed)); }set_attribute_value(3, (v4_CoordIndex)); if (v5_PnIndex) {set_attribute_value(4, (*v5_PnIndex)); }set_attribute_value(5, (v6_Flags));; return *this; } // Function implementations for IfcTrimmedCurve -::Ifc4x3_tc1::IfcCurve Ifc4x3_tc1::IfcTrimmedCurve::BasisCurve() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcCurve>(); } +::Ifc4x3_tc1::IfcCurve Ifc4x3_tc1::IfcTrimmedCurve::BasisCurve() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcCurve>(); } void Ifc4x3_tc1::IfcTrimmedCurve::setBasisCurve(const ::Ifc4x3_tc1::IfcCurve& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } -std::vector< ::Ifc4x3_tc1::IfcTrimmingSelect > Ifc4x3_tc1::IfcTrimmedCurve::Trim1() const { std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3_tc1::IfcTrimmingSelect>(es); } -void Ifc4x3_tc1::IfcTrimmedCurve::setTrim1(const std::vector< ::Ifc4x3_tc1::IfcTrimmingSelect >& v) { set_attribute_value(1, cast_vector(v));if constexpr (false)unset_attribute_value(1); } -std::vector< ::Ifc4x3_tc1::IfcTrimmingSelect > Ifc4x3_tc1::IfcTrimmedCurve::Trim2() const { std::vector es = get_attribute_value(2); return cast_vector<::Ifc4x3_tc1::IfcTrimmingSelect>(es); } -void Ifc4x3_tc1::IfcTrimmedCurve::setTrim2(const std::vector< ::Ifc4x3_tc1::IfcTrimmingSelect >& v) { set_attribute_value(2, cast_vector(v));if constexpr (false)unset_attribute_value(2); } +std::vector< ::Ifc4x3_tc1::IfcTrimmingSelect > Ifc4x3_tc1::IfcTrimmedCurve::Trim1() const { std::vector es = get_attribute_value(1); return cast_vector<::Ifc4x3_tc1::IfcTrimmingSelect>(es); } +void Ifc4x3_tc1::IfcTrimmedCurve::setTrim1(const std::vector< ::Ifc4x3_tc1::IfcTrimmingSelect >& v) { set_attribute_value(1, cast_vector(v));if constexpr (false)unset_attribute_value(1); } +std::vector< ::Ifc4x3_tc1::IfcTrimmingSelect > Ifc4x3_tc1::IfcTrimmedCurve::Trim2() const { std::vector es = get_attribute_value(2); return cast_vector<::Ifc4x3_tc1::IfcTrimmingSelect>(es); } +void Ifc4x3_tc1::IfcTrimmedCurve::setTrim2(const std::vector< ::Ifc4x3_tc1::IfcTrimmingSelect >& v) { set_attribute_value(2, cast_vector(v));if constexpr (false)unset_attribute_value(2); } bool Ifc4x3_tc1::IfcTrimmedCurve::SenseAgreement() const { bool v = get_attribute_value(3); return v; } void Ifc4x3_tc1::IfcTrimmedCurve::setSenseAgreement(const bool& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } ::Ifc4x3_tc1::IfcTrimmingPreference::Value Ifc4x3_tc1::IfcTrimmedCurve::MasterRepresentation() const { return ::Ifc4x3_tc1::IfcTrimmingPreference::FromString(get_attribute_value(4)); } @@ -16083,7 +16083,7 @@ void Ifc4x3_tc1::IfcTrimmedCurve::setMasterRepresentation(const ::Ifc4x3_tc1::If const ifcopenshell::entity& Ifc4x3_tc1::IfcTrimmedCurve::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[1231]); } -Ifc4x3_tc1::IfcTrimmedCurve Ifc4x3_tc1::IfcTrimmedCurve::initialize(::Ifc4x3_tc1::IfcCurve v1_BasisCurve, std::vector< ::Ifc4x3_tc1::IfcTrimmingSelect > v2_Trim1, std::vector< ::Ifc4x3_tc1::IfcTrimmingSelect > v3_Trim2, bool v4_SenseAgreement, ::Ifc4x3_tc1::IfcTrimmingPreference::Value v5_MasterRepresentation) { set_attribute_value(0, (v1_BasisCurve));set_attribute_value(1, cast_vector(v2_Trim1));set_attribute_value(2, cast_vector(v3_Trim2));set_attribute_value(3, (v4_SenseAgreement));set_attribute_value(4, (enumeration_reference(&::Ifc4x3_tc1::IfcTrimmingPreference::Class(),(size_t)v5_MasterRepresentation)));; return *this; } +Ifc4x3_tc1::IfcTrimmedCurve Ifc4x3_tc1::IfcTrimmedCurve::initialize(::Ifc4x3_tc1::IfcCurve v1_BasisCurve, std::vector< ::Ifc4x3_tc1::IfcTrimmingSelect > v2_Trim1, std::vector< ::Ifc4x3_tc1::IfcTrimmingSelect > v3_Trim2, bool v4_SenseAgreement, ::Ifc4x3_tc1::IfcTrimmingPreference::Value v5_MasterRepresentation) { set_attribute_value(0, (v1_BasisCurve));set_attribute_value(1, cast_vector(v2_Trim1));set_attribute_value(2, cast_vector(v3_Trim2));set_attribute_value(3, (v4_SenseAgreement));set_attribute_value(4, (enumeration_reference(&::Ifc4x3_tc1::IfcTrimmingPreference::Class(),(size_t)v5_MasterRepresentation)));; return *this; } // Function implementations for IfcTubeBundle std::optional< ::Ifc4x3_tc1::IfcTubeBundleTypeEnum::Value > Ifc4x3_tc1::IfcTubeBundle::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_tc1::IfcTubeBundleTypeEnum::FromString(get_attribute_value(8)); } @@ -16099,18 +16099,18 @@ void Ifc4x3_tc1::IfcTubeBundleType::setPredefinedType(const ::Ifc4x3_tc1::IfcTub const ifcopenshell::entity& Ifc4x3_tc1::IfcTubeBundleType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[1236]); } -Ifc4x3_tc1::IfcTubeBundleType Ifc4x3_tc1::IfcTubeBundleType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcTubeBundleTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcTubeBundleTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_tc1::IfcTubeBundleType Ifc4x3_tc1::IfcTubeBundleType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcTubeBundleTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcTubeBundleTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcTypeObject std::optional< std::string > Ifc4x3_tc1::IfcTypeObject::ApplicableOccurrence() const { if(get_attribute_value(4).isNull()) { return std::nullopt; } std::string v = get_attribute_value(4); return v; } void Ifc4x3_tc1::IfcTypeObject::setApplicableOccurrence(const std::optional< std::string >& v) { if (v) {set_attribute_value(4, *v);} else {unset_attribute_value(4);} } -std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > Ifc4x3_tc1::IfcTypeObject::HasPropertySets() const { if(get_attribute_value(5).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(5); return cast_vector<::Ifc4x3_tc1::IfcPropertySetDefinition>(es); } -void Ifc4x3_tc1::IfcTypeObject::setHasPropertySets(const std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > >& v) { if (v) {set_attribute_value(5, cast_vector(*v));} else {unset_attribute_value(5);} } +std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > Ifc4x3_tc1::IfcTypeObject::HasPropertySets() const { if(get_attribute_value(5).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(5); return cast_vector<::Ifc4x3_tc1::IfcPropertySetDefinition>(es); } +void Ifc4x3_tc1::IfcTypeObject::setHasPropertySets(const std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > >& v) { if (v) {set_attribute_value(5, cast_vector(*v));} else {unset_attribute_value(5);} } std::vector<::Ifc4x3_tc1::IfcRelDefinesByType> Ifc4x3_tc1::IfcTypeObject::Types() const { return cast_vector(file()->get_inverse(data()->id(), IFC4X3_TC1_types[933], 5)); } const ifcopenshell::entity& Ifc4x3_tc1::IfcTypeObject::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[1238]); } -Ifc4x3_tc1::IfcTypeObject Ifc4x3_tc1::IfcTypeObject::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); }; return *this; } +Ifc4x3_tc1::IfcTypeObject Ifc4x3_tc1::IfcTypeObject::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); }; return *this; } // Function implementations for IfcTypeProcess std::optional< std::string > Ifc4x3_tc1::IfcTypeProcess::Identification() const { if(get_attribute_value(6).isNull()) { return std::nullopt; } std::string v = get_attribute_value(6); return v; } @@ -16123,18 +16123,18 @@ void Ifc4x3_tc1::IfcTypeProcess::setProcessType(const std::optional< std::string std::vector<::Ifc4x3_tc1::IfcRelAssignsToProcess> Ifc4x3_tc1::IfcTypeProcess::OperatesOn() const { return cast_vector(file()->get_inverse(data()->id(), IFC4X3_TC1_types[903], 6)); } const ifcopenshell::entity& Ifc4x3_tc1::IfcTypeProcess::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[1239]); } -Ifc4x3_tc1::IfcTypeProcess Ifc4x3_tc1::IfcTypeProcess::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::string > v7_Identification, std::optional< std::string > v8_LongDescription, std::optional< std::string > v9_ProcessType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_Identification) {set_attribute_value(6, (*v7_Identification)); } if (v8_LongDescription) {set_attribute_value(7, (*v8_LongDescription)); } if (v9_ProcessType) {set_attribute_value(8, (*v9_ProcessType)); }; return *this; } +Ifc4x3_tc1::IfcTypeProcess Ifc4x3_tc1::IfcTypeProcess::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::string > v7_Identification, std::optional< std::string > v8_LongDescription, std::optional< std::string > v9_ProcessType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_Identification) {set_attribute_value(6, (*v7_Identification)); } if (v8_LongDescription) {set_attribute_value(7, (*v8_LongDescription)); } if (v9_ProcessType) {set_attribute_value(8, (*v9_ProcessType)); }; return *this; } // Function implementations for IfcTypeProduct -std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > Ifc4x3_tc1::IfcTypeProduct::RepresentationMaps() const { if(get_attribute_value(6).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(6); return cast_vector<::Ifc4x3_tc1::IfcRepresentationMap>(es); } -void Ifc4x3_tc1::IfcTypeProduct::setRepresentationMaps(const std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > >& v) { if (v) {set_attribute_value(6, cast_vector(*v));} else {unset_attribute_value(6);} } +std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > Ifc4x3_tc1::IfcTypeProduct::RepresentationMaps() const { if(get_attribute_value(6).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(6); return cast_vector<::Ifc4x3_tc1::IfcRepresentationMap>(es); } +void Ifc4x3_tc1::IfcTypeProduct::setRepresentationMaps(const std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > >& v) { if (v) {set_attribute_value(6, cast_vector(*v));} else {unset_attribute_value(6);} } std::optional< std::string > Ifc4x3_tc1::IfcTypeProduct::Tag() const { if(get_attribute_value(7).isNull()) { return std::nullopt; } std::string v = get_attribute_value(7); return v; } void Ifc4x3_tc1::IfcTypeProduct::setTag(const std::optional< std::string >& v) { if (v) {set_attribute_value(7, *v);} else {unset_attribute_value(7);} } std::vector<::Ifc4x3_tc1::IfcRelAssignsToProduct> Ifc4x3_tc1::IfcTypeProduct::ReferencedBy() const { return cast_vector(file()->get_inverse(data()->id(), IFC4X3_TC1_types[904], 6)); } const ifcopenshell::entity& Ifc4x3_tc1::IfcTypeProduct::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[1240]); } -Ifc4x3_tc1::IfcTypeProduct Ifc4x3_tc1::IfcTypeProduct::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); }; return *this; } +Ifc4x3_tc1::IfcTypeProduct Ifc4x3_tc1::IfcTypeProduct::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); }; return *this; } // Function implementations for IfcTypeResource std::optional< std::string > Ifc4x3_tc1::IfcTypeResource::Identification() const { if(get_attribute_value(6).isNull()) { return std::nullopt; } std::string v = get_attribute_value(6); return v; } @@ -16147,7 +16147,7 @@ void Ifc4x3_tc1::IfcTypeResource::setResourceType(const std::optional< std::stri std::vector<::Ifc4x3_tc1::IfcRelAssignsToResource> Ifc4x3_tc1::IfcTypeResource::ResourceOf() const { return cast_vector(file()->get_inverse(data()->id(), IFC4X3_TC1_types[905], 6)); } const ifcopenshell::entity& Ifc4x3_tc1::IfcTypeResource::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[1241]); } -Ifc4x3_tc1::IfcTypeResource Ifc4x3_tc1::IfcTypeResource::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::string > v7_Identification, std::optional< std::string > v8_LongDescription, std::optional< std::string > v9_ResourceType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_Identification) {set_attribute_value(6, (*v7_Identification)); } if (v8_LongDescription) {set_attribute_value(7, (*v8_LongDescription)); } if (v9_ResourceType) {set_attribute_value(8, (*v9_ResourceType)); }; return *this; } +Ifc4x3_tc1::IfcTypeResource Ifc4x3_tc1::IfcTypeResource::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::string > v7_Identification, std::optional< std::string > v8_LongDescription, std::optional< std::string > v9_ResourceType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_Identification) {set_attribute_value(6, (*v7_Identification)); } if (v8_LongDescription) {set_attribute_value(7, (*v8_LongDescription)); } if (v9_ResourceType) {set_attribute_value(8, (*v9_ResourceType)); }; return *this; } // Function implementations for IfcUShapeProfileDef double Ifc4x3_tc1::IfcUShapeProfileDef::Depth() const { double v = get_attribute_value(3); return v; } @@ -16170,12 +16170,12 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcUShapeProfileDef::Class() { return *( Ifc4x3_tc1::IfcUShapeProfileDef Ifc4x3_tc1::IfcUShapeProfileDef::initialize(::Ifc4x3_tc1::IfcProfileTypeEnum::Value v1_ProfileType, std::optional< std::string > v2_ProfileName, ::Ifc4x3_tc1::IfcAxis2Placement2D v3_Position, double v4_Depth, double v5_FlangeWidth, double v6_WebThickness, double v7_FlangeThickness, std::optional< double > v8_FilletRadius, std::optional< double > v9_EdgeRadius, std::optional< double > v10_FlangeSlope) { set_attribute_value(0, (enumeration_reference(&::Ifc4x3_tc1::IfcProfileTypeEnum::Class(),(size_t)v1_ProfileType))); if (v2_ProfileName) {set_attribute_value(1, (*v2_ProfileName)); }set_attribute_value(2, (v3_Position));set_attribute_value(3, (v4_Depth));set_attribute_value(4, (v5_FlangeWidth));set_attribute_value(5, (v6_WebThickness));set_attribute_value(6, (v7_FlangeThickness)); if (v8_FilletRadius) {set_attribute_value(7, (*v8_FilletRadius)); } if (v9_EdgeRadius) {set_attribute_value(8, (*v9_EdgeRadius)); } if (v10_FlangeSlope) {set_attribute_value(9, (*v10_FlangeSlope)); }; return *this; } // Function implementations for IfcUnitAssignment -std::vector< ::Ifc4x3_tc1::IfcUnit > Ifc4x3_tc1::IfcUnitAssignment::Units() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3_tc1::IfcUnit>(es); } -void Ifc4x3_tc1::IfcUnitAssignment::setUnits(const std::vector< ::Ifc4x3_tc1::IfcUnit >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } +std::vector< ::Ifc4x3_tc1::IfcUnit > Ifc4x3_tc1::IfcUnitAssignment::Units() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3_tc1::IfcUnit>(es); } +void Ifc4x3_tc1::IfcUnitAssignment::setUnits(const std::vector< ::Ifc4x3_tc1::IfcUnit >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } const ifcopenshell::entity& Ifc4x3_tc1::IfcUnitAssignment::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[1249]); } -Ifc4x3_tc1::IfcUnitAssignment Ifc4x3_tc1::IfcUnitAssignment::initialize(std::vector< ::Ifc4x3_tc1::IfcUnit > v1_Units) { set_attribute_value(0, cast_vector(v1_Units));; return *this; } +Ifc4x3_tc1::IfcUnitAssignment Ifc4x3_tc1::IfcUnitAssignment::initialize(std::vector< ::Ifc4x3_tc1::IfcUnit > v1_Units) { set_attribute_value(0, cast_vector(v1_Units));; return *this; } // Function implementations for IfcUnitaryControlElement std::optional< ::Ifc4x3_tc1::IfcUnitaryControlElementTypeEnum::Value > Ifc4x3_tc1::IfcUnitaryControlElement::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_tc1::IfcUnitaryControlElementTypeEnum::FromString(get_attribute_value(8)); } @@ -16191,7 +16191,7 @@ void Ifc4x3_tc1::IfcUnitaryControlElementType::setPredefinedType(const ::Ifc4x3_ const ifcopenshell::entity& Ifc4x3_tc1::IfcUnitaryControlElementType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[1244]); } -Ifc4x3_tc1::IfcUnitaryControlElementType Ifc4x3_tc1::IfcUnitaryControlElementType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcUnitaryControlElementTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcUnitaryControlElementTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_tc1::IfcUnitaryControlElementType Ifc4x3_tc1::IfcUnitaryControlElementType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcUnitaryControlElementTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcUnitaryControlElementTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcUnitaryEquipment std::optional< ::Ifc4x3_tc1::IfcUnitaryEquipmentTypeEnum::Value > Ifc4x3_tc1::IfcUnitaryEquipment::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_tc1::IfcUnitaryEquipmentTypeEnum::FromString(get_attribute_value(8)); } @@ -16207,7 +16207,7 @@ void Ifc4x3_tc1::IfcUnitaryEquipmentType::setPredefinedType(const ::Ifc4x3_tc1:: const ifcopenshell::entity& Ifc4x3_tc1::IfcUnitaryEquipmentType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[1247]); } -Ifc4x3_tc1::IfcUnitaryEquipmentType Ifc4x3_tc1::IfcUnitaryEquipmentType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcUnitaryEquipmentTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcUnitaryEquipmentTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_tc1::IfcUnitaryEquipmentType Ifc4x3_tc1::IfcUnitaryEquipmentType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcUnitaryEquipmentTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcUnitaryEquipmentTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcValve std::optional< ::Ifc4x3_tc1::IfcValveTypeEnum::Value > Ifc4x3_tc1::IfcValve::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_tc1::IfcValveTypeEnum::FromString(get_attribute_value(8)); } @@ -16223,10 +16223,10 @@ void Ifc4x3_tc1::IfcValveType::setPredefinedType(const ::Ifc4x3_tc1::IfcValveTyp const ifcopenshell::entity& Ifc4x3_tc1::IfcValveType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[1255]); } -Ifc4x3_tc1::IfcValveType Ifc4x3_tc1::IfcValveType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcValveTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcValveTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_tc1::IfcValveType Ifc4x3_tc1::IfcValveType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcValveTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcValveTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcVector -::Ifc4x3_tc1::IfcDirection Ifc4x3_tc1::IfcVector::Orientation() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcDirection>(); } +::Ifc4x3_tc1::IfcDirection Ifc4x3_tc1::IfcVector::Orientation() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcDirection>(); } void Ifc4x3_tc1::IfcVector::setOrientation(const ::Ifc4x3_tc1::IfcDirection& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } double Ifc4x3_tc1::IfcVector::Magnitude() const { double v = get_attribute_value(1); return v; } void Ifc4x3_tc1::IfcVector::setMagnitude(const double& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } @@ -16249,7 +16249,7 @@ void Ifc4x3_tc1::IfcVehicleType::setPredefinedType(const ::Ifc4x3_tc1::IfcVehicl const ifcopenshell::entity& Ifc4x3_tc1::IfcVehicleType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[1261]); } -Ifc4x3_tc1::IfcVehicleType Ifc4x3_tc1::IfcVehicleType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcVehicleTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcVehicleTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_tc1::IfcVehicleType Ifc4x3_tc1::IfcVehicleType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcVehicleTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcVehicleTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcVertex @@ -16258,7 +16258,7 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcVertex::Class() { return *((ifcopensh Ifc4x3_tc1::IfcVertex Ifc4x3_tc1::IfcVertex::initialize() { ; return *this; } // Function implementations for IfcVertexLoop -::Ifc4x3_tc1::IfcVertex Ifc4x3_tc1::IfcVertexLoop::LoopVertex() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcVertex>(); } +::Ifc4x3_tc1::IfcVertex Ifc4x3_tc1::IfcVertexLoop::LoopVertex() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcVertex>(); } void Ifc4x3_tc1::IfcVertexLoop::setLoopVertex(const ::Ifc4x3_tc1::IfcVertex& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } @@ -16266,7 +16266,7 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcVertexLoop::Class() { return *((ifcop Ifc4x3_tc1::IfcVertexLoop Ifc4x3_tc1::IfcVertexLoop::initialize(::Ifc4x3_tc1::IfcVertex v1_LoopVertex) { set_attribute_value(0, (v1_LoopVertex));; return *this; } // Function implementations for IfcVertexPoint -::Ifc4x3_tc1::IfcPoint Ifc4x3_tc1::IfcVertexPoint::VertexGeometry() const { return ((express::Base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcPoint>(); } +::Ifc4x3_tc1::IfcPoint Ifc4x3_tc1::IfcVertexPoint::VertexGeometry() const { return ((express::base)(get_attribute_value(0))).as<::Ifc4x3_tc1::IfcPoint>(); } void Ifc4x3_tc1::IfcVertexPoint::setVertexGeometry(const ::Ifc4x3_tc1::IfcPoint& v) { set_attribute_value(0, v);if constexpr (false)unset_attribute_value(0); } @@ -16287,7 +16287,7 @@ void Ifc4x3_tc1::IfcVibrationDamperType::setPredefinedType(const ::Ifc4x3_tc1::I const ifcopenshell::entity& Ifc4x3_tc1::IfcVibrationDamperType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[1267]); } -Ifc4x3_tc1::IfcVibrationDamperType Ifc4x3_tc1::IfcVibrationDamperType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcVibrationDamperTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcVibrationDamperTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_tc1::IfcVibrationDamperType Ifc4x3_tc1::IfcVibrationDamperType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcVibrationDamperTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcVibrationDamperTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcVibrationIsolator std::optional< ::Ifc4x3_tc1::IfcVibrationIsolatorTypeEnum::Value > Ifc4x3_tc1::IfcVibrationIsolator::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_tc1::IfcVibrationIsolatorTypeEnum::FromString(get_attribute_value(8)); } @@ -16303,7 +16303,7 @@ void Ifc4x3_tc1::IfcVibrationIsolatorType::setPredefinedType(const ::Ifc4x3_tc1: const ifcopenshell::entity& Ifc4x3_tc1::IfcVibrationIsolatorType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[1270]); } -Ifc4x3_tc1::IfcVibrationIsolatorType Ifc4x3_tc1::IfcVibrationIsolatorType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcVibrationIsolatorTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcVibrationIsolatorTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_tc1::IfcVibrationIsolatorType Ifc4x3_tc1::IfcVibrationIsolatorType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcVibrationIsolatorTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcVibrationIsolatorTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcVirtualElement std::optional< ::Ifc4x3_tc1::IfcVirtualElementTypeEnum::Value > Ifc4x3_tc1::IfcVirtualElement::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_tc1::IfcVirtualElementTypeEnum::FromString(get_attribute_value(8)); } @@ -16314,14 +16314,14 @@ const ifcopenshell::entity& Ifc4x3_tc1::IfcVirtualElement::Class() { return *((i Ifc4x3_tc1::IfcVirtualElement Ifc4x3_tc1::IfcVirtualElement::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, ::Ifc4x3_tc1::IfcObjectPlacement v6_ObjectPlacement, ::Ifc4x3_tc1::IfcProductRepresentation v7_Representation, std::optional< std::string > v8_Tag, std::optional< ::Ifc4x3_tc1::IfcVirtualElementTypeEnum::Value > v9_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); }set_attribute_value(5, (v6_ObjectPlacement));set_attribute_value(6, (v7_Representation)); if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_PredefinedType) {set_attribute_value(8, (enumeration_reference(&::Ifc4x3_tc1::IfcVirtualElementTypeEnum::Class(),(size_t)*v9_PredefinedType))); }; return *this; } // Function implementations for IfcVirtualGridIntersection -std::vector< ::Ifc4x3_tc1::IfcGridAxis > Ifc4x3_tc1::IfcVirtualGridIntersection::IntersectingAxes() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3_tc1::IfcGridAxis>(es); } -void Ifc4x3_tc1::IfcVirtualGridIntersection::setIntersectingAxes(const std::vector< ::Ifc4x3_tc1::IfcGridAxis >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } +std::vector< ::Ifc4x3_tc1::IfcGridAxis > Ifc4x3_tc1::IfcVirtualGridIntersection::IntersectingAxes() const { std::vector es = get_attribute_value(0); return cast_vector<::Ifc4x3_tc1::IfcGridAxis>(es); } +void Ifc4x3_tc1::IfcVirtualGridIntersection::setIntersectingAxes(const std::vector< ::Ifc4x3_tc1::IfcGridAxis >& v) { set_attribute_value(0, cast_vector(v));if constexpr (false)unset_attribute_value(0); } std::vector< double > /*[2:3]*/ Ifc4x3_tc1::IfcVirtualGridIntersection::OffsetDistances() const { std::vector< double > /*[2:3]*/ v = get_attribute_value(1); return v; } void Ifc4x3_tc1::IfcVirtualGridIntersection::setOffsetDistances(const std::vector< double > /*[2:3]*/& v) { set_attribute_value(1, v);if constexpr (false)unset_attribute_value(1); } const ifcopenshell::entity& Ifc4x3_tc1::IfcVirtualGridIntersection::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[1274]); } -Ifc4x3_tc1::IfcVirtualGridIntersection Ifc4x3_tc1::IfcVirtualGridIntersection::initialize(std::vector< ::Ifc4x3_tc1::IfcGridAxis > v1_IntersectingAxes, std::vector< double > /*[2:3]*/ v2_OffsetDistances) { set_attribute_value(0, cast_vector(v1_IntersectingAxes));set_attribute_value(1, (v2_OffsetDistances));; return *this; } +Ifc4x3_tc1::IfcVirtualGridIntersection Ifc4x3_tc1::IfcVirtualGridIntersection::initialize(std::vector< ::Ifc4x3_tc1::IfcGridAxis > v1_IntersectingAxes, std::vector< double > /*[2:3]*/ v2_OffsetDistances) { set_attribute_value(0, cast_vector(v1_IntersectingAxes));set_attribute_value(1, (v2_OffsetDistances));; return *this; } // Function implementations for IfcVoidingFeature std::optional< ::Ifc4x3_tc1::IfcVoidingFeatureTypeEnum::Value > Ifc4x3_tc1::IfcVoidingFeature::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_tc1::IfcVoidingFeatureTypeEnum::FromString(get_attribute_value(8)); } @@ -16351,7 +16351,7 @@ void Ifc4x3_tc1::IfcWallType::setPredefinedType(const ::Ifc4x3_tc1::IfcWallTypeE const ifcopenshell::entity& Ifc4x3_tc1::IfcWallType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[1281]); } -Ifc4x3_tc1::IfcWallType Ifc4x3_tc1::IfcWallType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcWallTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcWallTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_tc1::IfcWallType Ifc4x3_tc1::IfcWallType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcWallTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcWallTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcWasteTerminal std::optional< ::Ifc4x3_tc1::IfcWasteTerminalTypeEnum::Value > Ifc4x3_tc1::IfcWasteTerminal::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_tc1::IfcWasteTerminalTypeEnum::FromString(get_attribute_value(8)); } @@ -16367,7 +16367,7 @@ void Ifc4x3_tc1::IfcWasteTerminalType::setPredefinedType(const ::Ifc4x3_tc1::Ifc const ifcopenshell::entity& Ifc4x3_tc1::IfcWasteTerminalType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[1287]); } -Ifc4x3_tc1::IfcWasteTerminalType Ifc4x3_tc1::IfcWasteTerminalType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcWasteTerminalTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcWasteTerminalTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } +Ifc4x3_tc1::IfcWasteTerminalType Ifc4x3_tc1::IfcWasteTerminalType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcWasteTerminalTypeEnum::Value v10_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcWasteTerminalTypeEnum::Class(),(size_t)v10_PredefinedType)));; return *this; } // Function implementations for IfcWindow std::optional< double > Ifc4x3_tc1::IfcWindow::OverallHeight() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } double v = get_attribute_value(8); return v; } @@ -16402,7 +16402,7 @@ std::optional< double > Ifc4x3_tc1::IfcWindowLiningProperties::FirstMullionOffse void Ifc4x3_tc1::IfcWindowLiningProperties::setFirstMullionOffset(const std::optional< double >& v) { if (v) {set_attribute_value(10, *v);} else {unset_attribute_value(10);} } std::optional< double > Ifc4x3_tc1::IfcWindowLiningProperties::SecondMullionOffset() const { if(get_attribute_value(11).isNull()) { return std::nullopt; } double v = get_attribute_value(11); return v; } void Ifc4x3_tc1::IfcWindowLiningProperties::setSecondMullionOffset(const std::optional< double >& v) { if (v) {set_attribute_value(11, *v);} else {unset_attribute_value(11);} } -::Ifc4x3_tc1::IfcShapeAspect Ifc4x3_tc1::IfcWindowLiningProperties::ShapeAspectStyle() const { if(get_attribute_value(12).isNull()) { return ::Ifc4x3_tc1::IfcShapeAspect{}; } return ((express::Base)(get_attribute_value(12))).as<::Ifc4x3_tc1::IfcShapeAspect>(); } +::Ifc4x3_tc1::IfcShapeAspect Ifc4x3_tc1::IfcWindowLiningProperties::ShapeAspectStyle() const { if(get_attribute_value(12).isNull()) { return ::Ifc4x3_tc1::IfcShapeAspect{}; } return ((express::base)(get_attribute_value(12))).as<::Ifc4x3_tc1::IfcShapeAspect>(); } void Ifc4x3_tc1::IfcWindowLiningProperties::setShapeAspectStyle(const ::Ifc4x3_tc1::IfcShapeAspect& v) { set_attribute_value(12, v);if constexpr (false)unset_attribute_value(12); } std::optional< double > Ifc4x3_tc1::IfcWindowLiningProperties::LiningOffset() const { if(get_attribute_value(13).isNull()) { return std::nullopt; } double v = get_attribute_value(13); return v; } void Ifc4x3_tc1::IfcWindowLiningProperties::setLiningOffset(const std::optional< double >& v) { if (v) {set_attribute_value(13, *v);} else {unset_attribute_value(13);} } @@ -16424,7 +16424,7 @@ std::optional< double > Ifc4x3_tc1::IfcWindowPanelProperties::FrameDepth() const void Ifc4x3_tc1::IfcWindowPanelProperties::setFrameDepth(const std::optional< double >& v) { if (v) {set_attribute_value(6, *v);} else {unset_attribute_value(6);} } std::optional< double > Ifc4x3_tc1::IfcWindowPanelProperties::FrameThickness() const { if(get_attribute_value(7).isNull()) { return std::nullopt; } double v = get_attribute_value(7); return v; } void Ifc4x3_tc1::IfcWindowPanelProperties::setFrameThickness(const std::optional< double >& v) { if (v) {set_attribute_value(7, *v);} else {unset_attribute_value(7);} } -::Ifc4x3_tc1::IfcShapeAspect Ifc4x3_tc1::IfcWindowPanelProperties::ShapeAspectStyle() const { if(get_attribute_value(8).isNull()) { return ::Ifc4x3_tc1::IfcShapeAspect{}; } return ((express::Base)(get_attribute_value(8))).as<::Ifc4x3_tc1::IfcShapeAspect>(); } +::Ifc4x3_tc1::IfcShapeAspect Ifc4x3_tc1::IfcWindowPanelProperties::ShapeAspectStyle() const { if(get_attribute_value(8).isNull()) { return ::Ifc4x3_tc1::IfcShapeAspect{}; } return ((express::base)(get_attribute_value(8))).as<::Ifc4x3_tc1::IfcShapeAspect>(); } void Ifc4x3_tc1::IfcWindowPanelProperties::setShapeAspectStyle(const ::Ifc4x3_tc1::IfcShapeAspect& v) { set_attribute_value(8, v);if constexpr (false)unset_attribute_value(8); } @@ -16443,25 +16443,25 @@ void Ifc4x3_tc1::IfcWindowType::setUserDefinedPartitioningType(const std::option const ifcopenshell::entity& Ifc4x3_tc1::IfcWindowType::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[1294]); } -Ifc4x3_tc1::IfcWindowType Ifc4x3_tc1::IfcWindowType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcWindowTypeEnum::Value v10_PredefinedType, ::Ifc4x3_tc1::IfcWindowTypePartitioningEnum::Value v11_PartitioningType, std::optional< bool > v12_ParameterTakesPrecedence, std::optional< std::string > v13_UserDefinedPartitioningType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcWindowTypeEnum::Class(),(size_t)v10_PredefinedType)));set_attribute_value(10, (enumeration_reference(&::Ifc4x3_tc1::IfcWindowTypePartitioningEnum::Class(),(size_t)v11_PartitioningType))); if (v12_ParameterTakesPrecedence) {set_attribute_value(11, (*v12_ParameterTakesPrecedence)); } if (v13_UserDefinedPartitioningType) {set_attribute_value(12, (*v13_UserDefinedPartitioningType)); }; return *this; } +Ifc4x3_tc1::IfcWindowType Ifc4x3_tc1::IfcWindowType::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ApplicableOccurrence, std::optional< std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > > v6_HasPropertySets, std::optional< std::vector< ::Ifc4x3_tc1::IfcRepresentationMap > > v7_RepresentationMaps, std::optional< std::string > v8_Tag, std::optional< std::string > v9_ElementType, ::Ifc4x3_tc1::IfcWindowTypeEnum::Value v10_PredefinedType, ::Ifc4x3_tc1::IfcWindowTypePartitioningEnum::Value v11_PartitioningType, std::optional< bool > v12_ParameterTakesPrecedence, std::optional< std::string > v13_UserDefinedPartitioningType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ApplicableOccurrence) {set_attribute_value(4, (*v5_ApplicableOccurrence)); } if (v6_HasPropertySets) {set_attribute_value(5, cast_vector(*v6_HasPropertySets)); } if (v7_RepresentationMaps) {set_attribute_value(6, cast_vector(*v7_RepresentationMaps)); } if (v8_Tag) {set_attribute_value(7, (*v8_Tag)); } if (v9_ElementType) {set_attribute_value(8, (*v9_ElementType)); }set_attribute_value(9, (enumeration_reference(&::Ifc4x3_tc1::IfcWindowTypeEnum::Class(),(size_t)v10_PredefinedType)));set_attribute_value(10, (enumeration_reference(&::Ifc4x3_tc1::IfcWindowTypePartitioningEnum::Class(),(size_t)v11_PartitioningType))); if (v12_ParameterTakesPrecedence) {set_attribute_value(11, (*v12_ParameterTakesPrecedence)); } if (v13_UserDefinedPartitioningType) {set_attribute_value(12, (*v13_UserDefinedPartitioningType)); }; return *this; } // Function implementations for IfcWorkCalendar -std::optional< std::vector< ::Ifc4x3_tc1::IfcWorkTime > > Ifc4x3_tc1::IfcWorkCalendar::WorkingTimes() const { if(get_attribute_value(6).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(6); return cast_vector<::Ifc4x3_tc1::IfcWorkTime>(es); } -void Ifc4x3_tc1::IfcWorkCalendar::setWorkingTimes(const std::optional< std::vector< ::Ifc4x3_tc1::IfcWorkTime > >& v) { if (v) {set_attribute_value(6, cast_vector(*v));} else {unset_attribute_value(6);} } -std::optional< std::vector< ::Ifc4x3_tc1::IfcWorkTime > > Ifc4x3_tc1::IfcWorkCalendar::ExceptionTimes() const { if(get_attribute_value(7).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(7); return cast_vector<::Ifc4x3_tc1::IfcWorkTime>(es); } -void Ifc4x3_tc1::IfcWorkCalendar::setExceptionTimes(const std::optional< std::vector< ::Ifc4x3_tc1::IfcWorkTime > >& v) { if (v) {set_attribute_value(7, cast_vector(*v));} else {unset_attribute_value(7);} } +std::optional< std::vector< ::Ifc4x3_tc1::IfcWorkTime > > Ifc4x3_tc1::IfcWorkCalendar::WorkingTimes() const { if(get_attribute_value(6).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(6); return cast_vector<::Ifc4x3_tc1::IfcWorkTime>(es); } +void Ifc4x3_tc1::IfcWorkCalendar::setWorkingTimes(const std::optional< std::vector< ::Ifc4x3_tc1::IfcWorkTime > >& v) { if (v) {set_attribute_value(6, cast_vector(*v));} else {unset_attribute_value(6);} } +std::optional< std::vector< ::Ifc4x3_tc1::IfcWorkTime > > Ifc4x3_tc1::IfcWorkCalendar::ExceptionTimes() const { if(get_attribute_value(7).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(7); return cast_vector<::Ifc4x3_tc1::IfcWorkTime>(es); } +void Ifc4x3_tc1::IfcWorkCalendar::setExceptionTimes(const std::optional< std::vector< ::Ifc4x3_tc1::IfcWorkTime > >& v) { if (v) {set_attribute_value(7, cast_vector(*v));} else {unset_attribute_value(7);} } std::optional< ::Ifc4x3_tc1::IfcWorkCalendarTypeEnum::Value > Ifc4x3_tc1::IfcWorkCalendar::PredefinedType() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } return ::Ifc4x3_tc1::IfcWorkCalendarTypeEnum::FromString(get_attribute_value(8)); } void Ifc4x3_tc1::IfcWorkCalendar::setPredefinedType(const std::optional< ::Ifc4x3_tc1::IfcWorkCalendarTypeEnum::Value >& v) { if (v) {set_attribute_value(8, enumeration_reference(&::Ifc4x3_tc1::IfcWorkCalendarTypeEnum::Class(), (size_t) *v));} else {unset_attribute_value(8);} } const ifcopenshell::entity& Ifc4x3_tc1::IfcWorkCalendar::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[1297]); } -Ifc4x3_tc1::IfcWorkCalendar Ifc4x3_tc1::IfcWorkCalendar::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, std::optional< std::string > v6_Identification, std::optional< std::vector< ::Ifc4x3_tc1::IfcWorkTime > > v7_WorkingTimes, std::optional< std::vector< ::Ifc4x3_tc1::IfcWorkTime > > v8_ExceptionTimes, std::optional< ::Ifc4x3_tc1::IfcWorkCalendarTypeEnum::Value > v9_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); } if (v6_Identification) {set_attribute_value(5, (*v6_Identification)); } if (v7_WorkingTimes) {set_attribute_value(6, cast_vector(*v7_WorkingTimes)); } if (v8_ExceptionTimes) {set_attribute_value(7, cast_vector(*v8_ExceptionTimes)); } if (v9_PredefinedType) {set_attribute_value(8, (enumeration_reference(&::Ifc4x3_tc1::IfcWorkCalendarTypeEnum::Class(),(size_t)*v9_PredefinedType))); }; return *this; } +Ifc4x3_tc1::IfcWorkCalendar Ifc4x3_tc1::IfcWorkCalendar::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, std::optional< std::string > v6_Identification, std::optional< std::vector< ::Ifc4x3_tc1::IfcWorkTime > > v7_WorkingTimes, std::optional< std::vector< ::Ifc4x3_tc1::IfcWorkTime > > v8_ExceptionTimes, std::optional< ::Ifc4x3_tc1::IfcWorkCalendarTypeEnum::Value > v9_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); } if (v6_Identification) {set_attribute_value(5, (*v6_Identification)); } if (v7_WorkingTimes) {set_attribute_value(6, cast_vector(*v7_WorkingTimes)); } if (v8_ExceptionTimes) {set_attribute_value(7, cast_vector(*v8_ExceptionTimes)); } if (v9_PredefinedType) {set_attribute_value(8, (enumeration_reference(&::Ifc4x3_tc1::IfcWorkCalendarTypeEnum::Class(),(size_t)*v9_PredefinedType))); }; return *this; } // Function implementations for IfcWorkControl std::string Ifc4x3_tc1::IfcWorkControl::CreationDate() const { std::string v = get_attribute_value(6); return v; } void Ifc4x3_tc1::IfcWorkControl::setCreationDate(const std::string& v) { set_attribute_value(6, v);if constexpr (false)unset_attribute_value(6); } -std::optional< std::vector< ::Ifc4x3_tc1::IfcPerson > > Ifc4x3_tc1::IfcWorkControl::Creators() const { if(get_attribute_value(7).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(7); return cast_vector<::Ifc4x3_tc1::IfcPerson>(es); } -void Ifc4x3_tc1::IfcWorkControl::setCreators(const std::optional< std::vector< ::Ifc4x3_tc1::IfcPerson > >& v) { if (v) {set_attribute_value(7, cast_vector(*v));} else {unset_attribute_value(7);} } +std::optional< std::vector< ::Ifc4x3_tc1::IfcPerson > > Ifc4x3_tc1::IfcWorkControl::Creators() const { if(get_attribute_value(7).isNull()) { return std::nullopt; } std::vector es = get_attribute_value(7); return cast_vector<::Ifc4x3_tc1::IfcPerson>(es); } +void Ifc4x3_tc1::IfcWorkControl::setCreators(const std::optional< std::vector< ::Ifc4x3_tc1::IfcPerson > >& v) { if (v) {set_attribute_value(7, cast_vector(*v));} else {unset_attribute_value(7);} } std::optional< std::string > Ifc4x3_tc1::IfcWorkControl::Purpose() const { if(get_attribute_value(8).isNull()) { return std::nullopt; } std::string v = get_attribute_value(8); return v; } void Ifc4x3_tc1::IfcWorkControl::setPurpose(const std::optional< std::string >& v) { if (v) {set_attribute_value(8, *v);} else {unset_attribute_value(8);} } std::optional< std::string > Ifc4x3_tc1::IfcWorkControl::Duration() const { if(get_attribute_value(9).isNull()) { return std::nullopt; } std::string v = get_attribute_value(9); return v; } @@ -16475,7 +16475,7 @@ void Ifc4x3_tc1::IfcWorkControl::setFinishTime(const std::optional< std::string const ifcopenshell::entity& Ifc4x3_tc1::IfcWorkControl::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[1299]); } -Ifc4x3_tc1::IfcWorkControl Ifc4x3_tc1::IfcWorkControl::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, std::optional< std::string > v6_Identification, std::string v7_CreationDate, std::optional< std::vector< ::Ifc4x3_tc1::IfcPerson > > v8_Creators, std::optional< std::string > v9_Purpose, std::optional< std::string > v10_Duration, std::optional< std::string > v11_TotalFloat, std::string v12_StartTime, std::optional< std::string > v13_FinishTime) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); } if (v6_Identification) {set_attribute_value(5, (*v6_Identification)); }set_attribute_value(6, (v7_CreationDate)); if (v8_Creators) {set_attribute_value(7, cast_vector(*v8_Creators)); } if (v9_Purpose) {set_attribute_value(8, (*v9_Purpose)); } if (v10_Duration) {set_attribute_value(9, (*v10_Duration)); } if (v11_TotalFloat) {set_attribute_value(10, (*v11_TotalFloat)); }set_attribute_value(11, (v12_StartTime)); if (v13_FinishTime) {set_attribute_value(12, (*v13_FinishTime)); }; return *this; } +Ifc4x3_tc1::IfcWorkControl Ifc4x3_tc1::IfcWorkControl::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, std::optional< std::string > v6_Identification, std::string v7_CreationDate, std::optional< std::vector< ::Ifc4x3_tc1::IfcPerson > > v8_Creators, std::optional< std::string > v9_Purpose, std::optional< std::string > v10_Duration, std::optional< std::string > v11_TotalFloat, std::string v12_StartTime, std::optional< std::string > v13_FinishTime) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); } if (v6_Identification) {set_attribute_value(5, (*v6_Identification)); }set_attribute_value(6, (v7_CreationDate)); if (v8_Creators) {set_attribute_value(7, cast_vector(*v8_Creators)); } if (v9_Purpose) {set_attribute_value(8, (*v9_Purpose)); } if (v10_Duration) {set_attribute_value(9, (*v10_Duration)); } if (v11_TotalFloat) {set_attribute_value(10, (*v11_TotalFloat)); }set_attribute_value(11, (v12_StartTime)); if (v13_FinishTime) {set_attribute_value(12, (*v13_FinishTime)); }; return *this; } // Function implementations for IfcWorkPlan std::optional< ::Ifc4x3_tc1::IfcWorkPlanTypeEnum::Value > Ifc4x3_tc1::IfcWorkPlan::PredefinedType() const { if(get_attribute_value(13).isNull()) { return std::nullopt; } return ::Ifc4x3_tc1::IfcWorkPlanTypeEnum::FromString(get_attribute_value(13)); } @@ -16483,7 +16483,7 @@ void Ifc4x3_tc1::IfcWorkPlan::setPredefinedType(const std::optional< ::Ifc4x3_tc const ifcopenshell::entity& Ifc4x3_tc1::IfcWorkPlan::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[1300]); } -Ifc4x3_tc1::IfcWorkPlan Ifc4x3_tc1::IfcWorkPlan::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, std::optional< std::string > v6_Identification, std::string v7_CreationDate, std::optional< std::vector< ::Ifc4x3_tc1::IfcPerson > > v8_Creators, std::optional< std::string > v9_Purpose, std::optional< std::string > v10_Duration, std::optional< std::string > v11_TotalFloat, std::string v12_StartTime, std::optional< std::string > v13_FinishTime, std::optional< ::Ifc4x3_tc1::IfcWorkPlanTypeEnum::Value > v14_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); } if (v6_Identification) {set_attribute_value(5, (*v6_Identification)); }set_attribute_value(6, (v7_CreationDate)); if (v8_Creators) {set_attribute_value(7, cast_vector(*v8_Creators)); } if (v9_Purpose) {set_attribute_value(8, (*v9_Purpose)); } if (v10_Duration) {set_attribute_value(9, (*v10_Duration)); } if (v11_TotalFloat) {set_attribute_value(10, (*v11_TotalFloat)); }set_attribute_value(11, (v12_StartTime)); if (v13_FinishTime) {set_attribute_value(12, (*v13_FinishTime)); } if (v14_PredefinedType) {set_attribute_value(13, (enumeration_reference(&::Ifc4x3_tc1::IfcWorkPlanTypeEnum::Class(),(size_t)*v14_PredefinedType))); }; return *this; } +Ifc4x3_tc1::IfcWorkPlan Ifc4x3_tc1::IfcWorkPlan::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, std::optional< std::string > v6_Identification, std::string v7_CreationDate, std::optional< std::vector< ::Ifc4x3_tc1::IfcPerson > > v8_Creators, std::optional< std::string > v9_Purpose, std::optional< std::string > v10_Duration, std::optional< std::string > v11_TotalFloat, std::string v12_StartTime, std::optional< std::string > v13_FinishTime, std::optional< ::Ifc4x3_tc1::IfcWorkPlanTypeEnum::Value > v14_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); } if (v6_Identification) {set_attribute_value(5, (*v6_Identification)); }set_attribute_value(6, (v7_CreationDate)); if (v8_Creators) {set_attribute_value(7, cast_vector(*v8_Creators)); } if (v9_Purpose) {set_attribute_value(8, (*v9_Purpose)); } if (v10_Duration) {set_attribute_value(9, (*v10_Duration)); } if (v11_TotalFloat) {set_attribute_value(10, (*v11_TotalFloat)); }set_attribute_value(11, (v12_StartTime)); if (v13_FinishTime) {set_attribute_value(12, (*v13_FinishTime)); } if (v14_PredefinedType) {set_attribute_value(13, (enumeration_reference(&::Ifc4x3_tc1::IfcWorkPlanTypeEnum::Class(),(size_t)*v14_PredefinedType))); }; return *this; } // Function implementations for IfcWorkSchedule std::optional< ::Ifc4x3_tc1::IfcWorkScheduleTypeEnum::Value > Ifc4x3_tc1::IfcWorkSchedule::PredefinedType() const { if(get_attribute_value(13).isNull()) { return std::nullopt; } return ::Ifc4x3_tc1::IfcWorkScheduleTypeEnum::FromString(get_attribute_value(13)); } @@ -16491,10 +16491,10 @@ void Ifc4x3_tc1::IfcWorkSchedule::setPredefinedType(const std::optional< ::Ifc4x const ifcopenshell::entity& Ifc4x3_tc1::IfcWorkSchedule::Class() { return *((ifcopenshell::entity*)IFC4X3_TC1_types[1302]); } -Ifc4x3_tc1::IfcWorkSchedule Ifc4x3_tc1::IfcWorkSchedule::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, std::optional< std::string > v6_Identification, std::string v7_CreationDate, std::optional< std::vector< ::Ifc4x3_tc1::IfcPerson > > v8_Creators, std::optional< std::string > v9_Purpose, std::optional< std::string > v10_Duration, std::optional< std::string > v11_TotalFloat, std::string v12_StartTime, std::optional< std::string > v13_FinishTime, std::optional< ::Ifc4x3_tc1::IfcWorkScheduleTypeEnum::Value > v14_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); } if (v6_Identification) {set_attribute_value(5, (*v6_Identification)); }set_attribute_value(6, (v7_CreationDate)); if (v8_Creators) {set_attribute_value(7, cast_vector(*v8_Creators)); } if (v9_Purpose) {set_attribute_value(8, (*v9_Purpose)); } if (v10_Duration) {set_attribute_value(9, (*v10_Duration)); } if (v11_TotalFloat) {set_attribute_value(10, (*v11_TotalFloat)); }set_attribute_value(11, (v12_StartTime)); if (v13_FinishTime) {set_attribute_value(12, (*v13_FinishTime)); } if (v14_PredefinedType) {set_attribute_value(13, (enumeration_reference(&::Ifc4x3_tc1::IfcWorkScheduleTypeEnum::Class(),(size_t)*v14_PredefinedType))); }; return *this; } +Ifc4x3_tc1::IfcWorkSchedule Ifc4x3_tc1::IfcWorkSchedule::initialize(std::string v1_GlobalId, ::Ifc4x3_tc1::IfcOwnerHistory v2_OwnerHistory, std::optional< std::string > v3_Name, std::optional< std::string > v4_Description, std::optional< std::string > v5_ObjectType, std::optional< std::string > v6_Identification, std::string v7_CreationDate, std::optional< std::vector< ::Ifc4x3_tc1::IfcPerson > > v8_Creators, std::optional< std::string > v9_Purpose, std::optional< std::string > v10_Duration, std::optional< std::string > v11_TotalFloat, std::string v12_StartTime, std::optional< std::string > v13_FinishTime, std::optional< ::Ifc4x3_tc1::IfcWorkScheduleTypeEnum::Value > v14_PredefinedType) { set_attribute_value(0, (v1_GlobalId));set_attribute_value(1, (v2_OwnerHistory)); if (v3_Name) {set_attribute_value(2, (*v3_Name)); } if (v4_Description) {set_attribute_value(3, (*v4_Description)); } if (v5_ObjectType) {set_attribute_value(4, (*v5_ObjectType)); } if (v6_Identification) {set_attribute_value(5, (*v6_Identification)); }set_attribute_value(6, (v7_CreationDate)); if (v8_Creators) {set_attribute_value(7, cast_vector(*v8_Creators)); } if (v9_Purpose) {set_attribute_value(8, (*v9_Purpose)); } if (v10_Duration) {set_attribute_value(9, (*v10_Duration)); } if (v11_TotalFloat) {set_attribute_value(10, (*v11_TotalFloat)); }set_attribute_value(11, (v12_StartTime)); if (v13_FinishTime) {set_attribute_value(12, (*v13_FinishTime)); } if (v14_PredefinedType) {set_attribute_value(13, (enumeration_reference(&::Ifc4x3_tc1::IfcWorkScheduleTypeEnum::Class(),(size_t)*v14_PredefinedType))); }; return *this; } // Function implementations for IfcWorkTime -::Ifc4x3_tc1::IfcRecurrencePattern Ifc4x3_tc1::IfcWorkTime::RecurrencePattern() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3_tc1::IfcRecurrencePattern{}; } return ((express::Base)(get_attribute_value(3))).as<::Ifc4x3_tc1::IfcRecurrencePattern>(); } +::Ifc4x3_tc1::IfcRecurrencePattern Ifc4x3_tc1::IfcWorkTime::RecurrencePattern() const { if(get_attribute_value(3).isNull()) { return ::Ifc4x3_tc1::IfcRecurrencePattern{}; } return ((express::base)(get_attribute_value(3))).as<::Ifc4x3_tc1::IfcRecurrencePattern>(); } void Ifc4x3_tc1::IfcWorkTime::setRecurrencePattern(const ::Ifc4x3_tc1::IfcRecurrencePattern& v) { set_attribute_value(3, v);if constexpr (false)unset_attribute_value(3); } std::optional< std::string > Ifc4x3_tc1::IfcWorkTime::StartDate() const { if(get_attribute_value(4).isNull()) { return std::nullopt; } std::string v = get_attribute_value(4); return v; } void Ifc4x3_tc1::IfcWorkTime::setStartDate(const std::optional< std::string >& v) { if (v) {set_attribute_value(4, *v);} else {unset_attribute_value(4);} } diff --git a/src/ifcparse/schemas/Ifc4x3_tc1.h b/src/ifcparse/schemas/Ifc4x3_tc1.h index df5c478715..ff4228e4c0 100644 --- a/src/ifcparse/schemas/Ifc4x3_tc1.h +++ b/src/ifcparse/schemas/Ifc4x3_tc1.h @@ -65,28 +65,28 @@ class IfcActionRequest; class IfcActor; class IfcActorRole; class IfcActuator; c /// IfcOrganization An organization. /// IfcPerson A person. /// IfcPersonAndOrganization A person related to an organization. -class IFC_SCHEMA_API IfcActorSelect : public express::Select { +class IFC_SCHEMA_API IfcActorSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcOrganization as() const { return express::Base::as(); } + // IfcOrganization as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPerson as() const { return express::Base::as(); } + // IfcPerson as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPersonAndOrganization as() const { return express::Base::as(); } + // IfcPersonAndOrganization as() const { return express::base::as(); } - IfcActorSelect(const IfcOrganization& c) : express::Select(c) {}; + IfcActorSelect(const IfcOrganization& c) : express::select(c) {}; - IfcActorSelect(const IfcPerson& c) : express::Select(c) {}; + IfcActorSelect(const IfcPerson& c) : express::select(c) {}; - IfcActorSelect(const IfcPersonAndOrganization& c) : express::Select(c) {}; + IfcActorSelect(const IfcPersonAndOrganization& c) : express::select(c) {}; }; /// IfcAppliedValueSelect defines the selection of whether a value (expressed as a ratio) or an amount should be used as the value for an IfcAppliedValue. @@ -103,694 +103,694 @@ public: /// Selecting IfcMeasureWithUnit allows the specification of both the actual figure for the value together with the currency in which the value is represented. /// Selecting IfcMonetaryMeasure allows the specification only of the value, the currency being as set by the global context /// Selecting IfcRatioMeasure assumes that the amount is a percentage or other REAL number. Note that if the amount is normally specified as -20%, then this figure will need to be converted to a multiplier of 0.8 -class IFC_SCHEMA_API IfcAppliedValueSelect : public express::Select { +class IFC_SCHEMA_API IfcAppliedValueSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMeasureWithUnit as() const { return express::Base::as(); } + // IfcMeasureWithUnit as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcReference as() const { return express::Base::as(); } + // IfcReference as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcValue as() const { return express::Base::as(); } + // IfcValue as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcDerivedMeasureValue as() const { return express::Base::as(); } + // IfcDerivedMeasureValue as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcAbsorbedDoseMeasure as() const { return express::Base::as(); } + // IfcAbsorbedDoseMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcAccelerationMeasure as() const { return express::Base::as(); } + // IfcAccelerationMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcAngularVelocityMeasure as() const { return express::Base::as(); } + // IfcAngularVelocityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcAreaDensityMeasure as() const { return express::Base::as(); } + // IfcAreaDensityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcCompoundPlaneAngleMeasure as() const { return express::Base::as(); } + // IfcCompoundPlaneAngleMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcCurvatureMeasure as() const { return express::Base::as(); } + // IfcCurvatureMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcDoseEquivalentMeasure as() const { return express::Base::as(); } + // IfcDoseEquivalentMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcDynamicViscosityMeasure as() const { return express::Base::as(); } + // IfcDynamicViscosityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcElectricCapacitanceMeasure as() const { return express::Base::as(); } + // IfcElectricCapacitanceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcElectricChargeMeasure as() const { return express::Base::as(); } + // IfcElectricChargeMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcElectricConductanceMeasure as() const { return express::Base::as(); } + // IfcElectricConductanceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcElectricResistanceMeasure as() const { return express::Base::as(); } + // IfcElectricResistanceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcElectricVoltageMeasure as() const { return express::Base::as(); } + // IfcElectricVoltageMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcEnergyMeasure as() const { return express::Base::as(); } + // IfcEnergyMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcForceMeasure as() const { return express::Base::as(); } + // IfcForceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcFrequencyMeasure as() const { return express::Base::as(); } + // IfcFrequencyMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcHeatFluxDensityMeasure as() const { return express::Base::as(); } + // IfcHeatFluxDensityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcHeatingValueMeasure as() const { return express::Base::as(); } + // IfcHeatingValueMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcIlluminanceMeasure as() const { return express::Base::as(); } + // IfcIlluminanceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcInductanceMeasure as() const { return express::Base::as(); } + // IfcInductanceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcIntegerCountRateMeasure as() const { return express::Base::as(); } + // IfcIntegerCountRateMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcIonConcentrationMeasure as() const { return express::Base::as(); } + // IfcIonConcentrationMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcIsothermalMoistureCapacityMeasure as() const { return express::Base::as(); } + // IfcIsothermalMoistureCapacityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcKinematicViscosityMeasure as() const { return express::Base::as(); } + // IfcKinematicViscosityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLinearForceMeasure as() const { return express::Base::as(); } + // IfcLinearForceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLinearMomentMeasure as() const { return express::Base::as(); } + // IfcLinearMomentMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLinearStiffnessMeasure as() const { return express::Base::as(); } + // IfcLinearStiffnessMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLinearVelocityMeasure as() const { return express::Base::as(); } + // IfcLinearVelocityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLuminousFluxMeasure as() const { return express::Base::as(); } + // IfcLuminousFluxMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLuminousIntensityDistributionMeasure as() const { return express::Base::as(); } + // IfcLuminousIntensityDistributionMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMagneticFluxDensityMeasure as() const { return express::Base::as(); } + // IfcMagneticFluxDensityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMagneticFluxMeasure as() const { return express::Base::as(); } + // IfcMagneticFluxMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMassDensityMeasure as() const { return express::Base::as(); } + // IfcMassDensityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMassFlowRateMeasure as() const { return express::Base::as(); } + // IfcMassFlowRateMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMassPerLengthMeasure as() const { return express::Base::as(); } + // IfcMassPerLengthMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcModulusOfElasticityMeasure as() const { return express::Base::as(); } + // IfcModulusOfElasticityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcModulusOfLinearSubgradeReactionMeasure as() const { return express::Base::as(); } + // IfcModulusOfLinearSubgradeReactionMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcModulusOfRotationalSubgradeReactionMeasure as() const { return express::Base::as(); } + // IfcModulusOfRotationalSubgradeReactionMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcModulusOfSubgradeReactionMeasure as() const { return express::Base::as(); } + // IfcModulusOfSubgradeReactionMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMoistureDiffusivityMeasure as() const { return express::Base::as(); } + // IfcMoistureDiffusivityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMolecularWeightMeasure as() const { return express::Base::as(); } + // IfcMolecularWeightMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMomentOfInertiaMeasure as() const { return express::Base::as(); } + // IfcMomentOfInertiaMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMonetaryMeasure as() const { return express::Base::as(); } + // IfcMonetaryMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPHMeasure as() const { return express::Base::as(); } + // IfcPHMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPlanarForceMeasure as() const { return express::Base::as(); } + // IfcPlanarForceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPowerMeasure as() const { return express::Base::as(); } + // IfcPowerMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPressureMeasure as() const { return express::Base::as(); } + // IfcPressureMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcRadioActivityMeasure as() const { return express::Base::as(); } + // IfcRadioActivityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcRotationalFrequencyMeasure as() const { return express::Base::as(); } + // IfcRotationalFrequencyMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcRotationalMassMeasure as() const { return express::Base::as(); } + // IfcRotationalMassMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcRotationalStiffnessMeasure as() const { return express::Base::as(); } + // IfcRotationalStiffnessMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSectionModulusMeasure as() const { return express::Base::as(); } + // IfcSectionModulusMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSectionalAreaIntegralMeasure as() const { return express::Base::as(); } + // IfcSectionalAreaIntegralMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcShearModulusMeasure as() const { return express::Base::as(); } + // IfcShearModulusMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSoundPowerLevelMeasure as() const { return express::Base::as(); } + // IfcSoundPowerLevelMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSoundPowerMeasure as() const { return express::Base::as(); } + // IfcSoundPowerMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSoundPressureLevelMeasure as() const { return express::Base::as(); } + // IfcSoundPressureLevelMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSoundPressureMeasure as() const { return express::Base::as(); } + // IfcSoundPressureMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSpecificHeatCapacityMeasure as() const { return express::Base::as(); } + // IfcSpecificHeatCapacityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcTemperatureGradientMeasure as() const { return express::Base::as(); } + // IfcTemperatureGradientMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcTemperatureRateOfChangeMeasure as() const { return express::Base::as(); } + // IfcTemperatureRateOfChangeMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcThermalAdmittanceMeasure as() const { return express::Base::as(); } + // IfcThermalAdmittanceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcThermalConductivityMeasure as() const { return express::Base::as(); } + // IfcThermalConductivityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcThermalExpansionCoefficientMeasure as() const { return express::Base::as(); } + // IfcThermalExpansionCoefficientMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcThermalResistanceMeasure as() const { return express::Base::as(); } + // IfcThermalResistanceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcThermalTransmittanceMeasure as() const { return express::Base::as(); } + // IfcThermalTransmittanceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcTorqueMeasure as() const { return express::Base::as(); } + // IfcTorqueMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcVaporPermeabilityMeasure as() const { return express::Base::as(); } + // IfcVaporPermeabilityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcVolumetricFlowRateMeasure as() const { return express::Base::as(); } + // IfcVolumetricFlowRateMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcWarpingConstantMeasure as() const { return express::Base::as(); } + // IfcWarpingConstantMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcWarpingMomentMeasure as() const { return express::Base::as(); } + // IfcWarpingMomentMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMeasureValue as() const { return express::Base::as(); } + // IfcMeasureValue as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcAmountOfSubstanceMeasure as() const { return express::Base::as(); } + // IfcAmountOfSubstanceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcAreaMeasure as() const { return express::Base::as(); } + // IfcAreaMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcComplexNumber as() const { return express::Base::as(); } + // IfcComplexNumber as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcContextDependentMeasure as() const { return express::Base::as(); } + // IfcContextDependentMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcCountMeasure as() const { return express::Base::as(); } + // IfcCountMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcDescriptiveMeasure as() const { return express::Base::as(); } + // IfcDescriptiveMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcElectricCurrentMeasure as() const { return express::Base::as(); } + // IfcElectricCurrentMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLengthMeasure as() const { return express::Base::as(); } + // IfcLengthMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLuminousIntensityMeasure as() const { return express::Base::as(); } + // IfcLuminousIntensityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMassMeasure as() const { return express::Base::as(); } + // IfcMassMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcNonNegativeLengthMeasure as() const { return express::Base::as(); } + // IfcNonNegativeLengthMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcNormalisedRatioMeasure as() const { return express::Base::as(); } + // IfcNormalisedRatioMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcNumericMeasure as() const { return express::Base::as(); } + // IfcNumericMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcParameterValue as() const { return express::Base::as(); } + // IfcParameterValue as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPlaneAngleMeasure as() const { return express::Base::as(); } + // IfcPlaneAngleMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPositiveLengthMeasure as() const { return express::Base::as(); } + // IfcPositiveLengthMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPositivePlaneAngleMeasure as() const { return express::Base::as(); } + // IfcPositivePlaneAngleMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPositiveRatioMeasure as() const { return express::Base::as(); } + // IfcPositiveRatioMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcRatioMeasure as() const { return express::Base::as(); } + // IfcRatioMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSolidAngleMeasure as() const { return express::Base::as(); } + // IfcSolidAngleMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcThermodynamicTemperatureMeasure as() const { return express::Base::as(); } + // IfcThermodynamicTemperatureMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcTimeMeasure as() const { return express::Base::as(); } + // IfcTimeMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcVolumeMeasure as() const { return express::Base::as(); } + // IfcVolumeMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSimpleValue as() const { return express::Base::as(); } + // IfcSimpleValue as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcBinary as() const { return express::Base::as(); } + // IfcBinary as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcBoolean as() const { return express::Base::as(); } + // IfcBoolean as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcDate as() const { return express::Base::as(); } + // IfcDate as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcDateTime as() const { return express::Base::as(); } + // IfcDateTime as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcDuration as() const { return express::Base::as(); } + // IfcDuration as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcIdentifier as() const { return express::Base::as(); } + // IfcIdentifier as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcInteger as() const { return express::Base::as(); } + // IfcInteger as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLabel as() const { return express::Base::as(); } + // IfcLabel as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLogical as() const { return express::Base::as(); } + // IfcLogical as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPositiveInteger as() const { return express::Base::as(); } + // IfcPositiveInteger as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcReal as() const { return express::Base::as(); } + // IfcReal as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcText as() const { return express::Base::as(); } + // IfcText as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcTime as() const { return express::Base::as(); } + // IfcTime as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcTimeStamp as() const { return express::Base::as(); } + // IfcTimeStamp as() const { return express::base::as(); } - IfcAppliedValueSelect(const IfcMeasureWithUnit& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcMeasureWithUnit& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcReference& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcReference& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcValue& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcValue& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcDerivedMeasureValue& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcDerivedMeasureValue& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcAbsorbedDoseMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcAbsorbedDoseMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcAccelerationMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcAccelerationMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcAngularVelocityMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcAngularVelocityMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcAreaDensityMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcAreaDensityMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcCompoundPlaneAngleMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcCompoundPlaneAngleMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcCurvatureMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcCurvatureMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcDoseEquivalentMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcDoseEquivalentMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcDynamicViscosityMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcDynamicViscosityMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcElectricCapacitanceMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcElectricCapacitanceMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcElectricChargeMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcElectricChargeMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcElectricConductanceMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcElectricConductanceMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcElectricResistanceMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcElectricResistanceMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcElectricVoltageMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcElectricVoltageMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcEnergyMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcEnergyMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcForceMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcForceMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcFrequencyMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcFrequencyMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcHeatFluxDensityMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcHeatFluxDensityMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcHeatingValueMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcHeatingValueMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcIlluminanceMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcIlluminanceMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcInductanceMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcInductanceMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcIntegerCountRateMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcIntegerCountRateMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcIonConcentrationMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcIonConcentrationMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcIsothermalMoistureCapacityMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcIsothermalMoistureCapacityMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcKinematicViscosityMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcKinematicViscosityMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcLinearForceMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcLinearForceMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcLinearMomentMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcLinearMomentMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcLinearStiffnessMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcLinearStiffnessMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcLinearVelocityMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcLinearVelocityMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcLuminousFluxMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcLuminousFluxMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcLuminousIntensityDistributionMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcLuminousIntensityDistributionMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcMagneticFluxDensityMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcMagneticFluxDensityMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcMagneticFluxMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcMagneticFluxMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcMassDensityMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcMassDensityMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcMassFlowRateMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcMassFlowRateMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcMassPerLengthMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcMassPerLengthMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcModulusOfElasticityMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcModulusOfElasticityMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcModulusOfLinearSubgradeReactionMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcModulusOfLinearSubgradeReactionMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcModulusOfRotationalSubgradeReactionMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcModulusOfRotationalSubgradeReactionMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcModulusOfSubgradeReactionMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcModulusOfSubgradeReactionMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcMoistureDiffusivityMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcMoistureDiffusivityMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcMolecularWeightMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcMolecularWeightMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcMomentOfInertiaMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcMomentOfInertiaMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcMonetaryMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcMonetaryMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcPHMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcPHMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcPlanarForceMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcPlanarForceMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcPowerMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcPowerMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcPressureMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcPressureMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcRadioActivityMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcRadioActivityMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcRotationalFrequencyMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcRotationalFrequencyMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcRotationalMassMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcRotationalMassMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcRotationalStiffnessMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcRotationalStiffnessMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcSectionModulusMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcSectionModulusMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcSectionalAreaIntegralMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcSectionalAreaIntegralMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcShearModulusMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcShearModulusMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcSoundPowerLevelMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcSoundPowerLevelMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcSoundPowerMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcSoundPowerMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcSoundPressureLevelMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcSoundPressureLevelMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcSoundPressureMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcSoundPressureMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcSpecificHeatCapacityMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcSpecificHeatCapacityMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcTemperatureGradientMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcTemperatureGradientMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcTemperatureRateOfChangeMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcTemperatureRateOfChangeMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcThermalAdmittanceMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcThermalAdmittanceMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcThermalConductivityMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcThermalConductivityMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcThermalExpansionCoefficientMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcThermalExpansionCoefficientMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcThermalResistanceMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcThermalResistanceMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcThermalTransmittanceMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcThermalTransmittanceMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcTorqueMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcTorqueMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcVaporPermeabilityMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcVaporPermeabilityMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcVolumetricFlowRateMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcVolumetricFlowRateMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcWarpingConstantMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcWarpingConstantMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcWarpingMomentMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcWarpingMomentMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcMeasureValue& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcMeasureValue& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcAmountOfSubstanceMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcAmountOfSubstanceMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcAreaMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcAreaMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcComplexNumber& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcComplexNumber& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcContextDependentMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcContextDependentMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcCountMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcCountMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcDescriptiveMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcDescriptiveMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcElectricCurrentMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcElectricCurrentMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcLengthMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcLengthMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcLuminousIntensityMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcLuminousIntensityMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcMassMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcMassMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcNonNegativeLengthMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcNonNegativeLengthMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcNormalisedRatioMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcNormalisedRatioMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcNumericMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcNumericMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcParameterValue& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcParameterValue& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcPlaneAngleMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcPlaneAngleMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcPositiveLengthMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcPositiveLengthMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcPositivePlaneAngleMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcPositivePlaneAngleMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcPositiveRatioMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcPositiveRatioMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcRatioMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcRatioMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcSolidAngleMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcSolidAngleMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcThermodynamicTemperatureMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcThermodynamicTemperatureMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcTimeMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcTimeMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcVolumeMeasure& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcVolumeMeasure& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcSimpleValue& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcSimpleValue& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcBinary& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcBinary& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcBoolean& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcBoolean& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcDate& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcDate& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcDateTime& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcDateTime& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcDuration& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcDuration& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcIdentifier& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcIdentifier& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcInteger& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcInteger& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcLabel& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcLabel& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcLogical& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcLogical& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcPositiveInteger& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcPositiveInteger& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcReal& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcReal& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcText& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcText& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcTime& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcTime& c) : express::select(c) {}; - IfcAppliedValueSelect(const IfcTimeStamp& c) : express::Select(c) {}; + IfcAppliedValueSelect(const IfcTimeStamp& c) : express::select(c) {}; }; /// Definition from ISO/CD 10303-42:1992: This select type collects together both versions of the placement as used in two dimensional or in three dimensional Cartesian space. This enables entities requiring this information to reference them without specifying the space dimensionality. @@ -798,43 +798,43 @@ public: /// NOTE: Corresponding STEP type: axis2_placement, please refer to ISO/IS 10303-42:1994, p. 19 for the final definition of the formal standard. /// /// HISTORY: New type in IFC Release 1.5 -class IFC_SCHEMA_API IfcAxis2Placement : public express::Select { +class IFC_SCHEMA_API IfcAxis2Placement : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcAxis2Placement2D as() const { return express::Base::as(); } + // IfcAxis2Placement2D as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcAxis2Placement3D as() const { return express::Base::as(); } + // IfcAxis2Placement3D as() const { return express::base::as(); } - IfcAxis2Placement(const IfcAxis2Placement2D& c) : express::Select(c) {}; + IfcAxis2Placement(const IfcAxis2Placement2D& c) : express::select(c) {}; - IfcAxis2Placement(const IfcAxis2Placement3D& c) : express::Select(c) {}; + IfcAxis2Placement(const IfcAxis2Placement3D& c) : express::select(c) {}; }; /// Definition from IAI: A select type for selecting between simple measure types for reinforcement bending parameters. /// /// HISTORY New type in IFC Release 2x4 -class IFC_SCHEMA_API IfcBendingParameterSelect : public express::Select { +class IFC_SCHEMA_API IfcBendingParameterSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLengthMeasure as() const { return express::Base::as(); } + // IfcLengthMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPlaneAngleMeasure as() const { return express::Base::as(); } + // IfcPlaneAngleMeasure as() const { return express::base::as(); } - IfcBendingParameterSelect(const IfcLengthMeasure& c) : express::Select(c) {}; + IfcBendingParameterSelect(const IfcLengthMeasure& c) : express::select(c) {}; - IfcBendingParameterSelect(const IfcPlaneAngleMeasure& c) : express::Select(c) {}; + IfcBendingParameterSelect(const IfcPlaneAngleMeasure& c) : express::select(c) {}; }; /// Definition from ISO/CD 10303-42:1992: This select type identifies @@ -853,40 +853,40 @@ public: /// (IfcSolidModel) are defined for being valid Boolean operands. /// /// HISTORY: New Type in IFC Release 1.5.1 -class IFC_SCHEMA_API IfcBooleanOperand : public express::Select { +class IFC_SCHEMA_API IfcBooleanOperand : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcBooleanResult as() const { return express::Base::as(); } + // IfcBooleanResult as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcCsgPrimitive3D as() const { return express::Base::as(); } + // IfcCsgPrimitive3D as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcHalfSpaceSolid as() const { return express::Base::as(); } + // IfcHalfSpaceSolid as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSolidModel as() const { return express::Base::as(); } + // IfcSolidModel as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcTessellatedFaceSet as() const { return express::Base::as(); } + // IfcTessellatedFaceSet as() const { return express::base::as(); } - IfcBooleanOperand(const IfcBooleanResult& c) : express::Select(c) {}; + IfcBooleanOperand(const IfcBooleanResult& c) : express::select(c) {}; - IfcBooleanOperand(const IfcCsgPrimitive3D& c) : express::Select(c) {}; + IfcBooleanOperand(const IfcCsgPrimitive3D& c) : express::select(c) {}; - IfcBooleanOperand(const IfcHalfSpaceSolid& c) : express::Select(c) {}; + IfcBooleanOperand(const IfcHalfSpaceSolid& c) : express::select(c) {}; - IfcBooleanOperand(const IfcSolidModel& c) : express::Select(c) {}; + IfcBooleanOperand(const IfcSolidModel& c) : express::select(c) {}; - IfcBooleanOperand(const IfcTessellatedFaceSet& c) : express::Select(c) {}; + IfcBooleanOperand(const IfcTessellatedFaceSet& c) : express::select(c) {}; }; /// IfcClassificationReferenceSelect enables selection of whether a classification reference is a subset of another classification reference or is a top level entry of a classification source. @@ -897,22 +897,22 @@ public: /// /// IfcClassification (for classification information) /// IfcClassificationReference (for reference into a classification source) -class IFC_SCHEMA_API IfcClassificationReferenceSelect : public express::Select { +class IFC_SCHEMA_API IfcClassificationReferenceSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcClassification as() const { return express::Base::as(); } + // IfcClassification as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcClassificationReference as() const { return express::Base::as(); } + // IfcClassificationReference as() const { return express::base::as(); } - IfcClassificationReferenceSelect(const IfcClassification& c) : express::Select(c) {}; + IfcClassificationReferenceSelect(const IfcClassification& c) : express::select(c) {}; - IfcClassificationReferenceSelect(const IfcClassificationReference& c) : express::Select(c) {}; + IfcClassificationReferenceSelect(const IfcClassificationReference& c) : express::select(c) {}; }; /// IfcClassificationSelect enables selection of whether a classification reference is to be referenced from an external source, or whether a classification is referenced as such. @@ -928,22 +928,22 @@ public: /// /// IfcClassification (for referencing a classification system) /// IfcClassificationReference (for referencing a classification item (or facet) inside a classification system) -class IFC_SCHEMA_API IfcClassificationSelect : public express::Select { +class IFC_SCHEMA_API IfcClassificationSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcClassification as() const { return express::Base::as(); } + // IfcClassification as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcClassificationReference as() const { return express::Base::as(); } + // IfcClassificationReference as() const { return express::base::as(); } - IfcClassificationSelect(const IfcClassification& c) : express::Select(c) {}; + IfcClassificationSelect(const IfcClassification& c) : express::select(c) {}; - IfcClassificationSelect(const IfcClassificationReference& c) : express::Select(c) {}; + IfcClassificationSelect(const IfcClassificationReference& c) : express::select(c) {}; }; /// Definition from ISO/CD 10303-46:1992: The colour entity defines a basic appearance of elements which shall be visualized in a picture. @@ -951,64 +951,64 @@ public: /// NOTE  Corresponding STEP name: colour. It has been made into a SELECT type in IFC to avoid multiple inheritance for pre defined colour. Please refer to ISO/IS 10303-46:1994, p. 138 for the final definition of the formal standard. /// /// HISTORY  New entity in IFC2x2. -class IFC_SCHEMA_API IfcColour : public express::Select { +class IFC_SCHEMA_API IfcColour : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcColourSpecification as() const { return express::Base::as(); } + // IfcColourSpecification as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPreDefinedColour as() const { return express::Base::as(); } + // IfcPreDefinedColour as() const { return express::base::as(); } - IfcColour(const IfcColourSpecification& c) : express::Select(c) {}; + IfcColour(const IfcColourSpecification& c) : express::select(c) {}; - IfcColour(const IfcPreDefinedColour& c) : express::Select(c) {}; + IfcColour(const IfcPreDefinedColour& c) : express::select(c) {}; }; /// The IfcColourOrFactor enables the selection of either a RGB colour value or a scalar factor value for the use as values of the reflectance components. /// /// HISTORY: New type in IFC2x2. -class IFC_SCHEMA_API IfcColourOrFactor : public express::Select { +class IFC_SCHEMA_API IfcColourOrFactor : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcColourRgb as() const { return express::Base::as(); } + // IfcColourRgb as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcNormalisedRatioMeasure as() const { return express::Base::as(); } + // IfcNormalisedRatioMeasure as() const { return express::base::as(); } - IfcColourOrFactor(const IfcColourRgb& c) : express::Select(c) {}; + IfcColourOrFactor(const IfcColourRgb& c) : express::select(c) {}; - IfcColourOrFactor(const IfcNormalisedRatioMeasure& c) : express::Select(c) {}; + IfcColourOrFactor(const IfcNormalisedRatioMeasure& c) : express::select(c) {}; }; /// IfcCoordinateReferenceSystemSelect is a select between either the local engineering coordinate system, represented by the IfcGeometricRepresentationContext, or another coordinate reference system, represented by IfcCoordinateReferenceSystem, to be the source of a coordinate operation. /// /// HISTORY  New select type in IFC2x4. -class IFC_SCHEMA_API IfcCoordinateReferenceSystemSelect : public express::Select { +class IFC_SCHEMA_API IfcCoordinateReferenceSystemSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcCoordinateReferenceSystem as() const { return express::Base::as(); } + // IfcCoordinateReferenceSystem as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcGeometricRepresentationContext as() const { return express::Base::as(); } + // IfcGeometricRepresentationContext as() const { return express::base::as(); } - IfcCoordinateReferenceSystemSelect(const IfcCoordinateReferenceSystem& c) : express::Select(c) {}; + IfcCoordinateReferenceSystemSelect(const IfcCoordinateReferenceSystem& c) : express::select(c) {}; - IfcCoordinateReferenceSystemSelect(const IfcGeometricRepresentationContext& c) : express::Select(c) {}; + IfcCoordinateReferenceSystemSelect(const IfcGeometricRepresentationContext& c) : express::select(c) {}; }; /// Definition from ISO/CD 10303-42:1992: This type identifies the types of entity which may be selected as the root of a CSG tree including a single CSG primitive as a special case. @@ -1017,22 +1017,22 @@ public: /// NOTE Corresponding ISO 10303-42 type: csg_select, please refer to ISO/IS 10303-42:1994, p.168 for the final definition of the formal standard. /// /// HISTORY New Type in IFC Release 1.5.1. -class IFC_SCHEMA_API IfcCsgSelect : public express::Select { +class IFC_SCHEMA_API IfcCsgSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcBooleanResult as() const { return express::Base::as(); } + // IfcBooleanResult as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcCsgPrimitive3D as() const { return express::Base::as(); } + // IfcCsgPrimitive3D as() const { return express::base::as(); } - IfcCsgSelect(const IfcBooleanResult& c) : express::Select(c) {}; + IfcCsgSelect(const IfcBooleanResult& c) : express::select(c) {}; - IfcCsgSelect(const IfcCsgPrimitive3D& c) : express::Select(c) {}; + IfcCsgSelect(const IfcCsgPrimitive3D& c) : express::select(c) {}; }; /// Definition from ISO/CD 10303-46:1992: The curve font or scaled curve font select is a selection of either a curve font style select (being either a predefined curve font or an explicitly defined curve font) or a curve style font and scaling. @@ -1040,78 +1040,78 @@ public: /// NOTE Corresponding ISO 10303 name: curve_font_or_scaled_curve_font_select. Please refer to ISO/IS 10303-46:1994 for the final definition of the formal standard. /// /// HISTORY New entity in IFC2x2. -class IFC_SCHEMA_API IfcCurveFontOrScaledCurveFontSelect : public express::Select { +class IFC_SCHEMA_API IfcCurveFontOrScaledCurveFontSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcCurveStyleFontAndScaling as() const { return express::Base::as(); } + // IfcCurveStyleFontAndScaling as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcCurveStyleFontSelect as() const { return express::Base::as(); } + // IfcCurveStyleFontSelect as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcCurveStyleFont as() const { return express::Base::as(); } + // IfcCurveStyleFont as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPreDefinedCurveFont as() const { return express::Base::as(); } + // IfcPreDefinedCurveFont as() const { return express::base::as(); } - IfcCurveFontOrScaledCurveFontSelect(const IfcCurveStyleFontAndScaling& c) : express::Select(c) {}; + IfcCurveFontOrScaledCurveFontSelect(const IfcCurveStyleFontAndScaling& c) : express::select(c) {}; - IfcCurveFontOrScaledCurveFontSelect(const IfcCurveStyleFontSelect& c) : express::Select(c) {}; + IfcCurveFontOrScaledCurveFontSelect(const IfcCurveStyleFontSelect& c) : express::select(c) {}; - IfcCurveFontOrScaledCurveFontSelect(const IfcCurveStyleFont& c) : express::Select(c) {}; + IfcCurveFontOrScaledCurveFontSelect(const IfcCurveStyleFont& c) : express::select(c) {}; - IfcCurveFontOrScaledCurveFontSelect(const IfcPreDefinedCurveFont& c) : express::Select(c) {}; + IfcCurveFontOrScaledCurveFontSelect(const IfcPreDefinedCurveFont& c) : express::select(c) {}; }; -class IFC_SCHEMA_API IfcCurveMeasureSelect : public express::Select { +class IFC_SCHEMA_API IfcCurveMeasureSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcNonNegativeLengthMeasure as() const { return express::Base::as(); } + // IfcNonNegativeLengthMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcParameterValue as() const { return express::Base::as(); } + // IfcParameterValue as() const { return express::base::as(); } - IfcCurveMeasureSelect(const IfcNonNegativeLengthMeasure& c) : express::Select(c) {}; + IfcCurveMeasureSelect(const IfcNonNegativeLengthMeasure& c) : express::select(c) {}; - IfcCurveMeasureSelect(const IfcParameterValue& c) : express::Select(c) {}; + IfcCurveMeasureSelect(const IfcParameterValue& c) : express::select(c) {}; }; -class IFC_SCHEMA_API IfcCurveOnSurface : public express::Select { +class IFC_SCHEMA_API IfcCurveOnSurface : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcCompositeCurveOnSurface as() const { return express::Base::as(); } + // IfcCompositeCurveOnSurface as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPcurve as() const { return express::Base::as(); } + // IfcPcurve as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSurfaceCurve as() const { return express::Base::as(); } + // IfcSurfaceCurve as() const { return express::base::as(); } - IfcCurveOnSurface(const IfcCompositeCurveOnSurface& c) : express::Select(c) {}; + IfcCurveOnSurface(const IfcCompositeCurveOnSurface& c) : express::select(c) {}; - IfcCurveOnSurface(const IfcPcurve& c) : express::Select(c) {}; + IfcCurveOnSurface(const IfcPcurve& c) : express::select(c) {}; - IfcCurveOnSurface(const IfcSurfaceCurve& c) : express::Select(c) {}; + IfcCurveOnSurface(const IfcSurfaceCurve& c) : express::select(c) {}; }; /// IfcCurveOrEdgeCurve provides the option to either select a geometric curve (IfcCurve @@ -1122,22 +1122,22 @@ public: /// IfcEdgeCurve /// /// HISTORY  New select type in IFC2x Edition 3. -class IFC_SCHEMA_API IfcCurveOrEdgeCurve : public express::Select { +class IFC_SCHEMA_API IfcCurveOrEdgeCurve : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcBoundedCurve as() const { return express::Base::as(); } + // IfcBoundedCurve as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcEdgeCurve as() const { return express::Base::as(); } + // IfcEdgeCurve as() const { return express::base::as(); } - IfcCurveOrEdgeCurve(const IfcBoundedCurve& c) : express::Select(c) {}; + IfcCurveOrEdgeCurve(const IfcBoundedCurve& c) : express::select(c) {}; - IfcCurveOrEdgeCurve(const IfcEdgeCurve& c) : express::Select(c) {}; + IfcCurveOrEdgeCurve(const IfcEdgeCurve& c) : express::select(c) {}; }; /// Definition from ISO/CD 10303-46:1992: The curve style font select is a selection of a curve style font or a predefined curve style font. @@ -1145,22 +1145,22 @@ public: /// NOTE Corresponding ISO 10303 name: curve_style_font_select. Please refer to ISO/IS 10303-46:1994 for the final definition of the formal standard. /// /// HISTORY New entity in IFC2x2. -class IFC_SCHEMA_API IfcCurveStyleFontSelect : public express::Select { +class IFC_SCHEMA_API IfcCurveStyleFontSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcCurveStyleFont as() const { return express::Base::as(); } + // IfcCurveStyleFont as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPreDefinedCurveFont as() const { return express::Base::as(); } + // IfcPreDefinedCurveFont as() const { return express::base::as(); } - IfcCurveStyleFontSelect(const IfcCurveStyleFont& c) : express::Select(c) {}; + IfcCurveStyleFontSelect(const IfcCurveStyleFont& c) : express::select(c) {}; - IfcCurveStyleFontSelect(const IfcPreDefinedCurveFont& c) : express::Select(c) {}; + IfcCurveStyleFontSelect(const IfcPreDefinedCurveFont& c) : express::select(c) {}; }; /// IfcDefinitionSelectprovides the option to either select an object or type object IfcObjectDefinition, or a property set template or property set, IfcPropertyDefinition. @@ -1170,22 +1170,22 @@ public: /// IfcPropertyDefinition /// /// HISTORY New select type in IFC2x4. -class IFC_SCHEMA_API IfcDefinitionSelect : public express::Select { +class IFC_SCHEMA_API IfcDefinitionSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcObjectDefinition as() const { return express::Base::as(); } + // IfcObjectDefinition as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPropertyDefinition as() const { return express::Base::as(); } + // IfcPropertyDefinition as() const { return express::base::as(); } - IfcDefinitionSelect(const IfcObjectDefinition& c) : express::Select(c) {}; + IfcDefinitionSelect(const IfcObjectDefinition& c) : express::select(c) {}; - IfcDefinitionSelect(const IfcPropertyDefinition& c) : express::Select(c) {}; + IfcDefinitionSelect(const IfcPropertyDefinition& c) : express::select(c) {}; }; /// IfcDerivedMeasureValue is a select type for selecting between derived measure types. @@ -1262,436 +1262,436 @@ public: /// HISTORY New type in IFC Release 2x. /// /// IFC2x4 change: added IfcTemperatureRateOfChangeMeasure. -class IFC_SCHEMA_API IfcDerivedMeasureValue : public express::Select { +class IFC_SCHEMA_API IfcDerivedMeasureValue : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcAbsorbedDoseMeasure as() const { return express::Base::as(); } + // IfcAbsorbedDoseMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcAccelerationMeasure as() const { return express::Base::as(); } + // IfcAccelerationMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcAngularVelocityMeasure as() const { return express::Base::as(); } + // IfcAngularVelocityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcAreaDensityMeasure as() const { return express::Base::as(); } + // IfcAreaDensityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcCompoundPlaneAngleMeasure as() const { return express::Base::as(); } + // IfcCompoundPlaneAngleMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcCurvatureMeasure as() const { return express::Base::as(); } + // IfcCurvatureMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcDoseEquivalentMeasure as() const { return express::Base::as(); } + // IfcDoseEquivalentMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcDynamicViscosityMeasure as() const { return express::Base::as(); } + // IfcDynamicViscosityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcElectricCapacitanceMeasure as() const { return express::Base::as(); } + // IfcElectricCapacitanceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcElectricChargeMeasure as() const { return express::Base::as(); } + // IfcElectricChargeMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcElectricConductanceMeasure as() const { return express::Base::as(); } + // IfcElectricConductanceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcElectricResistanceMeasure as() const { return express::Base::as(); } + // IfcElectricResistanceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcElectricVoltageMeasure as() const { return express::Base::as(); } + // IfcElectricVoltageMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcEnergyMeasure as() const { return express::Base::as(); } + // IfcEnergyMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcForceMeasure as() const { return express::Base::as(); } + // IfcForceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcFrequencyMeasure as() const { return express::Base::as(); } + // IfcFrequencyMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcHeatFluxDensityMeasure as() const { return express::Base::as(); } + // IfcHeatFluxDensityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcHeatingValueMeasure as() const { return express::Base::as(); } + // IfcHeatingValueMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcIlluminanceMeasure as() const { return express::Base::as(); } + // IfcIlluminanceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcInductanceMeasure as() const { return express::Base::as(); } + // IfcInductanceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcIntegerCountRateMeasure as() const { return express::Base::as(); } + // IfcIntegerCountRateMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcIonConcentrationMeasure as() const { return express::Base::as(); } + // IfcIonConcentrationMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcIsothermalMoistureCapacityMeasure as() const { return express::Base::as(); } + // IfcIsothermalMoistureCapacityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcKinematicViscosityMeasure as() const { return express::Base::as(); } + // IfcKinematicViscosityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLinearForceMeasure as() const { return express::Base::as(); } + // IfcLinearForceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLinearMomentMeasure as() const { return express::Base::as(); } + // IfcLinearMomentMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLinearStiffnessMeasure as() const { return express::Base::as(); } + // IfcLinearStiffnessMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLinearVelocityMeasure as() const { return express::Base::as(); } + // IfcLinearVelocityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLuminousFluxMeasure as() const { return express::Base::as(); } + // IfcLuminousFluxMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLuminousIntensityDistributionMeasure as() const { return express::Base::as(); } + // IfcLuminousIntensityDistributionMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMagneticFluxDensityMeasure as() const { return express::Base::as(); } + // IfcMagneticFluxDensityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMagneticFluxMeasure as() const { return express::Base::as(); } + // IfcMagneticFluxMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMassDensityMeasure as() const { return express::Base::as(); } + // IfcMassDensityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMassFlowRateMeasure as() const { return express::Base::as(); } + // IfcMassFlowRateMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMassPerLengthMeasure as() const { return express::Base::as(); } + // IfcMassPerLengthMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcModulusOfElasticityMeasure as() const { return express::Base::as(); } + // IfcModulusOfElasticityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcModulusOfLinearSubgradeReactionMeasure as() const { return express::Base::as(); } + // IfcModulusOfLinearSubgradeReactionMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcModulusOfRotationalSubgradeReactionMeasure as() const { return express::Base::as(); } + // IfcModulusOfRotationalSubgradeReactionMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcModulusOfSubgradeReactionMeasure as() const { return express::Base::as(); } + // IfcModulusOfSubgradeReactionMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMoistureDiffusivityMeasure as() const { return express::Base::as(); } + // IfcMoistureDiffusivityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMolecularWeightMeasure as() const { return express::Base::as(); } + // IfcMolecularWeightMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMomentOfInertiaMeasure as() const { return express::Base::as(); } + // IfcMomentOfInertiaMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMonetaryMeasure as() const { return express::Base::as(); } + // IfcMonetaryMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPHMeasure as() const { return express::Base::as(); } + // IfcPHMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPlanarForceMeasure as() const { return express::Base::as(); } + // IfcPlanarForceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPowerMeasure as() const { return express::Base::as(); } + // IfcPowerMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPressureMeasure as() const { return express::Base::as(); } + // IfcPressureMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcRadioActivityMeasure as() const { return express::Base::as(); } + // IfcRadioActivityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcRotationalFrequencyMeasure as() const { return express::Base::as(); } + // IfcRotationalFrequencyMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcRotationalMassMeasure as() const { return express::Base::as(); } + // IfcRotationalMassMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcRotationalStiffnessMeasure as() const { return express::Base::as(); } + // IfcRotationalStiffnessMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSectionModulusMeasure as() const { return express::Base::as(); } + // IfcSectionModulusMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSectionalAreaIntegralMeasure as() const { return express::Base::as(); } + // IfcSectionalAreaIntegralMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcShearModulusMeasure as() const { return express::Base::as(); } + // IfcShearModulusMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSoundPowerLevelMeasure as() const { return express::Base::as(); } + // IfcSoundPowerLevelMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSoundPowerMeasure as() const { return express::Base::as(); } + // IfcSoundPowerMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSoundPressureLevelMeasure as() const { return express::Base::as(); } + // IfcSoundPressureLevelMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSoundPressureMeasure as() const { return express::Base::as(); } + // IfcSoundPressureMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSpecificHeatCapacityMeasure as() const { return express::Base::as(); } + // IfcSpecificHeatCapacityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcTemperatureGradientMeasure as() const { return express::Base::as(); } + // IfcTemperatureGradientMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcTemperatureRateOfChangeMeasure as() const { return express::Base::as(); } + // IfcTemperatureRateOfChangeMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcThermalAdmittanceMeasure as() const { return express::Base::as(); } + // IfcThermalAdmittanceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcThermalConductivityMeasure as() const { return express::Base::as(); } + // IfcThermalConductivityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcThermalExpansionCoefficientMeasure as() const { return express::Base::as(); } + // IfcThermalExpansionCoefficientMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcThermalResistanceMeasure as() const { return express::Base::as(); } + // IfcThermalResistanceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcThermalTransmittanceMeasure as() const { return express::Base::as(); } + // IfcThermalTransmittanceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcTorqueMeasure as() const { return express::Base::as(); } + // IfcTorqueMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcVaporPermeabilityMeasure as() const { return express::Base::as(); } + // IfcVaporPermeabilityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcVolumetricFlowRateMeasure as() const { return express::Base::as(); } + // IfcVolumetricFlowRateMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcWarpingConstantMeasure as() const { return express::Base::as(); } + // IfcWarpingConstantMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcWarpingMomentMeasure as() const { return express::Base::as(); } + // IfcWarpingMomentMeasure as() const { return express::base::as(); } - IfcDerivedMeasureValue(const IfcAbsorbedDoseMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcAbsorbedDoseMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcAccelerationMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcAccelerationMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcAngularVelocityMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcAngularVelocityMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcAreaDensityMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcAreaDensityMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcCompoundPlaneAngleMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcCompoundPlaneAngleMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcCurvatureMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcCurvatureMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcDoseEquivalentMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcDoseEquivalentMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcDynamicViscosityMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcDynamicViscosityMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcElectricCapacitanceMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcElectricCapacitanceMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcElectricChargeMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcElectricChargeMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcElectricConductanceMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcElectricConductanceMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcElectricResistanceMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcElectricResistanceMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcElectricVoltageMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcElectricVoltageMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcEnergyMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcEnergyMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcForceMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcForceMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcFrequencyMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcFrequencyMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcHeatFluxDensityMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcHeatFluxDensityMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcHeatingValueMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcHeatingValueMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcIlluminanceMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcIlluminanceMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcInductanceMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcInductanceMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcIntegerCountRateMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcIntegerCountRateMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcIonConcentrationMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcIonConcentrationMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcIsothermalMoistureCapacityMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcIsothermalMoistureCapacityMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcKinematicViscosityMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcKinematicViscosityMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcLinearForceMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcLinearForceMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcLinearMomentMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcLinearMomentMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcLinearStiffnessMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcLinearStiffnessMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcLinearVelocityMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcLinearVelocityMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcLuminousFluxMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcLuminousFluxMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcLuminousIntensityDistributionMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcLuminousIntensityDistributionMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcMagneticFluxDensityMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcMagneticFluxDensityMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcMagneticFluxMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcMagneticFluxMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcMassDensityMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcMassDensityMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcMassFlowRateMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcMassFlowRateMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcMassPerLengthMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcMassPerLengthMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcModulusOfElasticityMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcModulusOfElasticityMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcModulusOfLinearSubgradeReactionMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcModulusOfLinearSubgradeReactionMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcModulusOfRotationalSubgradeReactionMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcModulusOfRotationalSubgradeReactionMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcModulusOfSubgradeReactionMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcModulusOfSubgradeReactionMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcMoistureDiffusivityMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcMoistureDiffusivityMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcMolecularWeightMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcMolecularWeightMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcMomentOfInertiaMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcMomentOfInertiaMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcMonetaryMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcMonetaryMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcPHMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcPHMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcPlanarForceMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcPlanarForceMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcPowerMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcPowerMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcPressureMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcPressureMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcRadioActivityMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcRadioActivityMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcRotationalFrequencyMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcRotationalFrequencyMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcRotationalMassMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcRotationalMassMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcRotationalStiffnessMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcRotationalStiffnessMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcSectionModulusMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcSectionModulusMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcSectionalAreaIntegralMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcSectionalAreaIntegralMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcShearModulusMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcShearModulusMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcSoundPowerLevelMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcSoundPowerLevelMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcSoundPowerMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcSoundPowerMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcSoundPressureLevelMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcSoundPressureLevelMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcSoundPressureMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcSoundPressureMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcSpecificHeatCapacityMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcSpecificHeatCapacityMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcTemperatureGradientMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcTemperatureGradientMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcTemperatureRateOfChangeMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcTemperatureRateOfChangeMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcThermalAdmittanceMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcThermalAdmittanceMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcThermalConductivityMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcThermalConductivityMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcThermalExpansionCoefficientMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcThermalExpansionCoefficientMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcThermalResistanceMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcThermalResistanceMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcThermalTransmittanceMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcThermalTransmittanceMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcTorqueMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcTorqueMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcVaporPermeabilityMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcVaporPermeabilityMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcVolumetricFlowRateMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcVolumetricFlowRateMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcWarpingConstantMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcWarpingConstantMeasure& c) : express::select(c) {}; - IfcDerivedMeasureValue(const IfcWarpingMomentMeasure& c) : express::Select(c) {}; + IfcDerivedMeasureValue(const IfcWarpingMomentMeasure& c) : express::select(c) {}; }; /// IfcDocumentSelect enables selection of whether document information is to be contained within an IFC model or is to be referenced from an external source. @@ -1702,22 +1702,22 @@ public: /// /// IfcDocumentInformation (for "metadata" of an external document) /// IfcDocumentReference (for reference within a document) -class IFC_SCHEMA_API IfcDocumentSelect : public express::Select { +class IFC_SCHEMA_API IfcDocumentSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcDocumentInformation as() const { return express::Base::as(); } + // IfcDocumentInformation as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcDocumentReference as() const { return express::Base::as(); } + // IfcDocumentReference as() const { return express::base::as(); } - IfcDocumentSelect(const IfcDocumentInformation& c) : express::Select(c) {}; + IfcDocumentSelect(const IfcDocumentInformation& c) : express::select(c) {}; - IfcDocumentSelect(const IfcDocumentReference& c) : express::Select(c) {}; + IfcDocumentSelect(const IfcDocumentReference& c) : express::select(c) {}; }; /// Definition from ISO/CD 10303-46:1992: The fill style select is a selection between different fill area styles. @@ -1726,46 +1726,46 @@ public: /// the final definition of the formal standard. /// /// HISTORY New type in IFC2x2. -class IFC_SCHEMA_API IfcFillStyleSelect : public express::Select { +class IFC_SCHEMA_API IfcFillStyleSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcColour as() const { return express::Base::as(); } + // IfcColour as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcColourSpecification as() const { return express::Base::as(); } + // IfcColourSpecification as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPreDefinedColour as() const { return express::Base::as(); } + // IfcPreDefinedColour as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcExternallyDefinedHatchStyle as() const { return express::Base::as(); } + // IfcExternallyDefinedHatchStyle as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcFillAreaStyleHatching as() const { return express::Base::as(); } + // IfcFillAreaStyleHatching as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcFillAreaStyleTiles as() const { return express::Base::as(); } + // IfcFillAreaStyleTiles as() const { return express::base::as(); } - IfcFillStyleSelect(const IfcColour& c) : express::Select(c) {}; + IfcFillStyleSelect(const IfcColour& c) : express::select(c) {}; - IfcFillStyleSelect(const IfcColourSpecification& c) : express::Select(c) {}; + IfcFillStyleSelect(const IfcColourSpecification& c) : express::select(c) {}; - IfcFillStyleSelect(const IfcPreDefinedColour& c) : express::Select(c) {}; + IfcFillStyleSelect(const IfcPreDefinedColour& c) : express::select(c) {}; - IfcFillStyleSelect(const IfcExternallyDefinedHatchStyle& c) : express::Select(c) {}; + IfcFillStyleSelect(const IfcExternallyDefinedHatchStyle& c) : express::select(c) {}; - IfcFillStyleSelect(const IfcFillAreaStyleHatching& c) : express::Select(c) {}; + IfcFillStyleSelect(const IfcFillAreaStyleHatching& c) : express::select(c) {}; - IfcFillStyleSelect(const IfcFillAreaStyleTiles& c) : express::Select(c) {}; + IfcFillStyleSelect(const IfcFillAreaStyleTiles& c) : express::select(c) {}; }; /// Definition from ISO/CD 10303-42:1992: This select type identifies the types of entities which can occur in a geometric set. @@ -1773,28 +1773,28 @@ public: /// NOTE: Corresponding ISO 10303 type: geometric_set_select. Please refer to ISO/IS 10303-42:1994, p. 169 for the final definition of the formal standard. /// /// HISTORY: New type in IFC Release 2x. -class IFC_SCHEMA_API IfcGeometricSetSelect : public express::Select { +class IFC_SCHEMA_API IfcGeometricSetSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcCurve as() const { return express::Base::as(); } + // IfcCurve as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPoint as() const { return express::Base::as(); } + // IfcPoint as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSurface as() const { return express::Base::as(); } + // IfcSurface as() const { return express::base::as(); } - IfcGeometricSetSelect(const IfcCurve& c) : express::Select(c) {}; + IfcGeometricSetSelect(const IfcCurve& c) : express::select(c) {}; - IfcGeometricSetSelect(const IfcPoint& c) : express::Select(c) {}; + IfcGeometricSetSelect(const IfcPoint& c) : express::select(c) {}; - IfcGeometricSetSelect(const IfcSurface& c) : express::Select(c) {}; + IfcGeometricSetSelect(const IfcSurface& c) : express::select(c) {}; }; /// IfcGridPlacementDirectionSelect enables the choice of defining a grid placement be either an explicit direction, or by referencing a second grid intersection to provide the direction. @@ -1805,62 +1805,62 @@ public: /// IfcVirtualGridIntersection /// /// HISTORY New select type in IFC2x4. -class IFC_SCHEMA_API IfcGridPlacementDirectionSelect : public express::Select { +class IFC_SCHEMA_API IfcGridPlacementDirectionSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcDirection as() const { return express::Base::as(); } + // IfcDirection as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcVirtualGridIntersection as() const { return express::Base::as(); } + // IfcVirtualGridIntersection as() const { return express::base::as(); } - IfcGridPlacementDirectionSelect(const IfcDirection& c) : express::Select(c) {}; + IfcGridPlacementDirectionSelect(const IfcDirection& c) : express::select(c) {}; - IfcGridPlacementDirectionSelect(const IfcVirtualGridIntersection& c) : express::Select(c) {}; + IfcGridPlacementDirectionSelect(const IfcVirtualGridIntersection& c) : express::select(c) {}; }; /// The IfcHatchLineDistanceSelect is a selection between different ways to determine the distance and potentially start point of hatch lines, either by an offset distance length measure or by a vector. /// /// HISTORY  New type in IFC2x3. -class IFC_SCHEMA_API IfcHatchLineDistanceSelect : public express::Select { +class IFC_SCHEMA_API IfcHatchLineDistanceSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPositiveLengthMeasure as() const { return express::Base::as(); } + // IfcPositiveLengthMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcVector as() const { return express::Base::as(); } + // IfcVector as() const { return express::base::as(); } - IfcHatchLineDistanceSelect(const IfcPositiveLengthMeasure& c) : express::Select(c) {}; + IfcHatchLineDistanceSelect(const IfcPositiveLengthMeasure& c) : express::select(c) {}; - IfcHatchLineDistanceSelect(const IfcVector& c) : express::Select(c) {}; + IfcHatchLineDistanceSelect(const IfcVector& c) : express::select(c) {}; }; -class IFC_SCHEMA_API IfcInterferenceSelect : public express::Select { +class IFC_SCHEMA_API IfcInterferenceSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcElement as() const { return express::Base::as(); } + // IfcElement as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSpatialElement as() const { return express::Base::as(); } + // IfcSpatialElement as() const { return express::base::as(); } - IfcInterferenceSelect(const IfcElement& c) : express::Select(c) {}; + IfcInterferenceSelect(const IfcElement& c) : express::select(c) {}; - IfcInterferenceSelect(const IfcSpatialElement& c) : express::Select(c) {}; + IfcInterferenceSelect(const IfcSpatialElement& c) : express::select(c) {}; }; /// Definition from ISO/CD 10303-46:1992: The layered things type selects those things, which can be grouped in layers. @@ -1870,22 +1870,22 @@ public: /// NOTE: Corresponding ISO 10303 name: layered_item. It was called layered_things in the ISO/CD version and had been renamed to layered_item in the ISO/IS final version. Please refer to ISO/IS 10303-46:1994, p. 13 for the final definition of the formal standard. /// /// HISTORY: New type in IFC2x2. -class IFC_SCHEMA_API IfcLayeredItem : public express::Select { +class IFC_SCHEMA_API IfcLayeredItem : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcRepresentation as() const { return express::Base::as(); } + // IfcRepresentation as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcRepresentationItem as() const { return express::Base::as(); } + // IfcRepresentationItem as() const { return express::base::as(); } - IfcLayeredItem(const IfcRepresentation& c) : express::Select(c) {}; + IfcLayeredItem(const IfcRepresentation& c) : express::select(c) {}; - IfcLayeredItem(const IfcRepresentationItem& c) : express::Select(c) {}; + IfcLayeredItem(const IfcRepresentationItem& c) : express::select(c) {}; }; /// IfcLibrarySelect enables selection of whether library information is to be contained within an IFC model or is to be referenced from an external source. @@ -1898,22 +1898,22 @@ public: /// IfcLibraryReference (for reference into a library of information by location) /// /// Generally, it is expected that selection will be IfcLibraryReference and only rarely IfcLibraryInformation. IfcLibraryInformation should only be selected in circumstances where there could be a need to indicate the libraries that will be used without making individual references. This may occur for higher level objects such as a project or building. -class IFC_SCHEMA_API IfcLibrarySelect : public express::Select { +class IFC_SCHEMA_API IfcLibrarySelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLibraryInformation as() const { return express::Base::as(); } + // IfcLibraryInformation as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLibraryReference as() const { return express::Base::as(); } + // IfcLibraryReference as() const { return express::base::as(); } - IfcLibrarySelect(const IfcLibraryInformation& c) : express::Select(c) {}; + IfcLibrarySelect(const IfcLibraryInformation& c) : express::select(c) {}; - IfcLibrarySelect(const IfcLibraryReference& c) : express::Select(c) {}; + IfcLibrarySelect(const IfcLibraryReference& c) : express::select(c) {}; }; /// A goniometric light gets its intensity distribution function (how much light goes in any one direction) from one of two sources: (i) an industry-standard file, (ii) from distribution data passed directly via the IfcLightIntensityDistribution. @@ -1938,22 +1938,22 @@ public: /// directions covers all cases. /// /// HISTORY New type in IFC2x2. -class IFC_SCHEMA_API IfcLightDistributionDataSourceSelect : public express::Select { +class IFC_SCHEMA_API IfcLightDistributionDataSourceSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcExternalReference as() const { return express::Base::as(); } + // IfcExternalReference as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLightIntensityDistribution as() const { return express::Base::as(); } + // IfcLightIntensityDistribution as() const { return express::base::as(); } - IfcLightDistributionDataSourceSelect(const IfcExternalReference& c) : express::Select(c) {}; + IfcLightDistributionDataSourceSelect(const IfcExternalReference& c) : express::select(c) {}; - IfcLightDistributionDataSourceSelect(const IfcLightIntensityDistribution& c) : express::Select(c) {}; + IfcLightDistributionDataSourceSelect(const IfcLightIntensityDistribution& c) : express::select(c) {}; }; /// IfcMaterialSelect provides selection of either a material @@ -1982,28 +1982,28 @@ public: /// /// IFC2x4 CHANGE The select now includes two new abstract entities IfcMaterialDefinition /// and IfcMaterialUsageDefinition with upward compatibility. The use of IfcMaterialList is deprecated from IFC2x4 onwards. -class IFC_SCHEMA_API IfcMaterialSelect : public express::Select { +class IFC_SCHEMA_API IfcMaterialSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMaterialDefinition as() const { return express::Base::as(); } + // IfcMaterialDefinition as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMaterialList as() const { return express::Base::as(); } + // IfcMaterialList as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMaterialUsageDefinition as() const { return express::Base::as(); } + // IfcMaterialUsageDefinition as() const { return express::base::as(); } - IfcMaterialSelect(const IfcMaterialDefinition& c) : express::Select(c) {}; + IfcMaterialSelect(const IfcMaterialDefinition& c) : express::select(c) {}; - IfcMaterialSelect(const IfcMaterialList& c) : express::Select(c) {}; + IfcMaterialSelect(const IfcMaterialList& c) : express::select(c) {}; - IfcMaterialSelect(const IfcMaterialUsageDefinition& c) : express::Select(c) {}; + IfcMaterialSelect(const IfcMaterialUsageDefinition& c) : express::select(c) {}; }; /// Definition from ISO/CD 10303-41:1992: A measure value is a value as defined in ISO 31-0 (clause 2). @@ -2015,148 +2015,148 @@ public: /// HISTORY New type in IFC Release 1.5.1. /// /// IFC 2x4 change: added IfcNonNegativeLengthMeasure -class IFC_SCHEMA_API IfcMeasureValue : public express::Select { +class IFC_SCHEMA_API IfcMeasureValue : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcAmountOfSubstanceMeasure as() const { return express::Base::as(); } + // IfcAmountOfSubstanceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcAreaMeasure as() const { return express::Base::as(); } + // IfcAreaMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcComplexNumber as() const { return express::Base::as(); } + // IfcComplexNumber as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcContextDependentMeasure as() const { return express::Base::as(); } + // IfcContextDependentMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcCountMeasure as() const { return express::Base::as(); } + // IfcCountMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcDescriptiveMeasure as() const { return express::Base::as(); } + // IfcDescriptiveMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcElectricCurrentMeasure as() const { return express::Base::as(); } + // IfcElectricCurrentMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLengthMeasure as() const { return express::Base::as(); } + // IfcLengthMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLuminousIntensityMeasure as() const { return express::Base::as(); } + // IfcLuminousIntensityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMassMeasure as() const { return express::Base::as(); } + // IfcMassMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcNonNegativeLengthMeasure as() const { return express::Base::as(); } + // IfcNonNegativeLengthMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcNormalisedRatioMeasure as() const { return express::Base::as(); } + // IfcNormalisedRatioMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcNumericMeasure as() const { return express::Base::as(); } + // IfcNumericMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcParameterValue as() const { return express::Base::as(); } + // IfcParameterValue as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPlaneAngleMeasure as() const { return express::Base::as(); } + // IfcPlaneAngleMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPositiveLengthMeasure as() const { return express::Base::as(); } + // IfcPositiveLengthMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPositivePlaneAngleMeasure as() const { return express::Base::as(); } + // IfcPositivePlaneAngleMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPositiveRatioMeasure as() const { return express::Base::as(); } + // IfcPositiveRatioMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcRatioMeasure as() const { return express::Base::as(); } + // IfcRatioMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSolidAngleMeasure as() const { return express::Base::as(); } + // IfcSolidAngleMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcThermodynamicTemperatureMeasure as() const { return express::Base::as(); } + // IfcThermodynamicTemperatureMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcTimeMeasure as() const { return express::Base::as(); } + // IfcTimeMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcVolumeMeasure as() const { return express::Base::as(); } + // IfcVolumeMeasure as() const { return express::base::as(); } - IfcMeasureValue(const IfcAmountOfSubstanceMeasure& c) : express::Select(c) {}; + IfcMeasureValue(const IfcAmountOfSubstanceMeasure& c) : express::select(c) {}; - IfcMeasureValue(const IfcAreaMeasure& c) : express::Select(c) {}; + IfcMeasureValue(const IfcAreaMeasure& c) : express::select(c) {}; - IfcMeasureValue(const IfcComplexNumber& c) : express::Select(c) {}; + IfcMeasureValue(const IfcComplexNumber& c) : express::select(c) {}; - IfcMeasureValue(const IfcContextDependentMeasure& c) : express::Select(c) {}; + IfcMeasureValue(const IfcContextDependentMeasure& c) : express::select(c) {}; - IfcMeasureValue(const IfcCountMeasure& c) : express::Select(c) {}; + IfcMeasureValue(const IfcCountMeasure& c) : express::select(c) {}; - IfcMeasureValue(const IfcDescriptiveMeasure& c) : express::Select(c) {}; + IfcMeasureValue(const IfcDescriptiveMeasure& c) : express::select(c) {}; - IfcMeasureValue(const IfcElectricCurrentMeasure& c) : express::Select(c) {}; + IfcMeasureValue(const IfcElectricCurrentMeasure& c) : express::select(c) {}; - IfcMeasureValue(const IfcLengthMeasure& c) : express::Select(c) {}; + IfcMeasureValue(const IfcLengthMeasure& c) : express::select(c) {}; - IfcMeasureValue(const IfcLuminousIntensityMeasure& c) : express::Select(c) {}; + IfcMeasureValue(const IfcLuminousIntensityMeasure& c) : express::select(c) {}; - IfcMeasureValue(const IfcMassMeasure& c) : express::Select(c) {}; + IfcMeasureValue(const IfcMassMeasure& c) : express::select(c) {}; - IfcMeasureValue(const IfcNonNegativeLengthMeasure& c) : express::Select(c) {}; + IfcMeasureValue(const IfcNonNegativeLengthMeasure& c) : express::select(c) {}; - IfcMeasureValue(const IfcNormalisedRatioMeasure& c) : express::Select(c) {}; + IfcMeasureValue(const IfcNormalisedRatioMeasure& c) : express::select(c) {}; - IfcMeasureValue(const IfcNumericMeasure& c) : express::Select(c) {}; + IfcMeasureValue(const IfcNumericMeasure& c) : express::select(c) {}; - IfcMeasureValue(const IfcParameterValue& c) : express::Select(c) {}; + IfcMeasureValue(const IfcParameterValue& c) : express::select(c) {}; - IfcMeasureValue(const IfcPlaneAngleMeasure& c) : express::Select(c) {}; + IfcMeasureValue(const IfcPlaneAngleMeasure& c) : express::select(c) {}; - IfcMeasureValue(const IfcPositiveLengthMeasure& c) : express::Select(c) {}; + IfcMeasureValue(const IfcPositiveLengthMeasure& c) : express::select(c) {}; - IfcMeasureValue(const IfcPositivePlaneAngleMeasure& c) : express::Select(c) {}; + IfcMeasureValue(const IfcPositivePlaneAngleMeasure& c) : express::select(c) {}; - IfcMeasureValue(const IfcPositiveRatioMeasure& c) : express::Select(c) {}; + IfcMeasureValue(const IfcPositiveRatioMeasure& c) : express::select(c) {}; - IfcMeasureValue(const IfcRatioMeasure& c) : express::Select(c) {}; + IfcMeasureValue(const IfcRatioMeasure& c) : express::select(c) {}; - IfcMeasureValue(const IfcSolidAngleMeasure& c) : express::Select(c) {}; + IfcMeasureValue(const IfcSolidAngleMeasure& c) : express::select(c) {}; - IfcMeasureValue(const IfcThermodynamicTemperatureMeasure& c) : express::Select(c) {}; + IfcMeasureValue(const IfcThermodynamicTemperatureMeasure& c) : express::select(c) {}; - IfcMeasureValue(const IfcTimeMeasure& c) : express::Select(c) {}; + IfcMeasureValue(const IfcTimeMeasure& c) : express::select(c) {}; - IfcMeasureValue(const IfcVolumeMeasure& c) : express::Select(c) {}; + IfcMeasureValue(const IfcVolumeMeasure& c) : express::select(c) {}; }; /// IfcMetricValueSelect is a select type that enables selection of the data type for the value component of an IfcMetric. @@ -2171,838 +2171,838 @@ public: /// IfcTable /// IfcText /// IfcTimeSeries -class IFC_SCHEMA_API IfcMetricValueSelect : public express::Select { +class IFC_SCHEMA_API IfcMetricValueSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcAppliedValue as() const { return express::Base::as(); } + // IfcAppliedValue as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMeasureWithUnit as() const { return express::Base::as(); } + // IfcMeasureWithUnit as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcReference as() const { return express::Base::as(); } + // IfcReference as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcTable as() const { return express::Base::as(); } + // IfcTable as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcTimeSeries as() const { return express::Base::as(); } + // IfcTimeSeries as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcValue as() const { return express::Base::as(); } + // IfcValue as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcDerivedMeasureValue as() const { return express::Base::as(); } + // IfcDerivedMeasureValue as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcAbsorbedDoseMeasure as() const { return express::Base::as(); } + // IfcAbsorbedDoseMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcAccelerationMeasure as() const { return express::Base::as(); } + // IfcAccelerationMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcAngularVelocityMeasure as() const { return express::Base::as(); } + // IfcAngularVelocityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcAreaDensityMeasure as() const { return express::Base::as(); } + // IfcAreaDensityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcCompoundPlaneAngleMeasure as() const { return express::Base::as(); } + // IfcCompoundPlaneAngleMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcCurvatureMeasure as() const { return express::Base::as(); } + // IfcCurvatureMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcDoseEquivalentMeasure as() const { return express::Base::as(); } + // IfcDoseEquivalentMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcDynamicViscosityMeasure as() const { return express::Base::as(); } + // IfcDynamicViscosityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcElectricCapacitanceMeasure as() const { return express::Base::as(); } + // IfcElectricCapacitanceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcElectricChargeMeasure as() const { return express::Base::as(); } + // IfcElectricChargeMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcElectricConductanceMeasure as() const { return express::Base::as(); } + // IfcElectricConductanceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcElectricResistanceMeasure as() const { return express::Base::as(); } + // IfcElectricResistanceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcElectricVoltageMeasure as() const { return express::Base::as(); } + // IfcElectricVoltageMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcEnergyMeasure as() const { return express::Base::as(); } + // IfcEnergyMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcForceMeasure as() const { return express::Base::as(); } + // IfcForceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcFrequencyMeasure as() const { return express::Base::as(); } + // IfcFrequencyMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcHeatFluxDensityMeasure as() const { return express::Base::as(); } + // IfcHeatFluxDensityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcHeatingValueMeasure as() const { return express::Base::as(); } + // IfcHeatingValueMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcIlluminanceMeasure as() const { return express::Base::as(); } + // IfcIlluminanceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcInductanceMeasure as() const { return express::Base::as(); } + // IfcInductanceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcIntegerCountRateMeasure as() const { return express::Base::as(); } + // IfcIntegerCountRateMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcIonConcentrationMeasure as() const { return express::Base::as(); } + // IfcIonConcentrationMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcIsothermalMoistureCapacityMeasure as() const { return express::Base::as(); } + // IfcIsothermalMoistureCapacityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcKinematicViscosityMeasure as() const { return express::Base::as(); } + // IfcKinematicViscosityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLinearForceMeasure as() const { return express::Base::as(); } + // IfcLinearForceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLinearMomentMeasure as() const { return express::Base::as(); } + // IfcLinearMomentMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLinearStiffnessMeasure as() const { return express::Base::as(); } + // IfcLinearStiffnessMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLinearVelocityMeasure as() const { return express::Base::as(); } + // IfcLinearVelocityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLuminousFluxMeasure as() const { return express::Base::as(); } + // IfcLuminousFluxMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLuminousIntensityDistributionMeasure as() const { return express::Base::as(); } + // IfcLuminousIntensityDistributionMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMagneticFluxDensityMeasure as() const { return express::Base::as(); } + // IfcMagneticFluxDensityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMagneticFluxMeasure as() const { return express::Base::as(); } + // IfcMagneticFluxMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMassDensityMeasure as() const { return express::Base::as(); } + // IfcMassDensityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMassFlowRateMeasure as() const { return express::Base::as(); } + // IfcMassFlowRateMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMassPerLengthMeasure as() const { return express::Base::as(); } + // IfcMassPerLengthMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcModulusOfElasticityMeasure as() const { return express::Base::as(); } + // IfcModulusOfElasticityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcModulusOfLinearSubgradeReactionMeasure as() const { return express::Base::as(); } + // IfcModulusOfLinearSubgradeReactionMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcModulusOfRotationalSubgradeReactionMeasure as() const { return express::Base::as(); } + // IfcModulusOfRotationalSubgradeReactionMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcModulusOfSubgradeReactionMeasure as() const { return express::Base::as(); } + // IfcModulusOfSubgradeReactionMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMoistureDiffusivityMeasure as() const { return express::Base::as(); } + // IfcMoistureDiffusivityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMolecularWeightMeasure as() const { return express::Base::as(); } + // IfcMolecularWeightMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMomentOfInertiaMeasure as() const { return express::Base::as(); } + // IfcMomentOfInertiaMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMonetaryMeasure as() const { return express::Base::as(); } + // IfcMonetaryMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPHMeasure as() const { return express::Base::as(); } + // IfcPHMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPlanarForceMeasure as() const { return express::Base::as(); } + // IfcPlanarForceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPowerMeasure as() const { return express::Base::as(); } + // IfcPowerMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPressureMeasure as() const { return express::Base::as(); } + // IfcPressureMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcRadioActivityMeasure as() const { return express::Base::as(); } + // IfcRadioActivityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcRotationalFrequencyMeasure as() const { return express::Base::as(); } + // IfcRotationalFrequencyMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcRotationalMassMeasure as() const { return express::Base::as(); } + // IfcRotationalMassMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcRotationalStiffnessMeasure as() const { return express::Base::as(); } + // IfcRotationalStiffnessMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSectionModulusMeasure as() const { return express::Base::as(); } + // IfcSectionModulusMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSectionalAreaIntegralMeasure as() const { return express::Base::as(); } + // IfcSectionalAreaIntegralMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcShearModulusMeasure as() const { return express::Base::as(); } + // IfcShearModulusMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSoundPowerLevelMeasure as() const { return express::Base::as(); } + // IfcSoundPowerLevelMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSoundPowerMeasure as() const { return express::Base::as(); } + // IfcSoundPowerMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSoundPressureLevelMeasure as() const { return express::Base::as(); } + // IfcSoundPressureLevelMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSoundPressureMeasure as() const { return express::Base::as(); } + // IfcSoundPressureMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSpecificHeatCapacityMeasure as() const { return express::Base::as(); } + // IfcSpecificHeatCapacityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcTemperatureGradientMeasure as() const { return express::Base::as(); } + // IfcTemperatureGradientMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcTemperatureRateOfChangeMeasure as() const { return express::Base::as(); } + // IfcTemperatureRateOfChangeMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcThermalAdmittanceMeasure as() const { return express::Base::as(); } + // IfcThermalAdmittanceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcThermalConductivityMeasure as() const { return express::Base::as(); } + // IfcThermalConductivityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcThermalExpansionCoefficientMeasure as() const { return express::Base::as(); } + // IfcThermalExpansionCoefficientMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcThermalResistanceMeasure as() const { return express::Base::as(); } + // IfcThermalResistanceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcThermalTransmittanceMeasure as() const { return express::Base::as(); } + // IfcThermalTransmittanceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcTorqueMeasure as() const { return express::Base::as(); } + // IfcTorqueMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcVaporPermeabilityMeasure as() const { return express::Base::as(); } + // IfcVaporPermeabilityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcVolumetricFlowRateMeasure as() const { return express::Base::as(); } + // IfcVolumetricFlowRateMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcWarpingConstantMeasure as() const { return express::Base::as(); } + // IfcWarpingConstantMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcWarpingMomentMeasure as() const { return express::Base::as(); } + // IfcWarpingMomentMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMeasureValue as() const { return express::Base::as(); } + // IfcMeasureValue as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcAmountOfSubstanceMeasure as() const { return express::Base::as(); } + // IfcAmountOfSubstanceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcAreaMeasure as() const { return express::Base::as(); } + // IfcAreaMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcComplexNumber as() const { return express::Base::as(); } + // IfcComplexNumber as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcContextDependentMeasure as() const { return express::Base::as(); } + // IfcContextDependentMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcCountMeasure as() const { return express::Base::as(); } + // IfcCountMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcDescriptiveMeasure as() const { return express::Base::as(); } + // IfcDescriptiveMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcElectricCurrentMeasure as() const { return express::Base::as(); } + // IfcElectricCurrentMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLengthMeasure as() const { return express::Base::as(); } + // IfcLengthMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLuminousIntensityMeasure as() const { return express::Base::as(); } + // IfcLuminousIntensityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMassMeasure as() const { return express::Base::as(); } + // IfcMassMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcNonNegativeLengthMeasure as() const { return express::Base::as(); } + // IfcNonNegativeLengthMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcNormalisedRatioMeasure as() const { return express::Base::as(); } + // IfcNormalisedRatioMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcNumericMeasure as() const { return express::Base::as(); } + // IfcNumericMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcParameterValue as() const { return express::Base::as(); } + // IfcParameterValue as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPlaneAngleMeasure as() const { return express::Base::as(); } + // IfcPlaneAngleMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPositiveLengthMeasure as() const { return express::Base::as(); } + // IfcPositiveLengthMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPositivePlaneAngleMeasure as() const { return express::Base::as(); } + // IfcPositivePlaneAngleMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPositiveRatioMeasure as() const { return express::Base::as(); } + // IfcPositiveRatioMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcRatioMeasure as() const { return express::Base::as(); } + // IfcRatioMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSolidAngleMeasure as() const { return express::Base::as(); } + // IfcSolidAngleMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcThermodynamicTemperatureMeasure as() const { return express::Base::as(); } + // IfcThermodynamicTemperatureMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcTimeMeasure as() const { return express::Base::as(); } + // IfcTimeMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcVolumeMeasure as() const { return express::Base::as(); } + // IfcVolumeMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSimpleValue as() const { return express::Base::as(); } + // IfcSimpleValue as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcBinary as() const { return express::Base::as(); } + // IfcBinary as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcBoolean as() const { return express::Base::as(); } + // IfcBoolean as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcDate as() const { return express::Base::as(); } + // IfcDate as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcDateTime as() const { return express::Base::as(); } + // IfcDateTime as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcDuration as() const { return express::Base::as(); } + // IfcDuration as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcIdentifier as() const { return express::Base::as(); } + // IfcIdentifier as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcInteger as() const { return express::Base::as(); } + // IfcInteger as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLabel as() const { return express::Base::as(); } + // IfcLabel as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLogical as() const { return express::Base::as(); } + // IfcLogical as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPositiveInteger as() const { return express::Base::as(); } + // IfcPositiveInteger as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcReal as() const { return express::Base::as(); } + // IfcReal as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcText as() const { return express::Base::as(); } + // IfcText as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcTime as() const { return express::Base::as(); } + // IfcTime as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcTimeStamp as() const { return express::Base::as(); } + // IfcTimeStamp as() const { return express::base::as(); } - IfcMetricValueSelect(const IfcAppliedValue& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcAppliedValue& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcMeasureWithUnit& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcMeasureWithUnit& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcReference& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcReference& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcTable& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcTable& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcTimeSeries& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcTimeSeries& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcValue& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcValue& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcDerivedMeasureValue& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcDerivedMeasureValue& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcAbsorbedDoseMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcAbsorbedDoseMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcAccelerationMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcAccelerationMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcAngularVelocityMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcAngularVelocityMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcAreaDensityMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcAreaDensityMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcCompoundPlaneAngleMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcCompoundPlaneAngleMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcCurvatureMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcCurvatureMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcDoseEquivalentMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcDoseEquivalentMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcDynamicViscosityMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcDynamicViscosityMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcElectricCapacitanceMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcElectricCapacitanceMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcElectricChargeMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcElectricChargeMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcElectricConductanceMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcElectricConductanceMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcElectricResistanceMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcElectricResistanceMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcElectricVoltageMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcElectricVoltageMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcEnergyMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcEnergyMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcForceMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcForceMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcFrequencyMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcFrequencyMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcHeatFluxDensityMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcHeatFluxDensityMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcHeatingValueMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcHeatingValueMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcIlluminanceMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcIlluminanceMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcInductanceMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcInductanceMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcIntegerCountRateMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcIntegerCountRateMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcIonConcentrationMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcIonConcentrationMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcIsothermalMoistureCapacityMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcIsothermalMoistureCapacityMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcKinematicViscosityMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcKinematicViscosityMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcLinearForceMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcLinearForceMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcLinearMomentMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcLinearMomentMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcLinearStiffnessMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcLinearStiffnessMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcLinearVelocityMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcLinearVelocityMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcLuminousFluxMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcLuminousFluxMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcLuminousIntensityDistributionMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcLuminousIntensityDistributionMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcMagneticFluxDensityMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcMagneticFluxDensityMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcMagneticFluxMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcMagneticFluxMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcMassDensityMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcMassDensityMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcMassFlowRateMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcMassFlowRateMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcMassPerLengthMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcMassPerLengthMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcModulusOfElasticityMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcModulusOfElasticityMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcModulusOfLinearSubgradeReactionMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcModulusOfLinearSubgradeReactionMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcModulusOfRotationalSubgradeReactionMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcModulusOfRotationalSubgradeReactionMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcModulusOfSubgradeReactionMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcModulusOfSubgradeReactionMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcMoistureDiffusivityMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcMoistureDiffusivityMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcMolecularWeightMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcMolecularWeightMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcMomentOfInertiaMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcMomentOfInertiaMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcMonetaryMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcMonetaryMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcPHMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcPHMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcPlanarForceMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcPlanarForceMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcPowerMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcPowerMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcPressureMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcPressureMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcRadioActivityMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcRadioActivityMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcRotationalFrequencyMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcRotationalFrequencyMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcRotationalMassMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcRotationalMassMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcRotationalStiffnessMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcRotationalStiffnessMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcSectionModulusMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcSectionModulusMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcSectionalAreaIntegralMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcSectionalAreaIntegralMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcShearModulusMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcShearModulusMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcSoundPowerLevelMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcSoundPowerLevelMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcSoundPowerMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcSoundPowerMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcSoundPressureLevelMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcSoundPressureLevelMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcSoundPressureMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcSoundPressureMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcSpecificHeatCapacityMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcSpecificHeatCapacityMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcTemperatureGradientMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcTemperatureGradientMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcTemperatureRateOfChangeMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcTemperatureRateOfChangeMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcThermalAdmittanceMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcThermalAdmittanceMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcThermalConductivityMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcThermalConductivityMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcThermalExpansionCoefficientMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcThermalExpansionCoefficientMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcThermalResistanceMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcThermalResistanceMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcThermalTransmittanceMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcThermalTransmittanceMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcTorqueMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcTorqueMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcVaporPermeabilityMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcVaporPermeabilityMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcVolumetricFlowRateMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcVolumetricFlowRateMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcWarpingConstantMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcWarpingConstantMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcWarpingMomentMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcWarpingMomentMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcMeasureValue& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcMeasureValue& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcAmountOfSubstanceMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcAmountOfSubstanceMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcAreaMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcAreaMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcComplexNumber& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcComplexNumber& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcContextDependentMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcContextDependentMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcCountMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcCountMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcDescriptiveMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcDescriptiveMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcElectricCurrentMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcElectricCurrentMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcLengthMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcLengthMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcLuminousIntensityMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcLuminousIntensityMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcMassMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcMassMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcNonNegativeLengthMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcNonNegativeLengthMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcNormalisedRatioMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcNormalisedRatioMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcNumericMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcNumericMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcParameterValue& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcParameterValue& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcPlaneAngleMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcPlaneAngleMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcPositiveLengthMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcPositiveLengthMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcPositivePlaneAngleMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcPositivePlaneAngleMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcPositiveRatioMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcPositiveRatioMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcRatioMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcRatioMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcSolidAngleMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcSolidAngleMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcThermodynamicTemperatureMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcThermodynamicTemperatureMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcTimeMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcTimeMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcVolumeMeasure& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcVolumeMeasure& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcSimpleValue& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcSimpleValue& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcBinary& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcBinary& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcBoolean& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcBoolean& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcDate& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcDate& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcDateTime& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcDateTime& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcDuration& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcDuration& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcIdentifier& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcIdentifier& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcInteger& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcInteger& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcLabel& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcLabel& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcLogical& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcLogical& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcPositiveInteger& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcPositiveInteger& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcReal& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcReal& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcText& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcText& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcTime& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcTime& c) : express::select(c) {}; - IfcMetricValueSelect(const IfcTimeStamp& c) : express::Select(c) {}; + IfcMetricValueSelect(const IfcTimeStamp& c) : express::select(c) {}; }; /// Definition from IAI: A measure for modulus of rotational subgrade reaction which expresses the rotational bedding of a structural curve item per length. TRUE denotes infinite stiffness (rigidity). FALSE denotes no stiffness (a release). A numeric value denotes finite linear-elastic stiffness. /// /// HISTORY: New type in IFC 2x4. -class IFC_SCHEMA_API IfcModulusOfRotationalSubgradeReactionSelect : public express::Select { +class IFC_SCHEMA_API IfcModulusOfRotationalSubgradeReactionSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcBoolean as() const { return express::Base::as(); } + // IfcBoolean as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcModulusOfRotationalSubgradeReactionMeasure as() const { return express::Base::as(); } + // IfcModulusOfRotationalSubgradeReactionMeasure as() const { return express::base::as(); } - IfcModulusOfRotationalSubgradeReactionSelect(const IfcBoolean& c) : express::Select(c) {}; + IfcModulusOfRotationalSubgradeReactionSelect(const IfcBoolean& c) : express::select(c) {}; - IfcModulusOfRotationalSubgradeReactionSelect(const IfcModulusOfRotationalSubgradeReactionMeasure& c) : express::Select(c) {}; + IfcModulusOfRotationalSubgradeReactionSelect(const IfcModulusOfRotationalSubgradeReactionMeasure& c) : express::select(c) {}; }; /// Definition from IAI: Bedding measure which expresses the bedding of a structural face item per area. TRUE denotes infinite stiffness (rigidity). FALSE denotes no stiffness (a release). A numeric value denotes finite linear-elastic stiffness. /// /// HISTORY: New type in IFC 2x4. -class IFC_SCHEMA_API IfcModulusOfSubgradeReactionSelect : public express::Select { +class IFC_SCHEMA_API IfcModulusOfSubgradeReactionSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcBoolean as() const { return express::Base::as(); } + // IfcBoolean as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcModulusOfSubgradeReactionMeasure as() const { return express::Base::as(); } + // IfcModulusOfSubgradeReactionMeasure as() const { return express::base::as(); } - IfcModulusOfSubgradeReactionSelect(const IfcBoolean& c) : express::Select(c) {}; + IfcModulusOfSubgradeReactionSelect(const IfcBoolean& c) : express::select(c) {}; - IfcModulusOfSubgradeReactionSelect(const IfcModulusOfSubgradeReactionMeasure& c) : express::Select(c) {}; + IfcModulusOfSubgradeReactionSelect(const IfcModulusOfSubgradeReactionMeasure& c) : express::select(c) {}; }; /// Definition from IAI: A measure for modulus of translational subgrade reaction which expresses the translational bedding of a structural curve item per length. TRUE denotes infinite stiffness (rigidity). FALSE denotes no stiffness (a release). A numeric value denotes finite linear-elastic stiffness. /// /// HISTORY: New type in IFC 2x4. -class IFC_SCHEMA_API IfcModulusOfTranslationalSubgradeReactionSelect : public express::Select { +class IFC_SCHEMA_API IfcModulusOfTranslationalSubgradeReactionSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcBoolean as() const { return express::Base::as(); } + // IfcBoolean as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcModulusOfLinearSubgradeReactionMeasure as() const { return express::Base::as(); } + // IfcModulusOfLinearSubgradeReactionMeasure as() const { return express::base::as(); } - IfcModulusOfTranslationalSubgradeReactionSelect(const IfcBoolean& c) : express::Select(c) {}; + IfcModulusOfTranslationalSubgradeReactionSelect(const IfcBoolean& c) : express::select(c) {}; - IfcModulusOfTranslationalSubgradeReactionSelect(const IfcModulusOfLinearSubgradeReactionMeasure& c) : express::Select(c) {}; + IfcModulusOfTranslationalSubgradeReactionSelect(const IfcModulusOfLinearSubgradeReactionMeasure& c) : express::select(c) {}; }; /// IfcObjectReferenceSelect is a select type, that holds a list of resource level entities that can be used as properties within a property set. /// /// HISTORY  New select type in IFC Release 2.0. -class IFC_SCHEMA_API IfcObjectReferenceSelect : public express::Select { +class IFC_SCHEMA_API IfcObjectReferenceSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcAddress as() const { return express::Base::as(); } + // IfcAddress as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcAppliedValue as() const { return express::Base::as(); } + // IfcAppliedValue as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcExternalReference as() const { return express::Base::as(); } + // IfcExternalReference as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMaterialDefinition as() const { return express::Base::as(); } + // IfcMaterialDefinition as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcOrganization as() const { return express::Base::as(); } + // IfcOrganization as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPerson as() const { return express::Base::as(); } + // IfcPerson as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPersonAndOrganization as() const { return express::Base::as(); } + // IfcPersonAndOrganization as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcTable as() const { return express::Base::as(); } + // IfcTable as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcTimeSeries as() const { return express::Base::as(); } + // IfcTimeSeries as() const { return express::base::as(); } - IfcObjectReferenceSelect(const IfcAddress& c) : express::Select(c) {}; + IfcObjectReferenceSelect(const IfcAddress& c) : express::select(c) {}; - IfcObjectReferenceSelect(const IfcAppliedValue& c) : express::Select(c) {}; + IfcObjectReferenceSelect(const IfcAppliedValue& c) : express::select(c) {}; - IfcObjectReferenceSelect(const IfcExternalReference& c) : express::Select(c) {}; + IfcObjectReferenceSelect(const IfcExternalReference& c) : express::select(c) {}; - IfcObjectReferenceSelect(const IfcMaterialDefinition& c) : express::Select(c) {}; + IfcObjectReferenceSelect(const IfcMaterialDefinition& c) : express::select(c) {}; - IfcObjectReferenceSelect(const IfcOrganization& c) : express::Select(c) {}; + IfcObjectReferenceSelect(const IfcOrganization& c) : express::select(c) {}; - IfcObjectReferenceSelect(const IfcPerson& c) : express::Select(c) {}; + IfcObjectReferenceSelect(const IfcPerson& c) : express::select(c) {}; - IfcObjectReferenceSelect(const IfcPersonAndOrganization& c) : express::Select(c) {}; + IfcObjectReferenceSelect(const IfcPersonAndOrganization& c) : express::select(c) {}; - IfcObjectReferenceSelect(const IfcTable& c) : express::Select(c) {}; + IfcObjectReferenceSelect(const IfcTable& c) : express::select(c) {}; - IfcObjectReferenceSelect(const IfcTimeSeries& c) : express::Select(c) {}; + IfcObjectReferenceSelect(const IfcTimeSeries& c) : express::select(c) {}; }; /// IfcPointOrVertexPoint provides the option to either select a geometric point (IfcPoint and subtypes) within a geometric model, or a vertex with associated point coordinates (IfcVertexPoint) within a topological model. @@ -3012,22 +3012,22 @@ public: /// IfcVertexPoint /// /// HISTORY  New select type in IFC2x Edition 3. -class IFC_SCHEMA_API IfcPointOrVertexPoint : public express::Select { +class IFC_SCHEMA_API IfcPointOrVertexPoint : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPoint as() const { return express::Base::as(); } + // IfcPoint as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcVertexPoint as() const { return express::Base::as(); } + // IfcVertexPoint as() const { return express::base::as(); } - IfcPointOrVertexPoint(const IfcPoint& c) : express::Select(c) {}; + IfcPointOrVertexPoint(const IfcPoint& c) : express::select(c) {}; - IfcPointOrVertexPoint(const IfcVertexPoint& c) : express::Select(c) {}; + IfcPointOrVertexPoint(const IfcVertexPoint& c) : express::select(c) {}; }; /// IfcProcessSelectprovides the option to either @@ -3040,41 +3040,41 @@ public: /// IfcTypeProcess /// /// HISTORY New select type in IFC2x4. -class IFC_SCHEMA_API IfcProcessSelect : public express::Select { +class IFC_SCHEMA_API IfcProcessSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcProcess as() const { return express::Base::as(); } + // IfcProcess as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcTypeProcess as() const { return express::Base::as(); } + // IfcTypeProcess as() const { return express::base::as(); } - IfcProcessSelect(const IfcProcess& c) : express::Select(c) {}; + IfcProcessSelect(const IfcProcess& c) : express::select(c) {}; - IfcProcessSelect(const IfcTypeProcess& c) : express::Select(c) {}; + IfcProcessSelect(const IfcTypeProcess& c) : express::select(c) {}; }; -class IFC_SCHEMA_API IfcProductRepresentationSelect : public express::Select { +class IFC_SCHEMA_API IfcProductRepresentationSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcProductDefinitionShape as() const { return express::Base::as(); } + // IfcProductDefinitionShape as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcRepresentationMap as() const { return express::Base::as(); } + // IfcRepresentationMap as() const { return express::base::as(); } - IfcProductRepresentationSelect(const IfcProductDefinitionShape& c) : express::Select(c) {}; + IfcProductRepresentationSelect(const IfcProductDefinitionShape& c) : express::select(c) {}; - IfcProductRepresentationSelect(const IfcRepresentationMap& c) : express::Select(c) {}; + IfcProductRepresentationSelect(const IfcRepresentationMap& c) : express::select(c) {}; }; /// IfcProductSelectprovides the option to either select a @@ -3086,152 +3086,152 @@ public: /// IfcTypeProduct /// /// HISTORY New select type in IFC2x4. -class IFC_SCHEMA_API IfcProductSelect : public express::Select { +class IFC_SCHEMA_API IfcProductSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcProduct as() const { return express::Base::as(); } + // IfcProduct as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcTypeProduct as() const { return express::Base::as(); } + // IfcTypeProduct as() const { return express::base::as(); } - IfcProductSelect(const IfcProduct& c) : express::Select(c) {}; + IfcProductSelect(const IfcProduct& c) : express::select(c) {}; - IfcProductSelect(const IfcTypeProduct& c) : express::Select(c) {}; + IfcProductSelect(const IfcTypeProduct& c) : express::select(c) {}; }; -class IFC_SCHEMA_API IfcPropertySetDefinitionSelect : public express::Select { +class IFC_SCHEMA_API IfcPropertySetDefinitionSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPropertySetDefinition as() const { return express::Base::as(); } + // IfcPropertySetDefinition as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPropertySetDefinitionSet as() const { return express::Base::as(); } + // IfcPropertySetDefinitionSet as() const { return express::base::as(); } - IfcPropertySetDefinitionSelect(const IfcPropertySetDefinition& c) : express::Select(c) {}; + IfcPropertySetDefinitionSelect(const IfcPropertySetDefinition& c) : express::select(c) {}; - IfcPropertySetDefinitionSelect(const IfcPropertySetDefinitionSet& c) : express::Select(c) {}; + IfcPropertySetDefinitionSelect(const IfcPropertySetDefinitionSet& c) : express::select(c) {}; }; /// IfcResourceObjectSelect enables selection of resource level objects that are to be related to an resource level relationship object. The use of IfcResourceObjectSelect includes the ability to assign an external reference entity (library, classification, or documentation reference) to entities within the resource level. /// /// HISTORY  New Select type in IFC2x4. -class IFC_SCHEMA_API IfcResourceObjectSelect : public express::Select { +class IFC_SCHEMA_API IfcResourceObjectSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcActorRole as() const { return express::Base::as(); } + // IfcActorRole as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcAppliedValue as() const { return express::Base::as(); } + // IfcAppliedValue as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcApproval as() const { return express::Base::as(); } + // IfcApproval as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcConstraint as() const { return express::Base::as(); } + // IfcConstraint as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcContextDependentUnit as() const { return express::Base::as(); } + // IfcContextDependentUnit as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcConversionBasedUnit as() const { return express::Base::as(); } + // IfcConversionBasedUnit as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcExternalInformation as() const { return express::Base::as(); } + // IfcExternalInformation as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcExternalReference as() const { return express::Base::as(); } + // IfcExternalReference as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMaterialDefinition as() const { return express::Base::as(); } + // IfcMaterialDefinition as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcOrganization as() const { return express::Base::as(); } + // IfcOrganization as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPerson as() const { return express::Base::as(); } + // IfcPerson as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPersonAndOrganization as() const { return express::Base::as(); } + // IfcPersonAndOrganization as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPhysicalQuantity as() const { return express::Base::as(); } + // IfcPhysicalQuantity as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcProfileDef as() const { return express::Base::as(); } + // IfcProfileDef as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPropertyAbstraction as() const { return express::Base::as(); } + // IfcPropertyAbstraction as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcShapeAspect as() const { return express::Base::as(); } + // IfcShapeAspect as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcTimeSeries as() const { return express::Base::as(); } + // IfcTimeSeries as() const { return express::base::as(); } - IfcResourceObjectSelect(const IfcActorRole& c) : express::Select(c) {}; + IfcResourceObjectSelect(const IfcActorRole& c) : express::select(c) {}; - IfcResourceObjectSelect(const IfcAppliedValue& c) : express::Select(c) {}; + IfcResourceObjectSelect(const IfcAppliedValue& c) : express::select(c) {}; - IfcResourceObjectSelect(const IfcApproval& c) : express::Select(c) {}; + IfcResourceObjectSelect(const IfcApproval& c) : express::select(c) {}; - IfcResourceObjectSelect(const IfcConstraint& c) : express::Select(c) {}; + IfcResourceObjectSelect(const IfcConstraint& c) : express::select(c) {}; - IfcResourceObjectSelect(const IfcContextDependentUnit& c) : express::Select(c) {}; + IfcResourceObjectSelect(const IfcContextDependentUnit& c) : express::select(c) {}; - IfcResourceObjectSelect(const IfcConversionBasedUnit& c) : express::Select(c) {}; + IfcResourceObjectSelect(const IfcConversionBasedUnit& c) : express::select(c) {}; - IfcResourceObjectSelect(const IfcExternalInformation& c) : express::Select(c) {}; + IfcResourceObjectSelect(const IfcExternalInformation& c) : express::select(c) {}; - IfcResourceObjectSelect(const IfcExternalReference& c) : express::Select(c) {}; + IfcResourceObjectSelect(const IfcExternalReference& c) : express::select(c) {}; - IfcResourceObjectSelect(const IfcMaterialDefinition& c) : express::Select(c) {}; + IfcResourceObjectSelect(const IfcMaterialDefinition& c) : express::select(c) {}; - IfcResourceObjectSelect(const IfcOrganization& c) : express::Select(c) {}; + IfcResourceObjectSelect(const IfcOrganization& c) : express::select(c) {}; - IfcResourceObjectSelect(const IfcPerson& c) : express::Select(c) {}; + IfcResourceObjectSelect(const IfcPerson& c) : express::select(c) {}; - IfcResourceObjectSelect(const IfcPersonAndOrganization& c) : express::Select(c) {}; + IfcResourceObjectSelect(const IfcPersonAndOrganization& c) : express::select(c) {}; - IfcResourceObjectSelect(const IfcPhysicalQuantity& c) : express::Select(c) {}; + IfcResourceObjectSelect(const IfcPhysicalQuantity& c) : express::select(c) {}; - IfcResourceObjectSelect(const IfcProfileDef& c) : express::Select(c) {}; + IfcResourceObjectSelect(const IfcProfileDef& c) : express::select(c) {}; - IfcResourceObjectSelect(const IfcPropertyAbstraction& c) : express::Select(c) {}; + IfcResourceObjectSelect(const IfcPropertyAbstraction& c) : express::select(c) {}; - IfcResourceObjectSelect(const IfcShapeAspect& c) : express::Select(c) {}; + IfcResourceObjectSelect(const IfcShapeAspect& c) : express::select(c) {}; - IfcResourceObjectSelect(const IfcTimeSeries& c) : express::Select(c) {}; + IfcResourceObjectSelect(const IfcTimeSeries& c) : express::select(c) {}; }; /// IfcResourceSelectprovides the option to either select a @@ -3243,62 +3243,62 @@ public: /// IfcTypeResource /// /// HISTORY New select type in IFC2x4. -class IFC_SCHEMA_API IfcResourceSelect : public express::Select { +class IFC_SCHEMA_API IfcResourceSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcResource as() const { return express::Base::as(); } + // IfcResource as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcTypeResource as() const { return express::Base::as(); } + // IfcTypeResource as() const { return express::base::as(); } - IfcResourceSelect(const IfcResource& c) : express::Select(c) {}; + IfcResourceSelect(const IfcResource& c) : express::select(c) {}; - IfcResourceSelect(const IfcTypeResource& c) : express::Select(c) {}; + IfcResourceSelect(const IfcTypeResource& c) : express::select(c) {}; }; /// Definition from IAI: A measure of rotational stiffness. TRUE denotes infinite stiffness (rigidity). FALSE denotes no stiffness (a release). A numeric value denotes finite linear-elastic stiffness. /// /// HISTORY: New type in IFC 2x4. -class IFC_SCHEMA_API IfcRotationalStiffnessSelect : public express::Select { +class IFC_SCHEMA_API IfcRotationalStiffnessSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcBoolean as() const { return express::Base::as(); } + // IfcBoolean as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcRotationalStiffnessMeasure as() const { return express::Base::as(); } + // IfcRotationalStiffnessMeasure as() const { return express::base::as(); } - IfcRotationalStiffnessSelect(const IfcBoolean& c) : express::Select(c) {}; + IfcRotationalStiffnessSelect(const IfcBoolean& c) : express::select(c) {}; - IfcRotationalStiffnessSelect(const IfcRotationalStiffnessMeasure& c) : express::Select(c) {}; + IfcRotationalStiffnessSelect(const IfcRotationalStiffnessMeasure& c) : express::select(c) {}; }; -class IFC_SCHEMA_API IfcSegmentIndexSelect : public express::Select { +class IFC_SCHEMA_API IfcSegmentIndexSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcArcIndex as() const { return express::Base::as(); } + // IfcArcIndex as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLineIndex as() const { return express::Base::as(); } + // IfcLineIndex as() const { return express::base::as(); } - IfcSegmentIndexSelect(const IfcArcIndex& c) : express::Select(c) {}; + IfcSegmentIndexSelect(const IfcArcIndex& c) : express::select(c) {}; - IfcSegmentIndexSelect(const IfcLineIndex& c) : express::Select(c) {}; + IfcSegmentIndexSelect(const IfcLineIndex& c) : express::select(c) {}; }; /// Definition from ISO/CD 10303-42:1992 This type collects together, for reference when constructing more complex models, the subtypes which have the characteristics of a shell. A shell is a connected object of fixed dimensionality d = 0; 1; or 2, typically used to bound a region. The domain of a shell, if present, includes its bounds and 0 £ X < ¥. @@ -3312,22 +3312,22 @@ public: /// NOTE  Corresponding ISO 10303 type: shell. Please refer to ISO/IS 10303-42:1994, p. 127 for the final definition of the formal standard. Only the select items closed_shell (IfcClosedShell) and open_shell (IfcOpenShell) have been incorporated in the current IFC release. /// /// HISTORY  New type in IFC2x. -class IFC_SCHEMA_API IfcShell : public express::Select { +class IFC_SCHEMA_API IfcShell : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcClosedShell as() const { return express::Base::as(); } + // IfcClosedShell as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcOpenShell as() const { return express::Base::as(); } + // IfcOpenShell as() const { return express::base::as(); } - IfcShell(const IfcClosedShell& c) : express::Select(c) {}; + IfcShell(const IfcClosedShell& c) : express::select(c) {}; - IfcShell(const IfcOpenShell& c) : express::Select(c) {}; + IfcShell(const IfcOpenShell& c) : express::select(c) {}; }; /// IfcSimpleValue is a select type for selecting between simple value types. @@ -3349,94 +3349,94 @@ public: /// HISTORY New type in IFC Release 2x. /// /// IFC2x4 CHANGE Items IfcDateTime, IfcDate, IfcTime, IfcDuration added. -class IFC_SCHEMA_API IfcSimpleValue : public express::Select { +class IFC_SCHEMA_API IfcSimpleValue : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcBinary as() const { return express::Base::as(); } + // IfcBinary as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcBoolean as() const { return express::Base::as(); } + // IfcBoolean as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcDate as() const { return express::Base::as(); } + // IfcDate as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcDateTime as() const { return express::Base::as(); } + // IfcDateTime as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcDuration as() const { return express::Base::as(); } + // IfcDuration as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcIdentifier as() const { return express::Base::as(); } + // IfcIdentifier as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcInteger as() const { return express::Base::as(); } + // IfcInteger as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLabel as() const { return express::Base::as(); } + // IfcLabel as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLogical as() const { return express::Base::as(); } + // IfcLogical as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPositiveInteger as() const { return express::Base::as(); } + // IfcPositiveInteger as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcReal as() const { return express::Base::as(); } + // IfcReal as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcText as() const { return express::Base::as(); } + // IfcText as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcTime as() const { return express::Base::as(); } + // IfcTime as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcTimeStamp as() const { return express::Base::as(); } + // IfcTimeStamp as() const { return express::base::as(); } - IfcSimpleValue(const IfcBinary& c) : express::Select(c) {}; + IfcSimpleValue(const IfcBinary& c) : express::select(c) {}; - IfcSimpleValue(const IfcBoolean& c) : express::Select(c) {}; + IfcSimpleValue(const IfcBoolean& c) : express::select(c) {}; - IfcSimpleValue(const IfcDate& c) : express::Select(c) {}; + IfcSimpleValue(const IfcDate& c) : express::select(c) {}; - IfcSimpleValue(const IfcDateTime& c) : express::Select(c) {}; + IfcSimpleValue(const IfcDateTime& c) : express::select(c) {}; - IfcSimpleValue(const IfcDuration& c) : express::Select(c) {}; + IfcSimpleValue(const IfcDuration& c) : express::select(c) {}; - IfcSimpleValue(const IfcIdentifier& c) : express::Select(c) {}; + IfcSimpleValue(const IfcIdentifier& c) : express::select(c) {}; - IfcSimpleValue(const IfcInteger& c) : express::Select(c) {}; + IfcSimpleValue(const IfcInteger& c) : express::select(c) {}; - IfcSimpleValue(const IfcLabel& c) : express::Select(c) {}; + IfcSimpleValue(const IfcLabel& c) : express::select(c) {}; - IfcSimpleValue(const IfcLogical& c) : express::Select(c) {}; + IfcSimpleValue(const IfcLogical& c) : express::select(c) {}; - IfcSimpleValue(const IfcPositiveInteger& c) : express::Select(c) {}; + IfcSimpleValue(const IfcPositiveInteger& c) : express::select(c) {}; - IfcSimpleValue(const IfcReal& c) : express::Select(c) {}; + IfcSimpleValue(const IfcReal& c) : express::select(c) {}; - IfcSimpleValue(const IfcText& c) : express::Select(c) {}; + IfcSimpleValue(const IfcText& c) : express::select(c) {}; - IfcSimpleValue(const IfcTime& c) : express::Select(c) {}; + IfcSimpleValue(const IfcTime& c) : express::select(c) {}; - IfcSimpleValue(const IfcTimeStamp& c) : express::Select(c) {}; + IfcSimpleValue(const IfcTimeStamp& c) : express::select(c) {}; }; /// Definition from ISO/CD 10303-46:1992: The size select is a selection of a specific positive length measure. @@ -3451,46 +3451,46 @@ public: /// HISTORY  New type in IFC2x2. /// /// IFC2x3 CHANGE  The SELECT item IfcMeasureWithUnit has been removed from the IfcSizeSelect, the IfcRatioMeasure and IfcDescriptiveMeasure has been added. -class IFC_SCHEMA_API IfcSizeSelect : public express::Select { +class IFC_SCHEMA_API IfcSizeSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcDescriptiveMeasure as() const { return express::Base::as(); } + // IfcDescriptiveMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLengthMeasure as() const { return express::Base::as(); } + // IfcLengthMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcNormalisedRatioMeasure as() const { return express::Base::as(); } + // IfcNormalisedRatioMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPositiveLengthMeasure as() const { return express::Base::as(); } + // IfcPositiveLengthMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPositiveRatioMeasure as() const { return express::Base::as(); } + // IfcPositiveRatioMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcRatioMeasure as() const { return express::Base::as(); } + // IfcRatioMeasure as() const { return express::base::as(); } - IfcSizeSelect(const IfcDescriptiveMeasure& c) : express::Select(c) {}; + IfcSizeSelect(const IfcDescriptiveMeasure& c) : express::select(c) {}; - IfcSizeSelect(const IfcLengthMeasure& c) : express::Select(c) {}; + IfcSizeSelect(const IfcLengthMeasure& c) : express::select(c) {}; - IfcSizeSelect(const IfcNormalisedRatioMeasure& c) : express::Select(c) {}; + IfcSizeSelect(const IfcNormalisedRatioMeasure& c) : express::select(c) {}; - IfcSizeSelect(const IfcPositiveLengthMeasure& c) : express::Select(c) {}; + IfcSizeSelect(const IfcPositiveLengthMeasure& c) : express::select(c) {}; - IfcSizeSelect(const IfcPositiveRatioMeasure& c) : express::Select(c) {}; + IfcSizeSelect(const IfcPositiveRatioMeasure& c) : express::select(c) {}; - IfcSizeSelect(const IfcRatioMeasure& c) : express::Select(c) {}; + IfcSizeSelect(const IfcRatioMeasure& c) : express::select(c) {}; }; /// The IfcSolidOrShell provides the option to either select a geometric volume (IfcSolidModel and subtypes) within a geometric model, or a shell (IfcClosedShell) within a topological model. @@ -3500,22 +3500,22 @@ public: /// IfcClosedShell /// /// HISTORY New select type in IFC2x4. -class IFC_SCHEMA_API IfcSolidOrShell : public express::Select { +class IFC_SCHEMA_API IfcSolidOrShell : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcClosedShell as() const { return express::Base::as(); } + // IfcClosedShell as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSolidModel as() const { return express::Base::as(); } + // IfcSolidModel as() const { return express::base::as(); } - IfcSolidOrShell(const IfcClosedShell& c) : express::Select(c) {}; + IfcSolidOrShell(const IfcClosedShell& c) : express::select(c) {}; - IfcSolidOrShell(const IfcSolidModel& c) : express::Select(c) {}; + IfcSolidOrShell(const IfcSolidModel& c) : express::select(c) {}; }; /// Definition from IAI: The @@ -3530,41 +3530,41 @@ public: /// /// HISTORY New select type /// in IFC2x4. -class IFC_SCHEMA_API IfcSpaceBoundarySelect : public express::Select { +class IFC_SCHEMA_API IfcSpaceBoundarySelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcExternalSpatialElement as() const { return express::Base::as(); } + // IfcExternalSpatialElement as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSpace as() const { return express::Base::as(); } + // IfcSpace as() const { return express::base::as(); } - IfcSpaceBoundarySelect(const IfcExternalSpatialElement& c) : express::Select(c) {}; + IfcSpaceBoundarySelect(const IfcExternalSpatialElement& c) : express::select(c) {}; - IfcSpaceBoundarySelect(const IfcSpace& c) : express::Select(c) {}; + IfcSpaceBoundarySelect(const IfcSpace& c) : express::select(c) {}; }; -class IFC_SCHEMA_API IfcSpatialReferenceSelect : public express::Select { +class IFC_SCHEMA_API IfcSpatialReferenceSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcGroup as() const { return express::Base::as(); } + // IfcGroup as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcProduct as() const { return express::Base::as(); } + // IfcProduct as() const { return express::base::as(); } - IfcSpatialReferenceSelect(const IfcGroup& c) : express::Select(c) {}; + IfcSpatialReferenceSelect(const IfcGroup& c) : express::select(c) {}; - IfcSpatialReferenceSelect(const IfcProduct& c) : express::Select(c) {}; + IfcSpatialReferenceSelect(const IfcProduct& c) : express::select(c) {}; }; /// The IfcSpecularHighlightSelect defines the selectable types of value for specular highlight sharpness. @@ -3577,22 +3577,22 @@ public: /// For each surface side style only one of the two methods is needed for calculating the specular part of the equation. /// /// HISTORY: New type in IFC2x2. -class IFC_SCHEMA_API IfcSpecularHighlightSelect : public express::Select { +class IFC_SCHEMA_API IfcSpecularHighlightSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSpecularExponent as() const { return express::Base::as(); } + // IfcSpecularExponent as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSpecularRoughness as() const { return express::Base::as(); } + // IfcSpecularRoughness as() const { return express::base::as(); } - IfcSpecularHighlightSelect(const IfcSpecularExponent& c) : express::Select(c) {}; + IfcSpecularHighlightSelect(const IfcSpecularExponent& c) : express::select(c) {}; - IfcSpecularHighlightSelect(const IfcSpecularRoughness& c) : express::Select(c) {}; + IfcSpecularHighlightSelect(const IfcSpecularRoughness& c) : express::select(c) {}; }; /// Definition from IAI: This type definition shall be used to @@ -3604,22 +3604,22 @@ public: /// /// HISTORY: New type in Release IFC2x /// Edition 2. -class IFC_SCHEMA_API IfcStructuralActivityAssignmentSelect : public express::Select { +class IFC_SCHEMA_API IfcStructuralActivityAssignmentSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcElement as() const { return express::Base::as(); } + // IfcElement as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcStructuralItem as() const { return express::Base::as(); } + // IfcStructuralItem as() const { return express::base::as(); } - IfcStructuralActivityAssignmentSelect(const IfcElement& c) : express::Select(c) {}; + IfcStructuralActivityAssignmentSelect(const IfcElement& c) : express::select(c) {}; - IfcStructuralActivityAssignmentSelect(const IfcStructuralItem& c) : express::Select(c) {}; + IfcStructuralActivityAssignmentSelect(const IfcStructuralItem& c) : express::select(c) {}; }; /// IfcSurfaceOrFaceSurface provides the option to either select a geometric surface (IfcSurface @@ -3631,28 +3631,28 @@ public: /// IfcFaceBasedSurfaceModel (a connected face set, representing a faceted surface as an approximation of a non planar, non rectangular bounded surface) /// /// HISTORY  New select type in IFC2x3. -class IFC_SCHEMA_API IfcSurfaceOrFaceSurface : public express::Select { +class IFC_SCHEMA_API IfcSurfaceOrFaceSurface : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcFaceBasedSurfaceModel as() const { return express::Base::as(); } + // IfcFaceBasedSurfaceModel as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcFaceSurface as() const { return express::Base::as(); } + // IfcFaceSurface as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSurface as() const { return express::Base::as(); } + // IfcSurface as() const { return express::base::as(); } - IfcSurfaceOrFaceSurface(const IfcFaceBasedSurfaceModel& c) : express::Select(c) {}; + IfcSurfaceOrFaceSurface(const IfcFaceBasedSurfaceModel& c) : express::select(c) {}; - IfcSurfaceOrFaceSurface(const IfcFaceSurface& c) : express::Select(c) {}; + IfcSurfaceOrFaceSurface(const IfcFaceSurface& c) : express::select(c) {}; - IfcSurfaceOrFaceSurface(const IfcSurface& c) : express::Select(c) {}; + IfcSurfaceOrFaceSurface(const IfcSurface& c) : express::select(c) {}; }; /// Definition from ISO/CD 10303-46:1992: The surface style element select is a selection of the different surface styles to use in the presentation of the side of a surface. @@ -3664,40 +3664,40 @@ public: /// NOTE: Corresponding ISO 10303 type: surface_style_element_select. Please refer to ISO/IS 10303-46:1994, p. 85 for the final definition of the formal standard. /// /// HISTORY: New Select type in IFC2x2. -class IFC_SCHEMA_API IfcSurfaceStyleElementSelect : public express::Select { +class IFC_SCHEMA_API IfcSurfaceStyleElementSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcExternallyDefinedSurfaceStyle as() const { return express::Base::as(); } + // IfcExternallyDefinedSurfaceStyle as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSurfaceStyleLighting as() const { return express::Base::as(); } + // IfcSurfaceStyleLighting as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSurfaceStyleRefraction as() const { return express::Base::as(); } + // IfcSurfaceStyleRefraction as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSurfaceStyleShading as() const { return express::Base::as(); } + // IfcSurfaceStyleShading as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSurfaceStyleWithTextures as() const { return express::Base::as(); } + // IfcSurfaceStyleWithTextures as() const { return express::base::as(); } - IfcSurfaceStyleElementSelect(const IfcExternallyDefinedSurfaceStyle& c) : express::Select(c) {}; + IfcSurfaceStyleElementSelect(const IfcExternallyDefinedSurfaceStyle& c) : express::select(c) {}; - IfcSurfaceStyleElementSelect(const IfcSurfaceStyleLighting& c) : express::Select(c) {}; + IfcSurfaceStyleElementSelect(const IfcSurfaceStyleLighting& c) : express::select(c) {}; - IfcSurfaceStyleElementSelect(const IfcSurfaceStyleRefraction& c) : express::Select(c) {}; + IfcSurfaceStyleElementSelect(const IfcSurfaceStyleRefraction& c) : express::select(c) {}; - IfcSurfaceStyleElementSelect(const IfcSurfaceStyleShading& c) : express::Select(c) {}; + IfcSurfaceStyleElementSelect(const IfcSurfaceStyleShading& c) : express::select(c) {}; - IfcSurfaceStyleElementSelect(const IfcSurfaceStyleWithTextures& c) : express::Select(c) {}; + IfcSurfaceStyleElementSelect(const IfcSurfaceStyleWithTextures& c) : express::select(c) {}; }; /// IfcTextFontSelect allows for either a predefined text font, a text font model or an externally defined text font to be used to describe the font of a text literal. The definition of the text font model is based on W3C TR Cascading Style Sheet Version 1, whereas the definition of predefined text font is based on ISO 10303. @@ -3707,63 +3707,63 @@ public: /// HISTORY  New type in IFC2x2. /// /// IFC2x3 CHANGE  The select type has been renamed from IfcFontSelect. -class IFC_SCHEMA_API IfcTextFontSelect : public express::Select { +class IFC_SCHEMA_API IfcTextFontSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcExternallyDefinedTextFont as() const { return express::Base::as(); } + // IfcExternallyDefinedTextFont as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPreDefinedTextFont as() const { return express::Base::as(); } + // IfcPreDefinedTextFont as() const { return express::base::as(); } - IfcTextFontSelect(const IfcExternallyDefinedTextFont& c) : express::Select(c) {}; + IfcTextFontSelect(const IfcExternallyDefinedTextFont& c) : express::select(c) {}; - IfcTextFontSelect(const IfcPreDefinedTextFont& c) : express::Select(c) {}; + IfcTextFontSelect(const IfcPreDefinedTextFont& c) : express::select(c) {}; }; /// IfcTimeOrRatioSelect allows a value to be selected as being either a ratio or a time measure. /// HISTORY New SELECT in IFC2x4 -class IFC_SCHEMA_API IfcTimeOrRatioSelect : public express::Select { +class IFC_SCHEMA_API IfcTimeOrRatioSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcDuration as() const { return express::Base::as(); } + // IfcDuration as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcRatioMeasure as() const { return express::Base::as(); } + // IfcRatioMeasure as() const { return express::base::as(); } - IfcTimeOrRatioSelect(const IfcDuration& c) : express::Select(c) {}; + IfcTimeOrRatioSelect(const IfcDuration& c) : express::select(c) {}; - IfcTimeOrRatioSelect(const IfcRatioMeasure& c) : express::Select(c) {}; + IfcTimeOrRatioSelect(const IfcRatioMeasure& c) : express::select(c) {}; }; /// Definition from IAI: A measure of linear stiffness. TRUE denotes infinite stiffness (rigidity). FALSE denotes no stiffness (a release). A numeric value denotes finite linear-elastic stiffness. /// /// HISTORY: New type in IFC 2x4. -class IFC_SCHEMA_API IfcTranslationalStiffnessSelect : public express::Select { +class IFC_SCHEMA_API IfcTranslationalStiffnessSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcBoolean as() const { return express::Base::as(); } + // IfcBoolean as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLinearStiffnessMeasure as() const { return express::Base::as(); } + // IfcLinearStiffnessMeasure as() const { return express::base::as(); } - IfcTranslationalStiffnessSelect(const IfcBoolean& c) : express::Select(c) {}; + IfcTranslationalStiffnessSelect(const IfcBoolean& c) : express::select(c) {}; - IfcTranslationalStiffnessSelect(const IfcLinearStiffnessMeasure& c) : express::Select(c) {}; + IfcTranslationalStiffnessSelect(const IfcLinearStiffnessMeasure& c) : express::select(c) {}; }; /// Definition from ISO/CD 10303-42:1992: This select type identifies the two possible ways of trimming a parametric curve; by a Cartesian point on the curve, or by a REAL number defining a parameter value within the parametric range of the curve. @@ -3771,22 +3771,22 @@ public: /// NOTE Corresponding ISO 10303 type: trimming_select, please refer to ISO/IS 10303-42:1994, p. 20 for the final definition of the formal standard. /// /// HISTORY New Type in IFC Release 1.0 -class IFC_SCHEMA_API IfcTrimmingSelect : public express::Select { +class IFC_SCHEMA_API IfcTrimmingSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcCartesianPoint as() const { return express::Base::as(); } + // IfcCartesianPoint as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcParameterValue as() const { return express::Base::as(); } + // IfcParameterValue as() const { return express::base::as(); } - IfcTrimmingSelect(const IfcCartesianPoint& c) : express::Select(c) {}; + IfcTrimmingSelect(const IfcCartesianPoint& c) : express::select(c) {}; - IfcTrimmingSelect(const IfcParameterValue& c) : express::Select(c) {}; + IfcTrimmingSelect(const IfcParameterValue& c) : express::select(c) {}; }; /// Definition from ISO/CD 10303-41:1992: A unit is a physical quantity, with a value of one, which is used as a standard in terms of which other quantities are expressed. @@ -3802,28 +3802,28 @@ public: /// IfcMonetaryUnit: A unit for defining currencies. /// /// HISTORY: New type in IFC Release 1.5.1. -class IFC_SCHEMA_API IfcUnit : public express::Select { +class IFC_SCHEMA_API IfcUnit : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcDerivedUnit as() const { return express::Base::as(); } + // IfcDerivedUnit as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMonetaryUnit as() const { return express::Base::as(); } + // IfcMonetaryUnit as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcNamedUnit as() const { return express::Base::as(); } + // IfcNamedUnit as() const { return express::base::as(); } - IfcUnit(const IfcDerivedUnit& c) : express::Select(c) {}; + IfcUnit(const IfcDerivedUnit& c) : express::select(c) {}; - IfcUnit(const IfcMonetaryUnit& c) : express::Select(c) {}; + IfcUnit(const IfcMonetaryUnit& c) : express::select(c) {}; - IfcUnit(const IfcNamedUnit& c) : express::Select(c) {}; + IfcUnit(const IfcNamedUnit& c) : express::select(c) {}; }; /// IfcValue is a select type for selecting between more specialised select types IfcSimpleValue, @@ -3836,676 +3836,676 @@ public: /// IfcDerivedMeasureValue A select type for derived measure types. /// /// HISTORY New type in IFC Release 2x. -class IFC_SCHEMA_API IfcValue : public express::Select { +class IFC_SCHEMA_API IfcValue : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcDerivedMeasureValue as() const { return express::Base::as(); } + // IfcDerivedMeasureValue as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcAbsorbedDoseMeasure as() const { return express::Base::as(); } + // IfcAbsorbedDoseMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcAccelerationMeasure as() const { return express::Base::as(); } + // IfcAccelerationMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcAngularVelocityMeasure as() const { return express::Base::as(); } + // IfcAngularVelocityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcAreaDensityMeasure as() const { return express::Base::as(); } + // IfcAreaDensityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcCompoundPlaneAngleMeasure as() const { return express::Base::as(); } + // IfcCompoundPlaneAngleMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcCurvatureMeasure as() const { return express::Base::as(); } + // IfcCurvatureMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcDoseEquivalentMeasure as() const { return express::Base::as(); } + // IfcDoseEquivalentMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcDynamicViscosityMeasure as() const { return express::Base::as(); } + // IfcDynamicViscosityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcElectricCapacitanceMeasure as() const { return express::Base::as(); } + // IfcElectricCapacitanceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcElectricChargeMeasure as() const { return express::Base::as(); } + // IfcElectricChargeMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcElectricConductanceMeasure as() const { return express::Base::as(); } + // IfcElectricConductanceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcElectricResistanceMeasure as() const { return express::Base::as(); } + // IfcElectricResistanceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcElectricVoltageMeasure as() const { return express::Base::as(); } + // IfcElectricVoltageMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcEnergyMeasure as() const { return express::Base::as(); } + // IfcEnergyMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcForceMeasure as() const { return express::Base::as(); } + // IfcForceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcFrequencyMeasure as() const { return express::Base::as(); } + // IfcFrequencyMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcHeatFluxDensityMeasure as() const { return express::Base::as(); } + // IfcHeatFluxDensityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcHeatingValueMeasure as() const { return express::Base::as(); } + // IfcHeatingValueMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcIlluminanceMeasure as() const { return express::Base::as(); } + // IfcIlluminanceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcInductanceMeasure as() const { return express::Base::as(); } + // IfcInductanceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcIntegerCountRateMeasure as() const { return express::Base::as(); } + // IfcIntegerCountRateMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcIonConcentrationMeasure as() const { return express::Base::as(); } + // IfcIonConcentrationMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcIsothermalMoistureCapacityMeasure as() const { return express::Base::as(); } + // IfcIsothermalMoistureCapacityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcKinematicViscosityMeasure as() const { return express::Base::as(); } + // IfcKinematicViscosityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLinearForceMeasure as() const { return express::Base::as(); } + // IfcLinearForceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLinearMomentMeasure as() const { return express::Base::as(); } + // IfcLinearMomentMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLinearStiffnessMeasure as() const { return express::Base::as(); } + // IfcLinearStiffnessMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLinearVelocityMeasure as() const { return express::Base::as(); } + // IfcLinearVelocityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLuminousFluxMeasure as() const { return express::Base::as(); } + // IfcLuminousFluxMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLuminousIntensityDistributionMeasure as() const { return express::Base::as(); } + // IfcLuminousIntensityDistributionMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMagneticFluxDensityMeasure as() const { return express::Base::as(); } + // IfcMagneticFluxDensityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMagneticFluxMeasure as() const { return express::Base::as(); } + // IfcMagneticFluxMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMassDensityMeasure as() const { return express::Base::as(); } + // IfcMassDensityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMassFlowRateMeasure as() const { return express::Base::as(); } + // IfcMassFlowRateMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMassPerLengthMeasure as() const { return express::Base::as(); } + // IfcMassPerLengthMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcModulusOfElasticityMeasure as() const { return express::Base::as(); } + // IfcModulusOfElasticityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcModulusOfLinearSubgradeReactionMeasure as() const { return express::Base::as(); } + // IfcModulusOfLinearSubgradeReactionMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcModulusOfRotationalSubgradeReactionMeasure as() const { return express::Base::as(); } + // IfcModulusOfRotationalSubgradeReactionMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcModulusOfSubgradeReactionMeasure as() const { return express::Base::as(); } + // IfcModulusOfSubgradeReactionMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMoistureDiffusivityMeasure as() const { return express::Base::as(); } + // IfcMoistureDiffusivityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMolecularWeightMeasure as() const { return express::Base::as(); } + // IfcMolecularWeightMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMomentOfInertiaMeasure as() const { return express::Base::as(); } + // IfcMomentOfInertiaMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMonetaryMeasure as() const { return express::Base::as(); } + // IfcMonetaryMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPHMeasure as() const { return express::Base::as(); } + // IfcPHMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPlanarForceMeasure as() const { return express::Base::as(); } + // IfcPlanarForceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPowerMeasure as() const { return express::Base::as(); } + // IfcPowerMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPressureMeasure as() const { return express::Base::as(); } + // IfcPressureMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcRadioActivityMeasure as() const { return express::Base::as(); } + // IfcRadioActivityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcRotationalFrequencyMeasure as() const { return express::Base::as(); } + // IfcRotationalFrequencyMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcRotationalMassMeasure as() const { return express::Base::as(); } + // IfcRotationalMassMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcRotationalStiffnessMeasure as() const { return express::Base::as(); } + // IfcRotationalStiffnessMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSectionModulusMeasure as() const { return express::Base::as(); } + // IfcSectionModulusMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSectionalAreaIntegralMeasure as() const { return express::Base::as(); } + // IfcSectionalAreaIntegralMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcShearModulusMeasure as() const { return express::Base::as(); } + // IfcShearModulusMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSoundPowerLevelMeasure as() const { return express::Base::as(); } + // IfcSoundPowerLevelMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSoundPowerMeasure as() const { return express::Base::as(); } + // IfcSoundPowerMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSoundPressureLevelMeasure as() const { return express::Base::as(); } + // IfcSoundPressureLevelMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSoundPressureMeasure as() const { return express::Base::as(); } + // IfcSoundPressureMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSpecificHeatCapacityMeasure as() const { return express::Base::as(); } + // IfcSpecificHeatCapacityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcTemperatureGradientMeasure as() const { return express::Base::as(); } + // IfcTemperatureGradientMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcTemperatureRateOfChangeMeasure as() const { return express::Base::as(); } + // IfcTemperatureRateOfChangeMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcThermalAdmittanceMeasure as() const { return express::Base::as(); } + // IfcThermalAdmittanceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcThermalConductivityMeasure as() const { return express::Base::as(); } + // IfcThermalConductivityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcThermalExpansionCoefficientMeasure as() const { return express::Base::as(); } + // IfcThermalExpansionCoefficientMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcThermalResistanceMeasure as() const { return express::Base::as(); } + // IfcThermalResistanceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcThermalTransmittanceMeasure as() const { return express::Base::as(); } + // IfcThermalTransmittanceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcTorqueMeasure as() const { return express::Base::as(); } + // IfcTorqueMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcVaporPermeabilityMeasure as() const { return express::Base::as(); } + // IfcVaporPermeabilityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcVolumetricFlowRateMeasure as() const { return express::Base::as(); } + // IfcVolumetricFlowRateMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcWarpingConstantMeasure as() const { return express::Base::as(); } + // IfcWarpingConstantMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcWarpingMomentMeasure as() const { return express::Base::as(); } + // IfcWarpingMomentMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMeasureValue as() const { return express::Base::as(); } + // IfcMeasureValue as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcAmountOfSubstanceMeasure as() const { return express::Base::as(); } + // IfcAmountOfSubstanceMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcAreaMeasure as() const { return express::Base::as(); } + // IfcAreaMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcComplexNumber as() const { return express::Base::as(); } + // IfcComplexNumber as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcContextDependentMeasure as() const { return express::Base::as(); } + // IfcContextDependentMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcCountMeasure as() const { return express::Base::as(); } + // IfcCountMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcDescriptiveMeasure as() const { return express::Base::as(); } + // IfcDescriptiveMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcElectricCurrentMeasure as() const { return express::Base::as(); } + // IfcElectricCurrentMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLengthMeasure as() const { return express::Base::as(); } + // IfcLengthMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLuminousIntensityMeasure as() const { return express::Base::as(); } + // IfcLuminousIntensityMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcMassMeasure as() const { return express::Base::as(); } + // IfcMassMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcNonNegativeLengthMeasure as() const { return express::Base::as(); } + // IfcNonNegativeLengthMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcNormalisedRatioMeasure as() const { return express::Base::as(); } + // IfcNormalisedRatioMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcNumericMeasure as() const { return express::Base::as(); } + // IfcNumericMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcParameterValue as() const { return express::Base::as(); } + // IfcParameterValue as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPlaneAngleMeasure as() const { return express::Base::as(); } + // IfcPlaneAngleMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPositiveLengthMeasure as() const { return express::Base::as(); } + // IfcPositiveLengthMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPositivePlaneAngleMeasure as() const { return express::Base::as(); } + // IfcPositivePlaneAngleMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPositiveRatioMeasure as() const { return express::Base::as(); } + // IfcPositiveRatioMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcRatioMeasure as() const { return express::Base::as(); } + // IfcRatioMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSolidAngleMeasure as() const { return express::Base::as(); } + // IfcSolidAngleMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcThermodynamicTemperatureMeasure as() const { return express::Base::as(); } + // IfcThermodynamicTemperatureMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcTimeMeasure as() const { return express::Base::as(); } + // IfcTimeMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcVolumeMeasure as() const { return express::Base::as(); } + // IfcVolumeMeasure as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcSimpleValue as() const { return express::Base::as(); } + // IfcSimpleValue as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcBinary as() const { return express::Base::as(); } + // IfcBinary as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcBoolean as() const { return express::Base::as(); } + // IfcBoolean as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcDate as() const { return express::Base::as(); } + // IfcDate as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcDateTime as() const { return express::Base::as(); } + // IfcDateTime as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcDuration as() const { return express::Base::as(); } + // IfcDuration as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcIdentifier as() const { return express::Base::as(); } + // IfcIdentifier as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcInteger as() const { return express::Base::as(); } + // IfcInteger as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLabel as() const { return express::Base::as(); } + // IfcLabel as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcLogical as() const { return express::Base::as(); } + // IfcLogical as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcPositiveInteger as() const { return express::Base::as(); } + // IfcPositiveInteger as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcReal as() const { return express::Base::as(); } + // IfcReal as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcText as() const { return express::Base::as(); } + // IfcText as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcTime as() const { return express::Base::as(); } + // IfcTime as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcTimeStamp as() const { return express::Base::as(); } + // IfcTimeStamp as() const { return express::base::as(); } - IfcValue(const IfcDerivedMeasureValue& c) : express::Select(c) {}; + IfcValue(const IfcDerivedMeasureValue& c) : express::select(c) {}; - IfcValue(const IfcAbsorbedDoseMeasure& c) : express::Select(c) {}; + IfcValue(const IfcAbsorbedDoseMeasure& c) : express::select(c) {}; - IfcValue(const IfcAccelerationMeasure& c) : express::Select(c) {}; + IfcValue(const IfcAccelerationMeasure& c) : express::select(c) {}; - IfcValue(const IfcAngularVelocityMeasure& c) : express::Select(c) {}; + IfcValue(const IfcAngularVelocityMeasure& c) : express::select(c) {}; - IfcValue(const IfcAreaDensityMeasure& c) : express::Select(c) {}; + IfcValue(const IfcAreaDensityMeasure& c) : express::select(c) {}; - IfcValue(const IfcCompoundPlaneAngleMeasure& c) : express::Select(c) {}; + IfcValue(const IfcCompoundPlaneAngleMeasure& c) : express::select(c) {}; - IfcValue(const IfcCurvatureMeasure& c) : express::Select(c) {}; + IfcValue(const IfcCurvatureMeasure& c) : express::select(c) {}; - IfcValue(const IfcDoseEquivalentMeasure& c) : express::Select(c) {}; + IfcValue(const IfcDoseEquivalentMeasure& c) : express::select(c) {}; - IfcValue(const IfcDynamicViscosityMeasure& c) : express::Select(c) {}; + IfcValue(const IfcDynamicViscosityMeasure& c) : express::select(c) {}; - IfcValue(const IfcElectricCapacitanceMeasure& c) : express::Select(c) {}; + IfcValue(const IfcElectricCapacitanceMeasure& c) : express::select(c) {}; - IfcValue(const IfcElectricChargeMeasure& c) : express::Select(c) {}; + IfcValue(const IfcElectricChargeMeasure& c) : express::select(c) {}; - IfcValue(const IfcElectricConductanceMeasure& c) : express::Select(c) {}; + IfcValue(const IfcElectricConductanceMeasure& c) : express::select(c) {}; - IfcValue(const IfcElectricResistanceMeasure& c) : express::Select(c) {}; + IfcValue(const IfcElectricResistanceMeasure& c) : express::select(c) {}; - IfcValue(const IfcElectricVoltageMeasure& c) : express::Select(c) {}; + IfcValue(const IfcElectricVoltageMeasure& c) : express::select(c) {}; - IfcValue(const IfcEnergyMeasure& c) : express::Select(c) {}; + IfcValue(const IfcEnergyMeasure& c) : express::select(c) {}; - IfcValue(const IfcForceMeasure& c) : express::Select(c) {}; + IfcValue(const IfcForceMeasure& c) : express::select(c) {}; - IfcValue(const IfcFrequencyMeasure& c) : express::Select(c) {}; + IfcValue(const IfcFrequencyMeasure& c) : express::select(c) {}; - IfcValue(const IfcHeatFluxDensityMeasure& c) : express::Select(c) {}; + IfcValue(const IfcHeatFluxDensityMeasure& c) : express::select(c) {}; - IfcValue(const IfcHeatingValueMeasure& c) : express::Select(c) {}; + IfcValue(const IfcHeatingValueMeasure& c) : express::select(c) {}; - IfcValue(const IfcIlluminanceMeasure& c) : express::Select(c) {}; + IfcValue(const IfcIlluminanceMeasure& c) : express::select(c) {}; - IfcValue(const IfcInductanceMeasure& c) : express::Select(c) {}; + IfcValue(const IfcInductanceMeasure& c) : express::select(c) {}; - IfcValue(const IfcIntegerCountRateMeasure& c) : express::Select(c) {}; + IfcValue(const IfcIntegerCountRateMeasure& c) : express::select(c) {}; - IfcValue(const IfcIonConcentrationMeasure& c) : express::Select(c) {}; + IfcValue(const IfcIonConcentrationMeasure& c) : express::select(c) {}; - IfcValue(const IfcIsothermalMoistureCapacityMeasure& c) : express::Select(c) {}; + IfcValue(const IfcIsothermalMoistureCapacityMeasure& c) : express::select(c) {}; - IfcValue(const IfcKinematicViscosityMeasure& c) : express::Select(c) {}; + IfcValue(const IfcKinematicViscosityMeasure& c) : express::select(c) {}; - IfcValue(const IfcLinearForceMeasure& c) : express::Select(c) {}; + IfcValue(const IfcLinearForceMeasure& c) : express::select(c) {}; - IfcValue(const IfcLinearMomentMeasure& c) : express::Select(c) {}; + IfcValue(const IfcLinearMomentMeasure& c) : express::select(c) {}; - IfcValue(const IfcLinearStiffnessMeasure& c) : express::Select(c) {}; + IfcValue(const IfcLinearStiffnessMeasure& c) : express::select(c) {}; - IfcValue(const IfcLinearVelocityMeasure& c) : express::Select(c) {}; + IfcValue(const IfcLinearVelocityMeasure& c) : express::select(c) {}; - IfcValue(const IfcLuminousFluxMeasure& c) : express::Select(c) {}; + IfcValue(const IfcLuminousFluxMeasure& c) : express::select(c) {}; - IfcValue(const IfcLuminousIntensityDistributionMeasure& c) : express::Select(c) {}; + IfcValue(const IfcLuminousIntensityDistributionMeasure& c) : express::select(c) {}; - IfcValue(const IfcMagneticFluxDensityMeasure& c) : express::Select(c) {}; + IfcValue(const IfcMagneticFluxDensityMeasure& c) : express::select(c) {}; - IfcValue(const IfcMagneticFluxMeasure& c) : express::Select(c) {}; + IfcValue(const IfcMagneticFluxMeasure& c) : express::select(c) {}; - IfcValue(const IfcMassDensityMeasure& c) : express::Select(c) {}; + IfcValue(const IfcMassDensityMeasure& c) : express::select(c) {}; - IfcValue(const IfcMassFlowRateMeasure& c) : express::Select(c) {}; + IfcValue(const IfcMassFlowRateMeasure& c) : express::select(c) {}; - IfcValue(const IfcMassPerLengthMeasure& c) : express::Select(c) {}; + IfcValue(const IfcMassPerLengthMeasure& c) : express::select(c) {}; - IfcValue(const IfcModulusOfElasticityMeasure& c) : express::Select(c) {}; + IfcValue(const IfcModulusOfElasticityMeasure& c) : express::select(c) {}; - IfcValue(const IfcModulusOfLinearSubgradeReactionMeasure& c) : express::Select(c) {}; + IfcValue(const IfcModulusOfLinearSubgradeReactionMeasure& c) : express::select(c) {}; - IfcValue(const IfcModulusOfRotationalSubgradeReactionMeasure& c) : express::Select(c) {}; + IfcValue(const IfcModulusOfRotationalSubgradeReactionMeasure& c) : express::select(c) {}; - IfcValue(const IfcModulusOfSubgradeReactionMeasure& c) : express::Select(c) {}; + IfcValue(const IfcModulusOfSubgradeReactionMeasure& c) : express::select(c) {}; - IfcValue(const IfcMoistureDiffusivityMeasure& c) : express::Select(c) {}; + IfcValue(const IfcMoistureDiffusivityMeasure& c) : express::select(c) {}; - IfcValue(const IfcMolecularWeightMeasure& c) : express::Select(c) {}; + IfcValue(const IfcMolecularWeightMeasure& c) : express::select(c) {}; - IfcValue(const IfcMomentOfInertiaMeasure& c) : express::Select(c) {}; + IfcValue(const IfcMomentOfInertiaMeasure& c) : express::select(c) {}; - IfcValue(const IfcMonetaryMeasure& c) : express::Select(c) {}; + IfcValue(const IfcMonetaryMeasure& c) : express::select(c) {}; - IfcValue(const IfcPHMeasure& c) : express::Select(c) {}; + IfcValue(const IfcPHMeasure& c) : express::select(c) {}; - IfcValue(const IfcPlanarForceMeasure& c) : express::Select(c) {}; + IfcValue(const IfcPlanarForceMeasure& c) : express::select(c) {}; - IfcValue(const IfcPowerMeasure& c) : express::Select(c) {}; + IfcValue(const IfcPowerMeasure& c) : express::select(c) {}; - IfcValue(const IfcPressureMeasure& c) : express::Select(c) {}; + IfcValue(const IfcPressureMeasure& c) : express::select(c) {}; - IfcValue(const IfcRadioActivityMeasure& c) : express::Select(c) {}; + IfcValue(const IfcRadioActivityMeasure& c) : express::select(c) {}; - IfcValue(const IfcRotationalFrequencyMeasure& c) : express::Select(c) {}; + IfcValue(const IfcRotationalFrequencyMeasure& c) : express::select(c) {}; - IfcValue(const IfcRotationalMassMeasure& c) : express::Select(c) {}; + IfcValue(const IfcRotationalMassMeasure& c) : express::select(c) {}; - IfcValue(const IfcRotationalStiffnessMeasure& c) : express::Select(c) {}; + IfcValue(const IfcRotationalStiffnessMeasure& c) : express::select(c) {}; - IfcValue(const IfcSectionModulusMeasure& c) : express::Select(c) {}; + IfcValue(const IfcSectionModulusMeasure& c) : express::select(c) {}; - IfcValue(const IfcSectionalAreaIntegralMeasure& c) : express::Select(c) {}; + IfcValue(const IfcSectionalAreaIntegralMeasure& c) : express::select(c) {}; - IfcValue(const IfcShearModulusMeasure& c) : express::Select(c) {}; + IfcValue(const IfcShearModulusMeasure& c) : express::select(c) {}; - IfcValue(const IfcSoundPowerLevelMeasure& c) : express::Select(c) {}; + IfcValue(const IfcSoundPowerLevelMeasure& c) : express::select(c) {}; - IfcValue(const IfcSoundPowerMeasure& c) : express::Select(c) {}; + IfcValue(const IfcSoundPowerMeasure& c) : express::select(c) {}; - IfcValue(const IfcSoundPressureLevelMeasure& c) : express::Select(c) {}; + IfcValue(const IfcSoundPressureLevelMeasure& c) : express::select(c) {}; - IfcValue(const IfcSoundPressureMeasure& c) : express::Select(c) {}; + IfcValue(const IfcSoundPressureMeasure& c) : express::select(c) {}; - IfcValue(const IfcSpecificHeatCapacityMeasure& c) : express::Select(c) {}; + IfcValue(const IfcSpecificHeatCapacityMeasure& c) : express::select(c) {}; - IfcValue(const IfcTemperatureGradientMeasure& c) : express::Select(c) {}; + IfcValue(const IfcTemperatureGradientMeasure& c) : express::select(c) {}; - IfcValue(const IfcTemperatureRateOfChangeMeasure& c) : express::Select(c) {}; + IfcValue(const IfcTemperatureRateOfChangeMeasure& c) : express::select(c) {}; - IfcValue(const IfcThermalAdmittanceMeasure& c) : express::Select(c) {}; + IfcValue(const IfcThermalAdmittanceMeasure& c) : express::select(c) {}; - IfcValue(const IfcThermalConductivityMeasure& c) : express::Select(c) {}; + IfcValue(const IfcThermalConductivityMeasure& c) : express::select(c) {}; - IfcValue(const IfcThermalExpansionCoefficientMeasure& c) : express::Select(c) {}; + IfcValue(const IfcThermalExpansionCoefficientMeasure& c) : express::select(c) {}; - IfcValue(const IfcThermalResistanceMeasure& c) : express::Select(c) {}; + IfcValue(const IfcThermalResistanceMeasure& c) : express::select(c) {}; - IfcValue(const IfcThermalTransmittanceMeasure& c) : express::Select(c) {}; + IfcValue(const IfcThermalTransmittanceMeasure& c) : express::select(c) {}; - IfcValue(const IfcTorqueMeasure& c) : express::Select(c) {}; + IfcValue(const IfcTorqueMeasure& c) : express::select(c) {}; - IfcValue(const IfcVaporPermeabilityMeasure& c) : express::Select(c) {}; + IfcValue(const IfcVaporPermeabilityMeasure& c) : express::select(c) {}; - IfcValue(const IfcVolumetricFlowRateMeasure& c) : express::Select(c) {}; + IfcValue(const IfcVolumetricFlowRateMeasure& c) : express::select(c) {}; - IfcValue(const IfcWarpingConstantMeasure& c) : express::Select(c) {}; + IfcValue(const IfcWarpingConstantMeasure& c) : express::select(c) {}; - IfcValue(const IfcWarpingMomentMeasure& c) : express::Select(c) {}; + IfcValue(const IfcWarpingMomentMeasure& c) : express::select(c) {}; - IfcValue(const IfcMeasureValue& c) : express::Select(c) {}; + IfcValue(const IfcMeasureValue& c) : express::select(c) {}; - IfcValue(const IfcAmountOfSubstanceMeasure& c) : express::Select(c) {}; + IfcValue(const IfcAmountOfSubstanceMeasure& c) : express::select(c) {}; - IfcValue(const IfcAreaMeasure& c) : express::Select(c) {}; + IfcValue(const IfcAreaMeasure& c) : express::select(c) {}; - IfcValue(const IfcComplexNumber& c) : express::Select(c) {}; + IfcValue(const IfcComplexNumber& c) : express::select(c) {}; - IfcValue(const IfcContextDependentMeasure& c) : express::Select(c) {}; + IfcValue(const IfcContextDependentMeasure& c) : express::select(c) {}; - IfcValue(const IfcCountMeasure& c) : express::Select(c) {}; + IfcValue(const IfcCountMeasure& c) : express::select(c) {}; - IfcValue(const IfcDescriptiveMeasure& c) : express::Select(c) {}; + IfcValue(const IfcDescriptiveMeasure& c) : express::select(c) {}; - IfcValue(const IfcElectricCurrentMeasure& c) : express::Select(c) {}; + IfcValue(const IfcElectricCurrentMeasure& c) : express::select(c) {}; - IfcValue(const IfcLengthMeasure& c) : express::Select(c) {}; + IfcValue(const IfcLengthMeasure& c) : express::select(c) {}; - IfcValue(const IfcLuminousIntensityMeasure& c) : express::Select(c) {}; + IfcValue(const IfcLuminousIntensityMeasure& c) : express::select(c) {}; - IfcValue(const IfcMassMeasure& c) : express::Select(c) {}; + IfcValue(const IfcMassMeasure& c) : express::select(c) {}; - IfcValue(const IfcNonNegativeLengthMeasure& c) : express::Select(c) {}; + IfcValue(const IfcNonNegativeLengthMeasure& c) : express::select(c) {}; - IfcValue(const IfcNormalisedRatioMeasure& c) : express::Select(c) {}; + IfcValue(const IfcNormalisedRatioMeasure& c) : express::select(c) {}; - IfcValue(const IfcNumericMeasure& c) : express::Select(c) {}; + IfcValue(const IfcNumericMeasure& c) : express::select(c) {}; - IfcValue(const IfcParameterValue& c) : express::Select(c) {}; + IfcValue(const IfcParameterValue& c) : express::select(c) {}; - IfcValue(const IfcPlaneAngleMeasure& c) : express::Select(c) {}; + IfcValue(const IfcPlaneAngleMeasure& c) : express::select(c) {}; - IfcValue(const IfcPositiveLengthMeasure& c) : express::Select(c) {}; + IfcValue(const IfcPositiveLengthMeasure& c) : express::select(c) {}; - IfcValue(const IfcPositivePlaneAngleMeasure& c) : express::Select(c) {}; + IfcValue(const IfcPositivePlaneAngleMeasure& c) : express::select(c) {}; - IfcValue(const IfcPositiveRatioMeasure& c) : express::Select(c) {}; + IfcValue(const IfcPositiveRatioMeasure& c) : express::select(c) {}; - IfcValue(const IfcRatioMeasure& c) : express::Select(c) {}; + IfcValue(const IfcRatioMeasure& c) : express::select(c) {}; - IfcValue(const IfcSolidAngleMeasure& c) : express::Select(c) {}; + IfcValue(const IfcSolidAngleMeasure& c) : express::select(c) {}; - IfcValue(const IfcThermodynamicTemperatureMeasure& c) : express::Select(c) {}; + IfcValue(const IfcThermodynamicTemperatureMeasure& c) : express::select(c) {}; - IfcValue(const IfcTimeMeasure& c) : express::Select(c) {}; + IfcValue(const IfcTimeMeasure& c) : express::select(c) {}; - IfcValue(const IfcVolumeMeasure& c) : express::Select(c) {}; + IfcValue(const IfcVolumeMeasure& c) : express::select(c) {}; - IfcValue(const IfcSimpleValue& c) : express::Select(c) {}; + IfcValue(const IfcSimpleValue& c) : express::select(c) {}; - IfcValue(const IfcBinary& c) : express::Select(c) {}; + IfcValue(const IfcBinary& c) : express::select(c) {}; - IfcValue(const IfcBoolean& c) : express::Select(c) {}; + IfcValue(const IfcBoolean& c) : express::select(c) {}; - IfcValue(const IfcDate& c) : express::Select(c) {}; + IfcValue(const IfcDate& c) : express::select(c) {}; - IfcValue(const IfcDateTime& c) : express::Select(c) {}; + IfcValue(const IfcDateTime& c) : express::select(c) {}; - IfcValue(const IfcDuration& c) : express::Select(c) {}; + IfcValue(const IfcDuration& c) : express::select(c) {}; - IfcValue(const IfcIdentifier& c) : express::Select(c) {}; + IfcValue(const IfcIdentifier& c) : express::select(c) {}; - IfcValue(const IfcInteger& c) : express::Select(c) {}; + IfcValue(const IfcInteger& c) : express::select(c) {}; - IfcValue(const IfcLabel& c) : express::Select(c) {}; + IfcValue(const IfcLabel& c) : express::select(c) {}; - IfcValue(const IfcLogical& c) : express::Select(c) {}; + IfcValue(const IfcLogical& c) : express::select(c) {}; - IfcValue(const IfcPositiveInteger& c) : express::Select(c) {}; + IfcValue(const IfcPositiveInteger& c) : express::select(c) {}; - IfcValue(const IfcReal& c) : express::Select(c) {}; + IfcValue(const IfcReal& c) : express::select(c) {}; - IfcValue(const IfcText& c) : express::Select(c) {}; + IfcValue(const IfcText& c) : express::select(c) {}; - IfcValue(const IfcTime& c) : express::Select(c) {}; + IfcValue(const IfcTime& c) : express::select(c) {}; - IfcValue(const IfcTimeStamp& c) : express::Select(c) {}; + IfcValue(const IfcTimeStamp& c) : express::select(c) {}; }; /// Definition from ISO/CD 10303-42:1992: This type is used to @@ -4516,43 +4516,43 @@ public: /// definition of the formal standard. /// HISTORY New Type in IFC Release /// 1.5 -class IFC_SCHEMA_API IfcVectorOrDirection : public express::Select { +class IFC_SCHEMA_API IfcVectorOrDirection : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcDirection as() const { return express::Base::as(); } + // IfcDirection as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcVector as() const { return express::Base::as(); } + // IfcVector as() const { return express::base::as(); } - IfcVectorOrDirection(const IfcDirection& c) : express::Select(c) {}; + IfcVectorOrDirection(const IfcDirection& c) : express::select(c) {}; - IfcVectorOrDirection(const IfcVector& c) : express::Select(c) {}; + IfcVectorOrDirection(const IfcVector& c) : express::select(c) {}; }; /// Definition from IAI: A measure of warping stiffness. TRUE denotes infinite stiffness (rigidity). FALSE denotes no stiffness (a release). A numeric value denotes finite linear-elastic stiffness. /// /// HISTORY: New type in IFC 2x4. -class IFC_SCHEMA_API IfcWarpingStiffnessSelect : public express::Select { +class IFC_SCHEMA_API IfcWarpingStiffnessSelect : public express::select { public: - using express::Select::Select; + using express::select::select; static const ifcopenshell::select_type& Class(); // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcBoolean as() const { return express::Base::as(); } + // IfcBoolean as() const { return express::base::as(); } // let's just use the as<>() from Base instead directly... // template, int> = 0> - // IfcWarpingMomentMeasure as() const { return express::Base::as(); } + // IfcWarpingMomentMeasure as() const { return express::base::as(); } - IfcWarpingStiffnessSelect(const IfcBoolean& c) : express::Select(c) {}; + IfcWarpingStiffnessSelect(const IfcBoolean& c) : express::select(c) {}; - IfcWarpingStiffnessSelect(const IfcWarpingMomentMeasure& c) : express::Select(c) {}; + IfcWarpingStiffnessSelect(const IfcWarpingMomentMeasure& c) : express::select(c) {}; }; /// IfcActionRequestTypeEnum defines the types of sources through which a request can be made. @@ -4566,9 +4566,9 @@ public: /// VERBAL: Request was made verbally in person. /// USERDEFINED: User-defined type. /// NOTDEFINED: Undefined type. -class IFC_SCHEMA_API IfcActionRequestTypeEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcActionRequestTypeEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcActionRequestType_EMAIL, IfcActionRequestType_FAX, IfcActionRequestType_PHONE, IfcActionRequestType_POST, IfcActionRequestType_VERBAL, IfcActionRequestType_USERDEFINED, IfcActionRequestType_NOTDEFINED} Value; static const char* ToString(Value v); @@ -4584,9 +4584,9 @@ public: /// /// HISTORY: New type in Release IFC2x /// Edition 2. -class IFC_SCHEMA_API IfcActionSourceTypeEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcActionSourceTypeEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcActionSourceType_BRAKES, IfcActionSourceType_BUOYANCY, IfcActionSourceType_COMPLETION_G1, IfcActionSourceType_CREEP, IfcActionSourceType_CURRENT, IfcActionSourceType_DEAD_LOAD_G, IfcActionSourceType_EARTHQUAKE_E, IfcActionSourceType_ERECTION, IfcActionSourceType_FIRE, IfcActionSourceType_ICE, IfcActionSourceType_IMPACT, IfcActionSourceType_IMPULSE, IfcActionSourceType_LACK_OF_FIT, IfcActionSourceType_LIVE_LOAD_Q, IfcActionSourceType_PRESTRESSING_P, IfcActionSourceType_PROPPING, IfcActionSourceType_RAIN, IfcActionSourceType_SETTLEMENT_U, IfcActionSourceType_SHRINKAGE, IfcActionSourceType_SNOW_S, IfcActionSourceType_SYSTEM_IMPERFECTION, IfcActionSourceType_TEMPERATURE_T, IfcActionSourceType_TRANSPORT, IfcActionSourceType_WAVE, IfcActionSourceType_WIND_W, IfcActionSourceType_USERDEFINED, IfcActionSourceType_NOTDEFINED} Value; static const char* ToString(Value v); @@ -4604,9 +4604,9 @@ public: /// /// HISTORY: New type in Release IFC2x /// Edition 2. -class IFC_SCHEMA_API IfcActionTypeEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcActionTypeEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcActionType_EXTRAORDINARY_A, IfcActionType_PERMANENT_G, IfcActionType_VARIABLE_Q, IfcActionType_USERDEFINED, IfcActionType_NOTDEFINED} Value; static const char* ToString(Value v); @@ -4633,9 +4633,9 @@ public: /// /// See property set of actuator common attributes for specification of /// properties for hand operated actuators. -class IFC_SCHEMA_API IfcActuatorTypeEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcActuatorTypeEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcActuatorType_ELECTRICACTUATOR, IfcActuatorType_HANDOPERATEDACTUATOR, IfcActuatorType_HYDRAULICACTUATOR, IfcActuatorType_PNEUMATICACTUATOR, IfcActuatorType_THERMOSTATICACTUATOR, IfcActuatorType_USERDEFINED, IfcActuatorType_NOTDEFINED} Value; static const char* ToString(Value v); @@ -4657,9 +4657,9 @@ public: /// HOME A home address. /// DISTRIBUTIONPOINT A postal distribution point address. /// USERDEFINED A user defined address type to be provided. -class IFC_SCHEMA_API IfcAddressTypeEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcAddressTypeEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcAddressType_DISTRIBUTIONPOINT, IfcAddressType_HOME, IfcAddressType_OFFICE, IfcAddressType_SITE, IfcAddressType_USERDEFINED} Value; static const char* ToString(Value v); @@ -4681,9 +4681,9 @@ public: /// NOTDEFINED: Undefined terminal box. /// /// HISTORY: New enumeration in IFC R2.0 -class IFC_SCHEMA_API IfcAirTerminalBoxTypeEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcAirTerminalBoxTypeEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcAirTerminalBoxType_CONSTANTFLOW, IfcAirTerminalBoxType_VARIABLEFLOWPRESSUREDEPENDANT, IfcAirTerminalBoxType_VARIABLEFLOWPRESSUREINDEPENDANT, IfcAirTerminalBoxType_USERDEFINED, IfcAirTerminalBoxType_NOTDEFINED} Value; static const char* ToString(Value v); @@ -4707,9 +4707,9 @@ public: /// NOTE: Architectural louvres within doors or windows are defined by IfcPermeableCoveringProperties. /// /// HISTORY: New enumeration in IFC R2x2. Modified in IFC R2x4 to add LOUVRE and remove EYEBALL, IRIS, LINEARGRILLE, LINEARDIFFUSER -class IFC_SCHEMA_API IfcAirTerminalTypeEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcAirTerminalTypeEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcAirTerminalType_DIFFUSER, IfcAirTerminalType_GRILLE, IfcAirTerminalType_LOUVRE, IfcAirTerminalType_REGISTER, IfcAirTerminalType_USERDEFINED, IfcAirTerminalType_NOTDEFINED} Value; static const char* ToString(Value v); @@ -4736,9 +4736,9 @@ public: /// NOTDEFINED: Undefined air to air heat recovery type. /// /// HISTORY: New enumeration in IFC R2x. -class IFC_SCHEMA_API IfcAirToAirHeatRecoveryTypeEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcAirToAirHeatRecoveryTypeEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcAirToAirHeatRecoveryType_FIXEDPLATECOUNTERFLOWEXCHANGER, IfcAirToAirHeatRecoveryType_FIXEDPLATECROSSFLOWEXCHANGER, IfcAirToAirHeatRecoveryType_FIXEDPLATEPARALLELFLOWEXCHANGER, IfcAirToAirHeatRecoveryType_HEATPIPE, IfcAirToAirHeatRecoveryType_ROTARYWHEEL, IfcAirToAirHeatRecoveryType_RUNAROUNDCOILLOOP, IfcAirToAirHeatRecoveryType_THERMOSIPHONCOILTYPEHEATEXCHANGERS, IfcAirToAirHeatRecoveryType_THERMOSIPHONSEALEDTUBEHEATEXCHANGERS, IfcAirToAirHeatRecoveryType_TWINTOWERENTHALPYRECOVERYLOOPS, IfcAirToAirHeatRecoveryType_USERDEFINED, IfcAirToAirHeatRecoveryType_NOTDEFINED} Value; static const char* ToString(Value v); @@ -4763,9 +4763,9 @@ public: /// WHISTLE: An audible alarm. /// USERDEFINED: User-defined type. /// NOTDEFINED: Undefined type. -class IFC_SCHEMA_API IfcAlarmTypeEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcAlarmTypeEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcAlarmType_BELL, IfcAlarmType_BREAKGLASSBUTTON, IfcAlarmType_LIGHT, IfcAlarmType_MANUALPULLBOX, IfcAlarmType_RAILWAYCROCODILE, IfcAlarmType_RAILWAYDETONATOR, IfcAlarmType_SIREN, IfcAlarmType_WHISTLE, IfcAlarmType_USERDEFINED, IfcAlarmType_NOTDEFINED} Value; static const char* ToString(Value v); @@ -4777,9 +4777,9 @@ public: operator Value() const; }; -class IFC_SCHEMA_API IfcAlignmentCantSegmentTypeEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcAlignmentCantSegmentTypeEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcAlignmentCantSegmentType_BLOSSCURVE, IfcAlignmentCantSegmentType_CONSTANTCANT, IfcAlignmentCantSegmentType_COSINECURVE, IfcAlignmentCantSegmentType_HELMERTCURVE, IfcAlignmentCantSegmentType_LINEARTRANSITION, IfcAlignmentCantSegmentType_SINECURVE, IfcAlignmentCantSegmentType_VIENNESEBEND} Value; static const char* ToString(Value v); @@ -4791,9 +4791,9 @@ public: operator Value() const; }; -class IFC_SCHEMA_API IfcAlignmentHorizontalSegmentTypeEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcAlignmentHorizontalSegmentTypeEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcAlignmentHorizontalSegmentType_BLOSSCURVE, IfcAlignmentHorizontalSegmentType_CIRCULARARC, IfcAlignmentHorizontalSegmentType_CLOTHOID, IfcAlignmentHorizontalSegmentType_COSINECURVE, IfcAlignmentHorizontalSegmentType_CUBIC, IfcAlignmentHorizontalSegmentType_HELMERTCURVE, IfcAlignmentHorizontalSegmentType_LINE, IfcAlignmentHorizontalSegmentType_SINECURVE, IfcAlignmentHorizontalSegmentType_VIENNESEBEND} Value; static const char* ToString(Value v); @@ -4805,9 +4805,9 @@ public: operator Value() const; }; -class IFC_SCHEMA_API IfcAlignmentTypeEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcAlignmentTypeEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcAlignmentType_USERDEFINED, IfcAlignmentType_NOTDEFINED} Value; static const char* ToString(Value v); @@ -4819,9 +4819,9 @@ public: operator Value() const; }; -class IFC_SCHEMA_API IfcAlignmentVerticalSegmentTypeEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcAlignmentVerticalSegmentTypeEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcAlignmentVerticalSegmentType_CIRCULARARC, IfcAlignmentVerticalSegmentType_CLOTHOID, IfcAlignmentVerticalSegmentType_CONSTANTGRADIENT, IfcAlignmentVerticalSegmentType_PARABOLICARC} Value; static const char* ToString(Value v); @@ -4838,9 +4838,9 @@ public: /// /// HISTORY: New type in Release IFC2x /// Edition 2. -class IFC_SCHEMA_API IfcAnalysisModelTypeEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcAnalysisModelTypeEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcAnalysisModelType_IN_PLANE_LOADING_2D, IfcAnalysisModelType_LOADING_3D, IfcAnalysisModelType_OUT_PLANE_LOADING_2D, IfcAnalysisModelType_USERDEFINED, IfcAnalysisModelType_NOTDEFINED} Value; static const char* ToString(Value v); @@ -4858,9 +4858,9 @@ public: /// /// HISTORY: New type in Release IFC2x /// Edition 2. -class IFC_SCHEMA_API IfcAnalysisTheoryTypeEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcAnalysisTheoryTypeEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcAnalysisTheoryType_FIRST_ORDER_THEORY, IfcAnalysisTheoryType_FULL_NONLINEAR_THEORY, IfcAnalysisTheoryType_SECOND_ORDER_THEORY, IfcAnalysisTheoryType_THIRD_ORDER_THEORY, IfcAnalysisTheoryType_USERDEFINED, IfcAnalysisTheoryType_NOTDEFINED} Value; static const char* ToString(Value v); @@ -4872,9 +4872,9 @@ public: operator Value() const; }; -class IFC_SCHEMA_API IfcAnnotationTypeEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcAnnotationTypeEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcAnnotationType_ASBUILTAREA, IfcAnnotationType_ASBUILTLINE, IfcAnnotationType_ASBUILTPOINT, IfcAnnotationType_ASSUMEDAREA, IfcAnnotationType_ASSUMEDLINE, IfcAnnotationType_ASSUMEDPOINT, IfcAnnotationType_NON_PHYSICAL_SIGNAL, IfcAnnotationType_SUPERELEVATIONEVENT, IfcAnnotationType_WIDTHEVENT, IfcAnnotationType_USERDEFINED, IfcAnnotationType_NOTDEFINED} Value; static const char* ToString(Value v); @@ -4897,9 +4897,9 @@ public: /// /// Use definitions /// There can be only one arithmetic operator for each applied value relationship. This is to enforce arithmetic consistency. Given this consistency, the cardinality of the IfcAppliedValueRelationship.Components attribute is a set of one to many applied values that are components of an applied value. -class IFC_SCHEMA_API IfcArithmeticOperatorEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcArithmeticOperatorEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcArithmeticOperator_ADD, IfcArithmeticOperator_DIVIDE, IfcArithmeticOperator_MULTIPLY, IfcArithmeticOperator_SUBTRACT} Value; static const char* ToString(Value v); @@ -4922,9 +4922,9 @@ public: /// SITE - this assembly is assembled at site /// /// FACTORY - this assembly is assembled in a factory -class IFC_SCHEMA_API IfcAssemblyPlaceEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcAssemblyPlaceEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcAssemblyPlace_FACTORY, IfcAssemblyPlace_SITE, IfcAssemblyPlace_NOTDEFINED} Value; static const char* ToString(Value v); @@ -4949,9 +4949,9 @@ public: /// SWITCHER: A device that receives audio and/or video signals, switches sources, and transmits signals to downstream devices. /// TELEPHONE: A telecommunications device that is used to transmit and receive sound, and optionally video. /// TUNER: An electronic receiver that detects, demodulates, and amplifies transmitted signals. -class IFC_SCHEMA_API IfcAudioVisualApplianceTypeEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcAudioVisualApplianceTypeEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcAudioVisualApplianceType_AMPLIFIER, IfcAudioVisualApplianceType_CAMERA, IfcAudioVisualApplianceType_COMMUNICATIONTERMINAL, IfcAudioVisualApplianceType_DISPLAY, IfcAudioVisualApplianceType_MICROPHONE, IfcAudioVisualApplianceType_PLAYER, IfcAudioVisualApplianceType_PROJECTOR, IfcAudioVisualApplianceType_RECEIVER, IfcAudioVisualApplianceType_RECORDINGEQUIPMENT, IfcAudioVisualApplianceType_SPEAKER, IfcAudioVisualApplianceType_SWITCHER, IfcAudioVisualApplianceType_TELEPHONE, IfcAudioVisualApplianceType_TUNER, IfcAudioVisualApplianceType_USERDEFINED, IfcAudioVisualApplianceType_NOTDEFINED} Value; static const char* ToString(Value v); @@ -4976,9 +4976,9 @@ public: /// NOTE Corresponding ISO 10303 type: b_spline_curve_form. Please refer to ISO/IS 10303-42:1994, p. 15 for the final definition of the formal standard. /// /// HISTORY New type in Release IFC2x2. -class IFC_SCHEMA_API IfcBSplineCurveForm : public express::DeclaredType { +class IFC_SCHEMA_API IfcBSplineCurveForm : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcBSplineCurveForm_CIRCULAR_ARC, IfcBSplineCurveForm_ELLIPTIC_ARC, IfcBSplineCurveForm_HYPERBOLIC_ARC, IfcBSplineCurveForm_PARABOLIC_ARC, IfcBSplineCurveForm_POLYLINE_FORM, IfcBSplineCurveForm_UNSPECIFIED} Value; static const char* ToString(Value v); @@ -4990,9 +4990,9 @@ public: operator Value() const; }; -class IFC_SCHEMA_API IfcBSplineSurfaceForm : public express::DeclaredType { +class IFC_SCHEMA_API IfcBSplineSurfaceForm : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcBSplineSurfaceForm_CONICAL_SURF, IfcBSplineSurfaceForm_CYLINDRICAL_SURF, IfcBSplineSurfaceForm_GENERALISED_CONE, IfcBSplineSurfaceForm_PLANE_SURF, IfcBSplineSurfaceForm_QUADRIC_SURF, IfcBSplineSurfaceForm_RULED_SURF, IfcBSplineSurfaceForm_SPHERICAL_SURF, IfcBSplineSurfaceForm_SURF_OF_LINEAR_EXTRUSION, IfcBSplineSurfaceForm_SURF_OF_REVOLUTION, IfcBSplineSurfaceForm_TOROIDAL_SURF, IfcBSplineSurfaceForm_UNSPECIFIED} Value; static const char* ToString(Value v); @@ -5042,9 +5042,9 @@ public: /// IFC2x4 CHANGE The enumerators /// HOLLOWCORE and SPANDREL have been /// added. -class IFC_SCHEMA_API IfcBeamTypeEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcBeamTypeEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcBeamType_BEAM, IfcBeamType_CORNICE, IfcBeamType_DIAPHRAGM, IfcBeamType_EDGEBEAM, IfcBeamType_GIRDER_SEGMENT, IfcBeamType_HATSTONE, IfcBeamType_HOLLOWCORE, IfcBeamType_JOIST, IfcBeamType_LINTEL, IfcBeamType_PIERCAP, IfcBeamType_SPANDREL, IfcBeamType_T_BEAM, IfcBeamType_USERDEFINED, IfcBeamType_NOTDEFINED} Value; static const char* ToString(Value v); @@ -5056,9 +5056,9 @@ public: operator Value() const; }; -class IFC_SCHEMA_API IfcBearingTypeEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcBearingTypeEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcBearingType_CYLINDRICAL, IfcBearingType_DISK, IfcBearingType_ELASTOMERIC, IfcBearingType_GUIDE, IfcBearingType_POT, IfcBearingType_ROCKER, IfcBearingType_ROLLER, IfcBearingType_SPHERICAL, IfcBearingType_USERDEFINED, IfcBearingType_NOTDEFINED} Value; static const char* ToString(Value v); @@ -5109,9 +5109,9 @@ public: /// /// NOTINCLUDEDIN /// Identifies that a value (individual item) must not be included (i.e. must be excluded) in the aggregation (set, list or table) set by the constraint. -class IFC_SCHEMA_API IfcBenchmarkEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcBenchmarkEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcBenchmark_EQUALTO, IfcBenchmark_GREATERTHAN, IfcBenchmark_GREATERTHANOREQUALTO, IfcBenchmark_INCLUDEDIN, IfcBenchmark_INCLUDES, IfcBenchmark_LESSTHAN, IfcBenchmark_LESSTHANOREQUALTO, IfcBenchmark_NOTEQUALTO, IfcBenchmark_NOTINCLUDEDIN, IfcBenchmark_NOTINCLUDES} Value; static const char* ToString(Value v); @@ -5131,9 +5131,9 @@ public: /// NOTDEFINED: Undefined Boiler type. /// /// HISTORY: New enumeration in IFC R2x. -class IFC_SCHEMA_API IfcBoilerTypeEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcBoilerTypeEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcBoilerType_STEAM, IfcBoilerType_WATER, IfcBoilerType_USERDEFINED, IfcBoilerType_NOTDEFINED} Value; static const char* ToString(Value v); @@ -5153,9 +5153,9 @@ public: /// NOTE Corresponding STEP type: boolean_operator, please refer to ISO/IS 10303-42:1994, p.167 for the final definition of the formal standard. /// /// HISTORY New Type in IFC Release 1.5.1. -class IFC_SCHEMA_API IfcBooleanOperator : public express::DeclaredType { +class IFC_SCHEMA_API IfcBooleanOperator : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcBooleanOperator_DIFFERENCE, IfcBooleanOperator_INTERSECTION, IfcBooleanOperator_UNION} Value; static const char* ToString(Value v); @@ -5167,9 +5167,9 @@ public: operator Value() const; }; -class IFC_SCHEMA_API IfcBridgePartTypeEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcBridgePartTypeEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcBridgePartType_ABUTMENT, IfcBridgePartType_DECK, IfcBridgePartType_DECK_SEGMENT, IfcBridgePartType_FOUNDATION, IfcBridgePartType_PIER, IfcBridgePartType_PIER_SEGMENT, IfcBridgePartType_PYLON, IfcBridgePartType_SUBSTRUCTURE, IfcBridgePartType_SUPERSTRUCTURE, IfcBridgePartType_SURFACESTRUCTURE, IfcBridgePartType_USERDEFINED, IfcBridgePartType_NOTDEFINED} Value; static const char* ToString(Value v); @@ -5181,9 +5181,9 @@ public: operator Value() const; }; -class IFC_SCHEMA_API IfcBridgeTypeEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcBridgeTypeEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcBridgeType_ARCHED, IfcBridgeType_CABLE_STAYED, IfcBridgeType_CANTILEVER, IfcBridgeType_CULVERT, IfcBridgeType_FRAMEWORK, IfcBridgeType_GIRDER, IfcBridgeType_SUSPENSION, IfcBridgeType_TRUSS, IfcBridgeType_USERDEFINED, IfcBridgeType_NOTDEFINED} Value; static const char* ToString(Value v); @@ -5202,9 +5202,9 @@ public: /// NOTDEFINED: Undefined accessory /// /// HISTORY New Enumeration in IFC 2x4. -class IFC_SCHEMA_API IfcBuildingElementPartTypeEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcBuildingElementPartTypeEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcBuildingElementPartType_APRON, IfcBuildingElementPartType_ARMOURUNIT, IfcBuildingElementPartType_INSULATION, IfcBuildingElementPartType_PRECASTPANEL, IfcBuildingElementPartType_SAFETYCAGE, IfcBuildingElementPartType_USERDEFINED, IfcBuildingElementPartType_NOTDEFINED} Value; static const char* ToString(Value v); @@ -5226,9 +5226,9 @@ public: /// USERDEFINED /// /// NOTDEFINED -class IFC_SCHEMA_API IfcBuildingElementProxyTypeEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcBuildingElementProxyTypeEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcBuildingElementProxyType_COMPLEX, IfcBuildingElementProxyType_ELEMENT, IfcBuildingElementProxyType_PARTIAL, IfcBuildingElementProxyType_PROVISIONFORSPACE, IfcBuildingElementProxyType_PROVISIONFORVOID, IfcBuildingElementProxyType_USERDEFINED, IfcBuildingElementProxyType_NOTDEFINED} Value; static const char* ToString(Value v); @@ -5253,9 +5253,9 @@ public: /// natural sun light, /// TRANSPORT: System of all transport elements in a /// building that enables the transport of people or goods. -class IFC_SCHEMA_API IfcBuildingSystemTypeEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcBuildingSystemTypeEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcBuildingSystemType_FENESTRATION, IfcBuildingSystemType_FOUNDATION, IfcBuildingSystemType_LOADBEARING, IfcBuildingSystemType_OUTERSHELL, IfcBuildingSystemType_SHADING, IfcBuildingSystemType_TRANSPORT, IfcBuildingSystemType_USERDEFINED, IfcBuildingSystemType_NOTDEFINED} Value; static const char* ToString(Value v); @@ -5267,9 +5267,9 @@ public: operator Value() const; }; -class IFC_SCHEMA_API IfcBuiltSystemTypeEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcBuiltSystemTypeEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcBuiltSystemType_EROSIONPREVENTION, IfcBuiltSystemType_FENESTRATION, IfcBuiltSystemType_FOUNDATION, IfcBuiltSystemType_LOADBEARING, IfcBuiltSystemType_MOORING, IfcBuiltSystemType_OUTERSHELL, IfcBuiltSystemType_PRESTRESSING, IfcBuiltSystemType_RAILWAYLINE, IfcBuiltSystemType_RAILWAYTRACK, IfcBuiltSystemType_REINFORCING, IfcBuiltSystemType_SHADING, IfcBuiltSystemType_TRACKCIRCUIT, IfcBuiltSystemType_TRANSPORT, IfcBuiltSystemType_USERDEFINED, IfcBuiltSystemType_NOTDEFINED} Value; static const char* ToString(Value v); @@ -5287,9 +5287,9 @@ public: /// NOTDEFINED: Undefined burner type. /// /// HISTORY: New enumeration in IFC R2x4. -class IFC_SCHEMA_API IfcBurnerTypeEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcBurnerTypeEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcBurnerType_USERDEFINED, IfcBurnerType_NOTDEFINED} Value; static const char* ToString(Value v); @@ -5310,9 +5310,9 @@ public: /// TEE: A fitting at which a branch is taken from the main route of the cable carrier. /// USERDEFINED: User-defined type. /// NOTDEFINED: Undefined type. -class IFC_SCHEMA_API IfcCableCarrierFittingTypeEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcCableCarrierFittingTypeEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcCableCarrierFittingType_BEND, IfcCableCarrierFittingType_CONNECTOR, IfcCableCarrierFittingType_CROSS, IfcCableCarrierFittingType_JUNCTION, IfcCableCarrierFittingType_REDUCER, IfcCableCarrierFittingType_TEE, IfcCableCarrierFittingType_TRANSITION, IfcCableCarrierFittingType_USERDEFINED, IfcCableCarrierFittingType_NOTDEFINED} Value; static const char* ToString(Value v); @@ -5333,9 +5333,9 @@ public: /// CONDUITSEGMENT: An enclosed tubular carrier segment through which cables are pulled. /// USERDEFINED: User-defined type. /// NOTDEFINED: Undefined type. -class IFC_SCHEMA_API IfcCableCarrierSegmentTypeEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcCableCarrierSegmentTypeEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcCableCarrierSegmentType_CABLEBRACKET, IfcCableCarrierSegmentType_CABLELADDERSEGMENT, IfcCableCarrierSegmentType_CABLETRAYSEGMENT, IfcCableCarrierSegmentType_CABLETRUNKINGSEGMENT, IfcCableCarrierSegmentType_CATENARYWIRE, IfcCableCarrierSegmentType_CONDUITSEGMENT, IfcCableCarrierSegmentType_DROPPER, IfcCableCarrierSegmentType_USERDEFINED, IfcCableCarrierSegmentType_NOTDEFINED} Value; static const char* ToString(Value v); @@ -5357,9 +5357,9 @@ public: /// TRANSITION: A fitting that joins two cable segments of different connector types. /// USERDEFINED: User-defined type. /// NOTDEFINED: Undefined type. -class IFC_SCHEMA_API IfcCableFittingTypeEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcCableFittingTypeEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcCableFittingType_CONNECTOR, IfcCableFittingType_ENTRY, IfcCableFittingType_EXIT, IfcCableFittingType_FANOUT, IfcCableFittingType_JUNCTION, IfcCableFittingType_TRANSITION, IfcCableFittingType_USERDEFINED, IfcCableFittingType_NOTDEFINED} Value; static const char* ToString(Value v); @@ -5382,9 +5382,9 @@ public: /// CORESEGMENT: A self contained element of a cable that comprises one or more conductors and sheathing.The core of one lead is normally single wired or multiwired which are intertwined. /// USERDEFINED: User-defined type. /// NOTDEFINED: Undefined type. -class IFC_SCHEMA_API IfcCableSegmentTypeEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcCableSegmentTypeEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcCableSegmentType_BUSBARSEGMENT, IfcCableSegmentType_CABLESEGMENT, IfcCableSegmentType_CONDUCTORSEGMENT, IfcCableSegmentType_CONTACTWIRESEGMENT, IfcCableSegmentType_CORESEGMENT, IfcCableSegmentType_FIBERSEGMENT, IfcCableSegmentType_FIBERTUBE, IfcCableSegmentType_OPTICALCABLESEGMENT, IfcCableSegmentType_STITCHWIRE, IfcCableSegmentType_WIREPAIRSEGMENT, IfcCableSegmentType_USERDEFINED, IfcCableSegmentType_NOTDEFINED} Value; static const char* ToString(Value v); @@ -5396,9 +5396,9 @@ public: operator Value() const; }; -class IFC_SCHEMA_API IfcCaissonFoundationTypeEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcCaissonFoundationTypeEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcCaissonFoundationType_CAISSON, IfcCaissonFoundationType_WELL, IfcCaissonFoundationType_USERDEFINED, IfcCaissonFoundationType_NOTDEFINED} Value; static const char* ToString(Value v); @@ -5420,9 +5420,9 @@ public: /// Consider Application A will create an IFC dataset that it wants to publish to others for modification and have the ability to subsequently merge these changes back into the original model. Before publication, it may want to set the IfcChangeActionEnum to NOCHANGE to establish a baseline so that other application changes can be easily identified. Application B then receives this IFC dataset and adds a new object and sets IfcChangeActionEnum to ADDED with Application B defined as the OwningApplication. Application B then modifies an existing object and (re)defines the LastModifiedDate to the time of the modification, LastModifyingUser to the IfcPersonAndOrganization making the change, and sets the LastModifyingApplication to Application B. When Application A receives this modified dataset, it can determine which objects have been added and modified by Application B and either merge or reject these changes as necessary. Consequently, the intent is that an application only modifies the value of IfcChangeActionEnum when it does something to the object, with the further intent that a model server is responsible for clearing the IfcChangeActionEnum back to NOCHANGE when it is ready to be republished. /// /// HISTORY: New enumeration in IFC R2.0. Modified in IFC2x4. -class IFC_SCHEMA_API IfcChangeActionEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcChangeActionEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcChangeAction_ADDED, IfcChangeAction_DELETED, IfcChangeAction_MODIFIED, IfcChangeAction_NOCHANGE, IfcChangeAction_NOTDEFINED} Value; static const char* ToString(Value v); @@ -5443,9 +5443,9 @@ public: /// NOTDEFINED: Undefined chiller type. /// /// HISTORY: New enumeration in IFC R2x. -class IFC_SCHEMA_API IfcChillerTypeEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcChillerTypeEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcChillerType_AIRCOOLED, IfcChillerType_HEATRECOVERY, IfcChillerType_WATERCOOLED, IfcChillerType_USERDEFINED, IfcChillerType_NOTDEFINED} Value; static const char* ToString(Value v); @@ -5466,9 +5466,9 @@ public: /// NOTE Currently there are no specific enumerators /// defined, the IfcChimneyTypeEnum has been added /// for future extensions. -class IFC_SCHEMA_API IfcChimneyTypeEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcChimneyTypeEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcChimneyType_USERDEFINED, IfcChimneyType_NOTDEFINED} Value; static const char* ToString(Value v); @@ -5501,9 +5501,9 @@ public: /// NOTDEFINED: Undefined coil type. /// /// HISTORY: New enumeration in IFC R2x. -class IFC_SCHEMA_API IfcCoilTypeEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcCoilTypeEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcCoilType_DXCOOLINGCOIL, IfcCoilType_ELECTRICHEATINGCOIL, IfcCoilType_GASHEATINGCOIL, IfcCoilType_HYDRONICCOIL, IfcCoilType_STEAMHEATINGCOIL, IfcCoilType_WATERCOOLINGCOIL, IfcCoilType_WATERHEATINGCOIL, IfcCoilType_USERDEFINED, IfcCoilType_NOTDEFINED} Value; static const char* ToString(Value v); @@ -5528,9 +5528,9 @@ public: /// future releases of IFC. /// HISTORY New Enumeration /// in Release IFC2x Edition 2. -class IFC_SCHEMA_API IfcColumnTypeEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcColumnTypeEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcColumnType_COLUMN, IfcColumnType_PIERSTEM, IfcColumnType_PIERSTEM_SEGMENT, IfcColumnType_PILASTER, IfcColumnType_STANDCOLUMN, IfcColumnType_USERDEFINED, IfcColumnType_NOTDEFINED} Value; static const char* ToString(Value v); @@ -5557,9 +5557,9 @@ public: /// REPEATER: A repeater is an electronic device that receives a signal and retransmits it at a higher level and/or higher power, or onto the other side of an obstruction, so that the signal can cover longer distances without degradation. /// ROUTER: A router is a networking device whose software and hardware are usually tailored to the tasks of routing and forwarding information. For example, on the Internet, information is directed to various paths by routers. /// SCANNER: A machine that has the primary function of scanning the content of printed matter and converting it to digital format that can be stored in a computer. -class IFC_SCHEMA_API IfcCommunicationsApplianceTypeEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcCommunicationsApplianceTypeEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcCommunicationsApplianceType_ANTENNA, IfcCommunicationsApplianceType_AUTOMATON, IfcCommunicationsApplianceType_COMPUTER, IfcCommunicationsApplianceType_FAX, IfcCommunicationsApplianceType_GATEWAY, IfcCommunicationsApplianceType_INTELLIGENTPERIPHERAL, IfcCommunicationsApplianceType_IPNETWORKEQUIPMENT, IfcCommunicationsApplianceType_LINESIDEELECTRONICUNIT, IfcCommunicationsApplianceType_MODEM, IfcCommunicationsApplianceType_NETWORKAPPLIANCE, IfcCommunicationsApplianceType_NETWORKBRIDGE, IfcCommunicationsApplianceType_NETWORKHUB, IfcCommunicationsApplianceType_OPTICALLINETERMINAL, IfcCommunicationsApplianceType_OPTICALNETWORKUNIT, IfcCommunicationsApplianceType_PRINTER, IfcCommunicationsApplianceType_RADIOBLOCKCENTER, IfcCommunicationsApplianceType_REPEATER, IfcCommunicationsApplianceType_ROUTER, IfcCommunicationsApplianceType_SCANNER, IfcCommunicationsApplianceType_TELECOMMAND, IfcCommunicationsApplianceType_TELEPHONYEXCHANGE, IfcCommunicationsApplianceType_TRANSITIONCOMPONENT, IfcCommunicationsApplianceType_TRANSPONDER, IfcCommunicationsApplianceType_TRANSPORTEQUIPMENT, IfcCommunicationsApplianceType_USERDEFINED, IfcCommunicationsApplianceType_NOTDEFINED} Value; static const char* ToString(Value v); @@ -5578,9 +5578,9 @@ public: /// /// P_COMPLEX: the properties defined by this IfcComplexPropertyTemplate are of type IfcComplexProperty. /// Q_COMPLEX: the properties defined by this IfcComplexPropertyTemplate are of type IfcPhysicalComplexQuantity. -class IFC_SCHEMA_API IfcComplexPropertyTemplateTypeEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcComplexPropertyTemplateTypeEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcComplexPropertyTemplateType_P_COMPLEX, IfcComplexPropertyTemplateType_Q_COMPLEX} Value; static const char* ToString(Value v); @@ -5613,9 +5613,9 @@ public: /// NOTDEFINED: Undefined compressor type. /// /// HISTORY: New enumeration in IFC R2x. -class IFC_SCHEMA_API IfcCompressorTypeEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcCompressorTypeEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcCompressorType_BOOSTER, IfcCompressorType_DYNAMIC, IfcCompressorType_HERMETIC, IfcCompressorType_OPENTYPE, IfcCompressorType_RECIPROCATING, IfcCompressorType_ROLLINGPISTON, IfcCompressorType_ROTARY, IfcCompressorType_ROTARYVANE, IfcCompressorType_SCROLL, IfcCompressorType_SEMIHERMETIC, IfcCompressorType_SINGLESCREW, IfcCompressorType_SINGLESTAGE, IfcCompressorType_TROCHOIDAL, IfcCompressorType_TWINSCREW, IfcCompressorType_WELDEDSHELLHERMETIC, IfcCompressorType_USERDEFINED, IfcCompressorType_NOTDEFINED} Value; static const char* ToString(Value v); @@ -5639,9 +5639,9 @@ public: /// NOTDEFINED: Undefined condenser type. /// /// HISTORY: New enumeration in IFC 2x2. WATERCOOLED added in IFC 2x4. -class IFC_SCHEMA_API IfcCondenserTypeEnum : public express::DeclaredType { +class IFC_SCHEMA_API IfcCondenserTypeEnum : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; typedef enum {IfcCondenserType_AIRCOOLED, IfcCondenserType_EVAPORATIVECOOLED, IfcCondenserType_WATERCOOLED, IfcCondenserType_WATERCOOLEDBRAZEDPLATE, IfcCondenserType_WATERCOOLEDSHELLCOIL, IfcCondenserType_WATERCOOLEDSHELLTUBE, IfcCondenserType_WATERCOOLEDTUBEINTUBE, IfcCondenserType_USERDEFINED, IfcCondenserType_NOTDEFINED} Value; static const char* ToString(Value v); @@ -5672,9 +5672,9 @@ public: /// RelatedConnectionType: AtStart /// /// Figure 65 — Connection types /*[3:3]*/ v); operator std::vector< int64_t > /*[3:3]*/() const; }; -class IFC_SCHEMA_API IfcAreaDensityMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcAreaDensityMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcAreaDensityMeasure initialize(double v); @@ -11613,18 +11613,18 @@ public: /// NOTE Corresponding ISO 10303 name: area_measure, please refer to ISO/IS 10303-41 for the final definition of the formal standard. /// /// HISTORY New type in IFC Release 1.5.1. -class IFC_SCHEMA_API IfcAreaMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcAreaMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcAreaMeasure initialize(double v); operator double() const; }; -class IFC_SCHEMA_API IfcBinary : public express::DeclaredType { +class IFC_SCHEMA_API IfcBinary : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcBinary initialize(boost::dynamic_bitset<> v); @@ -11635,9 +11635,9 @@ public: /// Type: BOOLEAN /// /// HISTORY New type in IFC Release 1.5.1. -class IFC_SCHEMA_API IfcBoolean : public express::DeclaredType { +class IFC_SCHEMA_API IfcBoolean : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcBoolean initialize(bool v); @@ -11686,9 +11686,9 @@ public: /// Figure 284 illustrates an example extrusion shape with arbitrary profile (IfcArbitraryClosedProfileDef), aligned "mid-depth right" on the member axis. The line of sight follows the extrusion direction Z which points into the drawing plane of above illustration. Hence, "left" is in the positive X direction of the IfcProfileDef. "Top" is in the positive Y direction of the IfcProfileDef. /// /// Figure 284 — Cardinal point extrusion -class IFC_SCHEMA_API IfcCardinalPointReference : public express::DeclaredType { +class IFC_SCHEMA_API IfcCardinalPointReference : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcCardinalPointReference initialize(int64_t v); @@ -11705,9 +11705,9 @@ public: /// Type: ARRAY [1:2] OF REAL /// /// HISTORY New type in IFC Release 2x2. -class IFC_SCHEMA_API IfcComplexNumber : public express::DeclaredType { +class IFC_SCHEMA_API IfcComplexNumber : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcComplexNumber initialize(std::vector< double > /*[1:2]*/ v); @@ -11761,9 +11761,9 @@ public: ///      + FORMAT(ABS(c[4]), '##');  -- -50° 58' 33" 110400 /// /// Another often encountered display format of latitudes and longitudes is to omit the signs and print N, S, E, W indicators instead, for example, 50°58'33"S. When stored as IfcCompoundPlaneAngleMeasure however, a compound plane angle measure is always signed, with same sign of all components. -class IFC_SCHEMA_API IfcCompoundPlaneAngleMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcCompoundPlaneAngleMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcCompoundPlaneAngleMeasure initialize(std::vector< int64_t > /*[3:4]*/ v); @@ -11775,9 +11775,9 @@ public: /// NOTE Corresponding ISO 10303 name: context_dependent_measure, please refer to ISO/IS 10303-41 for the final definition of the formal standard. /// /// HISTORY New type in IFC Release 1.5.1. -class IFC_SCHEMA_API IfcContextDependentMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcContextDependentMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcContextDependentMeasure initialize(double v); @@ -11789,9 +11789,9 @@ public: /// NOTE Corresponding ISO 10303 name: count_measure, please refer to ISO/IS 10303-41 for the final definition of the formal standard. /// /// HISTORY New type in IFC Release 1.5.1. -class IFC_SCHEMA_API IfcCountMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcCountMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcCountMeasure initialize(int64_t v); @@ -11804,9 +11804,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC2x2. -class IFC_SCHEMA_API IfcCurvatureMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcCurvatureMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcCurvatureMeasure initialize(double v); @@ -11818,9 +11818,9 @@ public: /// /// Use definitions /// All given values should be provided in context and converted into a Gregorian date context and be shall be processable by a receiving application. -class IFC_SCHEMA_API IfcDate : public express::DeclaredType { +class IFC_SCHEMA_API IfcDate : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcDate initialize(std::string v); @@ -11844,9 +11844,9 @@ public: /// otherwise they are forbidden. The year 0000 is prohibited. /// /// HISTORY: New type in IFC2x4 -class IFC_SCHEMA_API IfcDateTime : public express::DeclaredType { +class IFC_SCHEMA_API IfcDateTime : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcDateTime initialize(std::string v); @@ -11864,9 +11864,9 @@ public: /// Release 1.5.1. /// IFC2x4 CHANGE Where rule /// ValidRange added. -class IFC_SCHEMA_API IfcDayInMonthNumber : public express::DeclaredType { +class IFC_SCHEMA_API IfcDayInMonthNumber : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcDayInMonthNumber initialize(int64_t v); @@ -11906,9 +11906,9 @@ public: /// Type: INTEGER /// HISTORY New type in /// IFC2x4. -class IFC_SCHEMA_API IfcDayInWeekNumber : public express::DeclaredType { +class IFC_SCHEMA_API IfcDayInWeekNumber : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcDayInWeekNumber initialize(int64_t v); @@ -11920,9 +11920,9 @@ public: /// NOTE Corresponding ISO 10303 name:descriptive_measure, please refer to ISO/IS 10303-41 for the final definition of the formal standard. /// /// HISTORY New type in IFC Release 1.5.1. -class IFC_SCHEMA_API IfcDescriptiveMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcDescriptiveMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcDescriptiveMeasure initialize(std::string v); @@ -11935,9 +11935,9 @@ public: /// NOTE Corresponding ISO 10303 type: dimension_count, please refer to ISO/IS 10303-42:1994, p. 14 for the final definition of the formal standard. /// /// HISTORY New Type in IFC Release 1.5 -class IFC_SCHEMA_API IfcDimensionCount : public express::DeclaredType { +class IFC_SCHEMA_API IfcDimensionCount : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcDimensionCount initialize(int64_t v); @@ -11948,9 +11948,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2x. -class IFC_SCHEMA_API IfcDoseEquivalentMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcDoseEquivalentMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcDoseEquivalentMeasure initialize(double v); @@ -11961,9 +11961,9 @@ public: /// EXAMPLE: P0002-10-15T10:30:20 (duration of two years, 10 months, 15 days, 10 hours, 30 minutes and 20 seconds). /// /// HISTORY: New type in IFC2x4 -class IFC_SCHEMA_API IfcDuration : public express::DeclaredType { +class IFC_SCHEMA_API IfcDuration : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcDuration initialize(std::string v); @@ -11975,9 +11975,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2.0. -class IFC_SCHEMA_API IfcDynamicViscosityMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcDynamicViscosityMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcDynamicViscosityMeasure initialize(double v); @@ -11988,9 +11988,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2x. -class IFC_SCHEMA_API IfcElectricCapacitanceMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcElectricCapacitanceMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcElectricCapacitanceMeasure initialize(double v); @@ -12001,9 +12001,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2x. -class IFC_SCHEMA_API IfcElectricChargeMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcElectricChargeMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcElectricChargeMeasure initialize(double v); @@ -12014,9 +12014,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2x. -class IFC_SCHEMA_API IfcElectricConductanceMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcElectricConductanceMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcElectricConductanceMeasure initialize(double v); @@ -12029,9 +12029,9 @@ public: /// NOTE Corresponding ISO 10303 name: electric_current_measure, please refer to ISO/IS 10303-41 for the final definition of the formal standard. /// /// HISTORY New type in IFC Release 1.5.1. -class IFC_SCHEMA_API IfcElectricCurrentMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcElectricCurrentMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcElectricCurrentMeasure initialize(double v); @@ -12042,9 +12042,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2x. -class IFC_SCHEMA_API IfcElectricResistanceMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcElectricResistanceMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcElectricResistanceMeasure initialize(double v); @@ -12055,9 +12055,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2.0. -class IFC_SCHEMA_API IfcElectricVoltageMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcElectricVoltageMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcElectricVoltageMeasure initialize(double v); @@ -12068,9 +12068,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2.0. -class IFC_SCHEMA_API IfcEnergyMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcEnergyMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcEnergyMeasure initialize(double v); @@ -12090,9 +12090,9 @@ public: /// NOTE  Corresponding CSS1 definitions is font-style. /// /// HISTORY  New type in IFC2x3. -class IFC_SCHEMA_API IfcFontStyle : public express::DeclaredType { +class IFC_SCHEMA_API IfcFontStyle : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcFontStyle initialize(std::string v); @@ -12110,9 +12110,9 @@ public: /// NOTE  Corresponding CSS1 definitions is font-variant. /// /// HISTORY  New type in IFC2x3. -class IFC_SCHEMA_API IfcFontVariant : public express::DeclaredType { +class IFC_SCHEMA_API IfcFontVariant : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcFontVariant initialize(std::string v); @@ -12141,9 +12141,9 @@ public: /// NOTE  Corresponding CSS1 definitions is font-weight. /// /// HISTORY  New type in IFC2x2 Addendum 2. -class IFC_SCHEMA_API IfcFontWeight : public express::DeclaredType { +class IFC_SCHEMA_API IfcFontWeight : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcFontWeight initialize(std::string v); @@ -12154,9 +12154,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2x. -class IFC_SCHEMA_API IfcForceMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcForceMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcForceMeasure initialize(double v); @@ -12167,9 +12167,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2.0. -class IFC_SCHEMA_API IfcFrequencyMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcFrequencyMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcFrequencyMeasure initialize(double v); @@ -12188,9 +12188,9 @@ public: /// Refer to the BuildingSMART website (www.buildingsmart-tech.org) for more information and sample encoding algorithms. /// /// HISTORY  New type in IFC R1.5.1. -class IFC_SCHEMA_API IfcGloballyUniqueId : public express::DeclaredType { +class IFC_SCHEMA_API IfcGloballyUniqueId : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcGloballyUniqueId initialize(std::string v); @@ -12201,9 +12201,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2.0. -class IFC_SCHEMA_API IfcHeatFluxDensityMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcHeatFluxDensityMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcHeatFluxDensityMeasure initialize(double v); @@ -12212,9 +12212,9 @@ public: /// IfcHeatingValueMeasure defines the amount of energy released (usually in MJ/kg) when a fuel is burned. /// /// HISTORY: This is new type in IFC2x2. -class IFC_SCHEMA_API IfcHeatingValueMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcHeatingValueMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcHeatingValueMeasure initialize(double v); @@ -12234,9 +12234,9 @@ public: /// Per ISO 10303-11, the set of characters that may appear in STRINGs is defined in ISO 10646. The encoding of characters in case of file-based exchange is defined in ISO 10303-21 (STEP physical files) and ISO 10303-28 (XML files). Among else, these specifications define the encoding of 8-bit characters from ISO 8859-1...-16 and of 2-byte Unicode characters. /// /// Note that while IfcIdentifier is restricted to 255 characters, the size in exchange files after encoding may be considerably larger than 255 octets, depending on the particular encoding and on the contents of the identifier. -class IFC_SCHEMA_API IfcIdentifier : public express::DeclaredType { +class IFC_SCHEMA_API IfcIdentifier : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcIdentifier initialize(std::string v); @@ -12247,9 +12247,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2x. -class IFC_SCHEMA_API IfcIlluminanceMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcIlluminanceMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcIlluminanceMeasure initialize(double v); @@ -12260,9 +12260,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2x. -class IFC_SCHEMA_API IfcInductanceMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcInductanceMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcInductanceMeasure initialize(double v); @@ -12275,9 +12275,9 @@ public: /// Type: INTEGER /// /// HISTORY New type in IFC Release 1.5.1. -class IFC_SCHEMA_API IfcInteger : public express::DeclaredType { +class IFC_SCHEMA_API IfcInteger : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcInteger initialize(int64_t v); @@ -12290,9 +12290,9 @@ public: /// Type: INTEGER /// /// HISTORY New type in IFC Release 2.0. -class IFC_SCHEMA_API IfcIntegerCountRateMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcIntegerCountRateMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcIntegerCountRateMeasure initialize(int64_t v); @@ -12301,9 +12301,9 @@ public: /// IfcIonConcentrationMeasure is a measure of particular ion concentration in a liquid, given in mg/L. /// /// HISTORY: New type in IFC2x2. -class IFC_SCHEMA_API IfcIonConcentrationMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcIonConcentrationMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcIonConcentrationMeasure initialize(double v); @@ -12314,9 +12314,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2x. -class IFC_SCHEMA_API IfcIsothermalMoistureCapacityMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcIsothermalMoistureCapacityMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcIsothermalMoistureCapacityMeasure initialize(double v); @@ -12327,9 +12327,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2.0. -class IFC_SCHEMA_API IfcKinematicViscosityMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcKinematicViscosityMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcKinematicViscosityMeasure initialize(double v); @@ -12349,9 +12349,9 @@ public: /// Per ISO 10303-11, the set of characters that may appear in STRINGs is defined in ISO 10646. The encoding of characters in case of file-based exchange is defined in ISO 10303-21 (STEP physical files) and ISO 10303-28 (XML files). Among else, these specifications define the encoding of 8-bit characters from ISO 8859-1...-16 and of 2-byte Unicode characters. /// /// Note that while IfcLabel is restricted to 255 characters, the size in exchange files after encoding may be considerably larger than 255 octets, depending on the particular encoding and on the contents of the label. -class IFC_SCHEMA_API IfcLabel : public express::DeclaredType { +class IFC_SCHEMA_API IfcLabel : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcLabel initialize(std::string v); @@ -12382,18 +12382,18 @@ public: /// NOTE Corresponding ISO 10303 name: length_measure, please refer to ISO/IS 10303-41 for the final definition of the formal standard. /// /// HISTORY New type in IFC Release 1.5.1. -class IFC_SCHEMA_API IfcLengthMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcLengthMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcLengthMeasure initialize(double v); operator double() const; }; -class IFC_SCHEMA_API IfcLineIndex : public express::DeclaredType { +class IFC_SCHEMA_API IfcLineIndex : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcLineIndex initialize(std::vector< int64_t > /*[2:?]*/ v); @@ -12404,9 +12404,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2x. -class IFC_SCHEMA_API IfcLinearForceMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcLinearForceMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcLinearForceMeasure initialize(double v); @@ -12417,9 +12417,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2x. -class IFC_SCHEMA_API IfcLinearMomentMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcLinearMomentMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcLinearMomentMeasure initialize(double v); @@ -12430,9 +12430,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2x. -class IFC_SCHEMA_API IfcLinearStiffnessMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcLinearStiffnessMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcLinearStiffnessMeasure initialize(double v); @@ -12443,9 +12443,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2.0. -class IFC_SCHEMA_API IfcLinearVelocityMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcLinearVelocityMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcLinearVelocityMeasure initialize(double v); @@ -12456,9 +12456,9 @@ public: /// Type: LOGICAL /// /// HISTORY New type in IFC Release 2x. -class IFC_SCHEMA_API IfcLogical : public express::DeclaredType { +class IFC_SCHEMA_API IfcLogical : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcLogical initialize(boost::logic::tribool v); @@ -12469,9 +12469,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2x. -class IFC_SCHEMA_API IfcLuminousFluxMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcLuminousFluxMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcLuminousFluxMeasure initialize(double v); @@ -12484,9 +12484,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC2x2. -class IFC_SCHEMA_API IfcLuminousIntensityDistributionMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcLuminousIntensityDistributionMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcLuminousIntensityDistributionMeasure initialize(double v); @@ -12499,9 +12499,9 @@ public: /// NOTE Corresponding ISO 10303 name: luminous_intensity_measure, please refer to ISO/IS 10303-41 for the final definition of the formal standard. /// /// HISTORY New type in IFC Release 1.5.1. -class IFC_SCHEMA_API IfcLuminousIntensityMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcLuminousIntensityMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcLuminousIntensityMeasure initialize(double v); @@ -12512,9 +12512,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2x. -class IFC_SCHEMA_API IfcMagneticFluxDensityMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcMagneticFluxDensityMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcMagneticFluxDensityMeasure initialize(double v); @@ -12525,9 +12525,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2x. -class IFC_SCHEMA_API IfcMagneticFluxMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcMagneticFluxMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcMagneticFluxMeasure initialize(double v); @@ -12538,9 +12538,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2.0. -class IFC_SCHEMA_API IfcMassDensityMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcMassDensityMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcMassDensityMeasure initialize(double v); @@ -12551,9 +12551,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2.0. -class IFC_SCHEMA_API IfcMassFlowRateMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcMassFlowRateMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcMassFlowRateMeasure initialize(double v); @@ -12566,9 +12566,9 @@ public: /// NOTE Corresponding ISO 10303 name: mass_measure, please refer to ISO/IS 10303-41 for the final definition of the formal standard. /// /// HISTORY New type in IFC Release 1.5.1. -class IFC_SCHEMA_API IfcMassMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcMassMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcMassMeasure initialize(double v); @@ -12581,9 +12581,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC2x2. -class IFC_SCHEMA_API IfcMassPerLengthMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcMassPerLengthMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcMassPerLengthMeasure initialize(double v); @@ -12594,9 +12594,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2x. -class IFC_SCHEMA_API IfcModulusOfElasticityMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcModulusOfElasticityMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcModulusOfElasticityMeasure initialize(double v); @@ -12607,9 +12607,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2x2. -class IFC_SCHEMA_API IfcModulusOfLinearSubgradeReactionMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcModulusOfLinearSubgradeReactionMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcModulusOfLinearSubgradeReactionMeasure initialize(double v); @@ -12620,9 +12620,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC2x2. -class IFC_SCHEMA_API IfcModulusOfRotationalSubgradeReactionMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcModulusOfRotationalSubgradeReactionMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcModulusOfRotationalSubgradeReactionMeasure initialize(double v); @@ -12637,9 +12637,9 @@ public: /// Figure 290 illustrates elastic support of a planar member. /// /// Figure 290 — Modulus of subgrade reaction measure -class IFC_SCHEMA_API IfcModulusOfSubgradeReactionMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcModulusOfSubgradeReactionMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcModulusOfSubgradeReactionMeasure initialize(double v); @@ -12650,9 +12650,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2x. -class IFC_SCHEMA_API IfcMoistureDiffusivityMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcMoistureDiffusivityMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcMoistureDiffusivityMeasure initialize(double v); @@ -12663,9 +12663,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2x. -class IFC_SCHEMA_API IfcMolecularWeightMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcMolecularWeightMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcMolecularWeightMeasure initialize(double v); @@ -12676,9 +12676,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2x. -class IFC_SCHEMA_API IfcMomentOfInertiaMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcMomentOfInertiaMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcMomentOfInertiaMeasure initialize(double v); @@ -12688,9 +12688,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2.0. -class IFC_SCHEMA_API IfcMonetaryMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcMonetaryMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcMonetaryMeasure initialize(double v); @@ -12752,9 +12752,9 @@ public: /// standard. /// HISTORY New type in IFC /// Release 1.5.1. -class IFC_SCHEMA_API IfcMonthInYearNumber : public express::DeclaredType { +class IFC_SCHEMA_API IfcMonthInYearNumber : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcMonthInYearNumber initialize(int64_t v); @@ -12779,9 +12779,9 @@ public: /// NOTE Corresponding ISO 10303 name: numeric_measure, please refer to ISO/IS 10303-41 for the final definition of the formal standard. /// /// HISTORY New type in IFC Release 1.5.1. -class IFC_SCHEMA_API IfcNumericMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcNumericMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcNumericMeasure initialize(double v); @@ -12790,9 +12790,9 @@ public: /// IfcPHMeasure is a measure of the molar hydrogen ion concentration in a liquid (usually defined as the measure of acidity) in a range from 0 to 14. /// /// HISTORY: New type in IFC 2x2. -class IFC_SCHEMA_API IfcPHMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcPHMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcPHMeasure initialize(double v); @@ -12805,9 +12805,9 @@ public: /// NOTE Corresponding STEP name: parameter_value, please refer to ISO/IS 10303-41 for the final definition of the formal standard. /// /// HISTORY New type in IFC Release 1.5.1. -class IFC_SCHEMA_API IfcParameterValue : public express::DeclaredType { +class IFC_SCHEMA_API IfcParameterValue : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcParameterValue initialize(double v); @@ -12818,9 +12818,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2x. -class IFC_SCHEMA_API IfcPlanarForceMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcPlanarForceMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcPlanarForceMeasure initialize(double v); @@ -12837,9 +12837,9 @@ public: /// NOTE Corresponding ISO 10303 name: plane_angle_measure, please refer to ISO/IS 10303-41 for the final definition of the formal standard. /// /// HISTORY New type in IFC Release 1.5.1. -class IFC_SCHEMA_API IfcPlaneAngleMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcPlaneAngleMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcPlaneAngleMeasure initialize(double v); @@ -12887,9 +12887,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2.0. -class IFC_SCHEMA_API IfcPowerMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcPowerMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcPowerMeasure initialize(double v); @@ -12904,9 +12904,9 @@ public: /// NOTE  Corresponding ISO 10303 name: presentable_text. Please refer to ISO/IS 10303-46:1994, p. 133 for the final definition of the formal standard. /// /// HISTORY  New type in IFC2x2. -class IFC_SCHEMA_API IfcPresentableText : public express::DeclaredType { +class IFC_SCHEMA_API IfcPresentableText : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcPresentableText initialize(std::string v); @@ -12917,18 +12917,18 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2.0. -class IFC_SCHEMA_API IfcPressureMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcPressureMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcPressureMeasure initialize(double v); operator double() const; }; -class IFC_SCHEMA_API IfcPropertySetDefinitionSet : public express::DeclaredType { +class IFC_SCHEMA_API IfcPropertySetDefinitionSet : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcPropertySetDefinitionSet initialize(std::vector< ::Ifc4x3_tc1::IfcPropertySetDefinition > v); @@ -12939,9 +12939,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2x. -class IFC_SCHEMA_API IfcRadioActivityMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcRadioActivityMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcRadioActivityMeasure initialize(double v); @@ -12957,9 +12957,9 @@ public: /// NOTE Corresponding STEP name: ratio_measure, please refer to ISO/IS 10303-41 for the final definition of the formal standard. /// /// HISTORY New type in IFC Release 1.5.1. -class IFC_SCHEMA_API IfcRatioMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcRatioMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcRatioMeasure initialize(double v); @@ -12972,9 +12972,9 @@ public: /// Type: REAL /// /// HISTORY: New type in IFC Release 1.5.1. -class IFC_SCHEMA_API IfcReal : public express::DeclaredType { +class IFC_SCHEMA_API IfcReal : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcReal initialize(double v); @@ -12985,9 +12985,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2x. -class IFC_SCHEMA_API IfcRotationalFrequencyMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcRotationalFrequencyMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcRotationalFrequencyMeasure initialize(double v); @@ -12999,9 +12999,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC2x2. -class IFC_SCHEMA_API IfcRotationalMassMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcRotationalMassMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcRotationalMassMeasure initialize(double v); @@ -13012,9 +13012,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2x. -class IFC_SCHEMA_API IfcRotationalStiffnessMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcRotationalStiffnessMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcRotationalStiffnessMeasure initialize(double v); @@ -13025,9 +13025,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2x2. -class IFC_SCHEMA_API IfcSectionModulusMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcSectionModulusMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcSectionModulusMeasure initialize(double v); @@ -13038,9 +13038,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC2x2. -class IFC_SCHEMA_API IfcSectionalAreaIntegralMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcSectionalAreaIntegralMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcSectionalAreaIntegralMeasure initialize(double v); @@ -13051,9 +13051,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2x. -class IFC_SCHEMA_API IfcShearModulusMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcShearModulusMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcShearModulusMeasure initialize(double v); @@ -13066,18 +13066,18 @@ public: /// NOTE Corresponding ISO 10303 name: solid_angle_measure, please refer to ISO/IS 10303-41 for the final definition of the formal standard. /// /// HISTORY New type in IFC Release 1.5.1. -class IFC_SCHEMA_API IfcSolidAngleMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcSolidAngleMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcSolidAngleMeasure initialize(double v); operator double() const; }; -class IFC_SCHEMA_API IfcSoundPowerLevelMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcSoundPowerLevelMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcSoundPowerLevelMeasure initialize(double v); @@ -13088,18 +13088,18 @@ public: /// Type: REAL /// /// HISTORY New type in IFC2x2. -class IFC_SCHEMA_API IfcSoundPowerMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcSoundPowerMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcSoundPowerMeasure initialize(double v); operator double() const; }; -class IFC_SCHEMA_API IfcSoundPressureLevelMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcSoundPressureLevelMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcSoundPressureLevelMeasure initialize(double v); @@ -13110,9 +13110,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC2x2. -class IFC_SCHEMA_API IfcSoundPressureMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcSoundPressureMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcSoundPressureMeasure initialize(double v); @@ -13123,9 +13123,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2x. -class IFC_SCHEMA_API IfcSpecificHeatCapacityMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcSpecificHeatCapacityMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcSpecificHeatCapacityMeasure initialize(double v); @@ -13138,9 +13138,9 @@ public: /// NOTE: The datatype relates to the definition of specular_exponent in ISO 10303-46 entity surface_style_reflectance_ambient_diffuse_specular. /// /// HISTORY: New type in IFC2x2. -class IFC_SCHEMA_API IfcSpecularExponent : public express::DeclaredType { +class IFC_SCHEMA_API IfcSpecularExponent : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcSpecularExponent initialize(double v); @@ -13155,18 +13155,18 @@ public: /// NOTE: The datatype relates to the definition of "shiness" in VRML97, which is the reciprocate value to the specular roughness. /// /// HISTORY: New type in Release IFC2x2. -class IFC_SCHEMA_API IfcSpecularRoughness : public express::DeclaredType { +class IFC_SCHEMA_API IfcSpecularRoughness : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcSpecularRoughness initialize(double v); operator double() const; }; -class IFC_SCHEMA_API IfcStrippedOptional : public express::DeclaredType { +class IFC_SCHEMA_API IfcStrippedOptional : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcStrippedOptional initialize(bool v); @@ -13177,9 +13177,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC2x2. -class IFC_SCHEMA_API IfcTemperatureGradientMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcTemperatureGradientMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcTemperatureGradientMeasure initialize(double v); @@ -13190,9 +13190,9 @@ public: /// Type: REAL /// /// HISTORY  New type in IFC2x4. -class IFC_SCHEMA_API IfcTemperatureRateOfChangeMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcTemperatureRateOfChangeMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcTemperatureRateOfChangeMeasure initialize(double v); @@ -13209,9 +13209,9 @@ public: /// Per ISO 10303-11, the set of characters that may appear in STRINGs is defined in ISO 10646. The encoding of characters in case of file-based exchange is defined in ISO 10303-21 (STEP physical files) and ISO 10303-28 (XML files). Among else, these specifications define the encoding of 8-bit characters from ISO 8859-1...-16 and of 2-byte Unicode characters. /// /// Note that while IfcText is not formally restricted in length, the size of a string in ISO 10303-21:2002 conforming exchange files must not exceed 32767 octets after encoding and escaping. -class IFC_SCHEMA_API IfcText : public express::DeclaredType { +class IFC_SCHEMA_API IfcText : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcText initialize(std::string v); @@ -13227,9 +13227,9 @@ public: /// NOTE  Corresponding CSS1 definition is text-align. /// /// HISTORY  New type in IFC2x3. -class IFC_SCHEMA_API IfcTextAlignment : public express::DeclaredType { +class IFC_SCHEMA_API IfcTextAlignment : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcTextAlignment initialize(std::string v); @@ -13248,9 +13248,9 @@ public: /// NOTE  Corresponding CSS1 definition is text-decoration. /// /// HISTORY  New type in IFC2x3. -class IFC_SCHEMA_API IfcTextDecoration : public express::DeclaredType { +class IFC_SCHEMA_API IfcTextDecoration : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcTextDecoration initialize(std::string v); @@ -13275,9 +13275,9 @@ public: /// HISTORY  New type in IFC2x2 Addendum 2. /// /// IFC2x2 Addendum 2 CHANGE: The IfcFontFamily has been added. -class IFC_SCHEMA_API IfcTextFontName : public express::DeclaredType { +class IFC_SCHEMA_API IfcTextFontName : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcTextFontName initialize(std::string v); @@ -13293,9 +13293,9 @@ public: /// NOTE  Corresponding CSS1 definition is text-transform. /// /// HISTORY  New type in IFC2x3. -class IFC_SCHEMA_API IfcTextTransformation : public express::DeclaredType { +class IFC_SCHEMA_API IfcTextTransformation : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcTextTransformation initialize(std::string v); @@ -13306,9 +13306,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2.0. -class IFC_SCHEMA_API IfcThermalAdmittanceMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcThermalAdmittanceMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcThermalAdmittanceMeasure initialize(double v); @@ -13319,9 +13319,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2x. -class IFC_SCHEMA_API IfcThermalConductivityMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcThermalConductivityMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcThermalConductivityMeasure initialize(double v); @@ -13331,9 +13331,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC2x2. -class IFC_SCHEMA_API IfcThermalExpansionCoefficientMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcThermalExpansionCoefficientMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcThermalExpansionCoefficientMeasure initialize(double v); @@ -13343,9 +13343,9 @@ public: /// Usually measured in m2 Kelvin/Watt. /// /// HISTORY New type in IFC Release 2.0. -class IFC_SCHEMA_API IfcThermalResistanceMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcThermalResistanceMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcThermalResistanceMeasure initialize(double v); @@ -13356,9 +13356,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2.0. -class IFC_SCHEMA_API IfcThermalTransmittanceMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcThermalTransmittanceMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcThermalTransmittanceMeasure initialize(double v); @@ -13371,9 +13371,9 @@ public: /// NOTE Corresponding ISO 10303 name: thermodynamic_temperature_measure, please refer to ISO/IS 10303-41 for the final definition of the formal standard. /// /// HISTORY New type in IFC Release 1.5.1. -class IFC_SCHEMA_API IfcThermodynamicTemperatureMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcThermodynamicTemperatureMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcThermodynamicTemperatureMeasure initialize(double v); @@ -13387,9 +13387,9 @@ public: /// 13:20:00-05:00. /// /// HISTORY: New type in IFC2x4 -class IFC_SCHEMA_API IfcTime : public express::DeclaredType { +class IFC_SCHEMA_API IfcTime : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcTime initialize(std::string v); @@ -13402,9 +13402,9 @@ public: /// NOTE Corresponding ISO 10303 name: time_measure, please refer to ISO/IS 10303-41 for the final definition of the formal standard. /// /// HISTORY New type in IFC Release 1.5.1. -class IFC_SCHEMA_API IfcTimeMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcTimeMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcTimeMeasure initialize(double v); @@ -13414,9 +13414,9 @@ public: /// Type: INTEGER /// /// HISTORY New type in IFC Release 1.5.1. -class IFC_SCHEMA_API IfcTimeStamp : public express::DeclaredType { +class IFC_SCHEMA_API IfcTimeStamp : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcTimeStamp initialize(int64_t v); @@ -13427,9 +13427,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2x. -class IFC_SCHEMA_API IfcTorqueMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcTorqueMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcTorqueMeasure initialize(double v); @@ -13442,9 +13442,9 @@ public: /// designed to make it easy to map other namespaces (that share the properties of URNs) into URN-space. /// /// HISTORY New defined datatype in IFC 2x4. -class IFC_SCHEMA_API IfcURIReference : public express::DeclaredType { +class IFC_SCHEMA_API IfcURIReference : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcURIReference initialize(std::string v); @@ -13455,9 +13455,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2x. -class IFC_SCHEMA_API IfcVaporPermeabilityMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcVaporPermeabilityMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcVaporPermeabilityMeasure initialize(double v); @@ -13470,9 +13470,9 @@ public: /// NOTE Corresponding ISO 10303 name: volume_measure, please refer to ISO/IS 10303-41 for the final definition of the formal standard. /// /// HISTORY New type in IFC Release 1.5.1. -class IFC_SCHEMA_API IfcVolumeMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcVolumeMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcVolumeMeasure initialize(double v); @@ -13483,9 +13483,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC Release 2.0. -class IFC_SCHEMA_API IfcVolumetricFlowRateMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcVolumetricFlowRateMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcVolumetricFlowRateMeasure initialize(double v); @@ -13496,9 +13496,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC2x2. -class IFC_SCHEMA_API IfcWarpingConstantMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcWarpingConstantMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcWarpingConstantMeasure initialize(double v); @@ -13509,9 +13509,9 @@ public: /// Type: REAL /// /// HISTORY New type in IFC2x2. -class IFC_SCHEMA_API IfcWarpingMomentMeasure : public express::DeclaredType { +class IFC_SCHEMA_API IfcWarpingMomentMeasure : public express::declared_type { public: - using express::DeclaredType::DeclaredType; + using express::declared_type::declared_type; static const ifcopenshell::type_declaration& Class(); IfcWarpingMomentMeasure initialize(double v); @@ -13589,9 +13589,9 @@ public: /// Corresponds to the following entity in ISO-10303-41: organization_role and person_role. /// /// HISTORY New entity in IFC Release 1.5.1 -class IFC_SCHEMA_API IfcActorRole : public express::Entity { +class IFC_SCHEMA_API IfcActorRole : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// The name of the role played by an actor. If the Role has value USERDEFINED, then /// the user defined role shall be provided as a value of the attribute UserDefinedRole. @@ -13616,9 +13616,9 @@ public: /// NOTE Corresponds to the following entity in ISO-10303-41: address. /// /// HISTORY New entity in IFC Release 1.5.1. -class IFC_SCHEMA_API IfcAddress : public express::Entity { +class IFC_SCHEMA_API IfcAddress : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// Identifies the logical location of the address. std::optional< ::Ifc4x3_tc1::IfcAddressTypeEnum::Value > Purpose() const; @@ -13639,9 +13639,9 @@ public: IfcAddress initialize(std::optional< ::Ifc4x3_tc1::IfcAddressTypeEnum::Value > v1_Purpose, std::optional< std::string > v2_Description, std::optional< std::string > v3_UserDefinedPurpose); }; -class IFC_SCHEMA_API IfcAlignmentParameterSegment : public express::Entity { +class IFC_SCHEMA_API IfcAlignmentParameterSegment : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; std::optional< std::string > StartTag() const; void setStartTag(const std::optional< std::string >& v); @@ -13677,9 +13677,9 @@ public: /// IfcApplication holds the information about an IFC compliant application developed by an application developer. The IfcApplication utilizes a short identifying name as provided by the application developer. /// /// HISTORY  New entity in IFC R1.5. -class IFC_SCHEMA_API IfcApplication : public express::Entity { +class IFC_SCHEMA_API IfcApplication : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// Name of the application developer, being requested to be member of the IAI. ::Ifc4x3_tc1::IfcOrganization ApplicationDeveloper() const; @@ -13711,9 +13711,9 @@ public: /// An instance of IfcAppliedValue may have a unit basis asserted. This is defined as an IfcMeasureWithUnit that determines the extent of the unit value for application purposes. It is assumed that when this attribute is asserted, then the value given to IfcAppliedValue is that for unit quantity. This is not enforced within the IFC schema and thus needs to be controlled within an application. /// /// Applied values may be referenced from a document (such as a price list). The relationship between one or more occurrences of IfcAppliedValue (or its subtypes) is achieved through the use of the IfcExternalReferenceRelationship in which the document provides the IfcExternalReferenceRelationship.RelatingExtReference and the value occurrences are the IfcExternalReferenceRelationship.RelatedResourceObjects. -class IFC_SCHEMA_API IfcAppliedValue : public express::Entity { +class IFC_SCHEMA_API IfcAppliedValue : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// A name or additional clarification given to a cost value. std::optional< std::string > Name() const; @@ -13759,9 +13759,9 @@ public: /// HISTORY New Entity in IFC Release 2.0 /// /// IFC2x Edition 4 CHANGE  Attributes Identifier and Name made optional, where rule added to require at least one of them being asserted. Inverse attributes ApprovedObjects, ApprovedResources and HasExternalReferences added. Inverse attribute Properties deleted (more general relationship via inverse ApprovedResources to be used instead). -class IFC_SCHEMA_API IfcApproval : public express::Entity { +class IFC_SCHEMA_API IfcApproval : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// A computer interpretable identifier by which the approval is known. std::optional< std::string > Identifier() const; @@ -13820,9 +13820,9 @@ public: /// HISTORY: New entity /// in Release IFC2x Edition /// 2. -class IFC_SCHEMA_API IfcBoundaryCondition : public express::Entity { +class IFC_SCHEMA_API IfcBoundaryCondition : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// Optionally defines a name for this boundary condition. std::optional< std::string > Name() const; @@ -13964,9 +13964,9 @@ public: /// HISTORY  New entity in IFC Release 1.5. /// /// IFC2x Edition 3 CHANGE  The definition of the subtypes has been enhanced by allowing either geometric representation items (point | curve | surface) or topological representation items with associated geometry (vertex point | edge curve | face  surface). -class IFC_SCHEMA_API IfcConnectionGeometry : public express::Entity { +class IFC_SCHEMA_API IfcConnectionGeometry : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; static const ifcopenshell::entity& Class(); @@ -14056,9 +14056,9 @@ public: /// A constraint must have a name applied through the IfcConstraint.Name attribute and optionally, a description through IfcConstraint.Description. The grade of the constraint (hard, soft, advisory) must be specified through IfcConstraint.ConstraintGrade or IfcConstraint.UserDefinedGrade whilst the source, creating actor and time at which the constraint is created may be optionally asserted through IfcConstraint.ConstraintSource, IfcConstraint.CreatingActor and IfcConstraint.CreationTime. /// /// A constraint may also have additional external information (such as classification or document information) associated to it by IfcExternalReferenceRelationship, accessible through inverse attribute IfcConstraint.HasExternalReferences -class IFC_SCHEMA_API IfcConstraint : public express::Entity { +class IFC_SCHEMA_API IfcConstraint : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// A name to be used for the constraint (e.g., ChillerCoefficientOfPerformance). std::string Name() const; @@ -14136,9 +14136,9 @@ public: /// and any map or other coordinate reference system. /// /// HISTORY  New entity in IFC2x4. -class IFC_SCHEMA_API IfcCoordinateOperation : public express::Entity { +class IFC_SCHEMA_API IfcCoordinateOperation : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// Source coordinate reference system for the operation. ::Ifc4x3_tc1::IfcCoordinateReferenceSystemSelect SourceCRS() const; @@ -14172,9 +14172,9 @@ public: /// Specifications. /// /// HISTORY  New entity in IFC2x4. -class IFC_SCHEMA_API IfcCoordinateReferenceSystem : public express::Entity { +class IFC_SCHEMA_API IfcCoordinateReferenceSystem : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// Name by which the coordinate reference system is identified. /// Note  The name shall be taken from the list recognized by the European Petroleum Survey Group EPSG. @@ -14258,9 +14258,9 @@ public: /// NOTE: Corresponding ISO 10303 name: derived_unit, please refer to ISO/IS 10303-41 for the final definition of the formal standard. /// /// HISTORY: New entity in IFC Release 1.5.1. -class IFC_SCHEMA_API IfcDerivedUnit : public express::Entity { +class IFC_SCHEMA_API IfcDerivedUnit : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// The group of units and their exponents that define the derived unit. std::vector< ::Ifc4x3_tc1::IfcDerivedUnitElement > Elements() const; @@ -14285,9 +14285,9 @@ public: /// NOTE: Corresponding ISO 10303 name: derived_unit_element, please refer to ISO/IS 10303-41 for the final definition of the formal standard. /// /// HISTORY New entity in IFC Release 1.5.1. -class IFC_SCHEMA_API IfcDerivedUnitElement : public express::Entity { +class IFC_SCHEMA_API IfcDerivedUnitElement : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// The fixed quantity which is used as the mathematical factor. ::Ifc4x3_tc1::IfcNamedUnit Unit() const; @@ -14316,9 +14316,9 @@ public: /// for the final definition of the formal standard. /// /// HISTORY New entity in IFC Release 1.5.1. -class IFC_SCHEMA_API IfcDimensionalExponents : public express::Entity { +class IFC_SCHEMA_API IfcDimensionalExponents : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// The power of the length base quantity. int64_t LengthExponent() const; @@ -14351,9 +14351,9 @@ public: /// all external information entities. /// /// HISTORY New entity in IFC2x4. -class IFC_SCHEMA_API IfcExternalInformation : public express::Entity { +class IFC_SCHEMA_API IfcExternalInformation : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; static const ifcopenshell::entity& Class(); @@ -14368,9 +14368,9 @@ public: /// IfcExternalReference is an abstract supertype of all external reference entities. /// /// HISTORY New entity in IFC2x. -class IFC_SCHEMA_API IfcExternalReference : public express::Entity { +class IFC_SCHEMA_API IfcExternalReference : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// Location, where the external source (classification, document or library) can be accessed by electronic means. The electronic location is provided as an URI, and would normally be given as an URL location string. /// @@ -14465,9 +14465,9 @@ public: /// underlying AxisCurve supports this concept. /// /// Figure 242 — Grid axis -class IFC_SCHEMA_API IfcGridAxis : public express::Entity { +class IFC_SCHEMA_API IfcGridAxis : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// The tag or name for this grid axis. std::optional< std::string > AxisTag() const; @@ -14489,9 +14489,9 @@ public: /// The IfcIrregularTimeSeriesValue describes a value (or set of values) at a particular time point. /// /// HISTORY: New entity in IFC 2x2. -class IFC_SCHEMA_API IfcIrregularTimeSeriesValue : public express::Entity { +class IFC_SCHEMA_API IfcIrregularTimeSeriesValue : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// The specification of the time point. std::string TimeStamp() const; @@ -14586,9 +14586,9 @@ public: /// For each pair of MainPlaneAngle and SecondaryPlaneAngle the LuminousIntensity is provided (the unit is given by the IfcUnitAssignment referring to the LuminousIntensityDistributionUnit, normally cd/klm). /// /// HISTORY: New entity in IFC2x2. -class IFC_SCHEMA_API IfcLightDistributionData : public express::Entity { +class IFC_SCHEMA_API IfcLightDistributionData : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// The main plane angle (A, B or C angles, according to the light distribution curve chosen). double MainPlaneAngle() const; @@ -14608,9 +14608,9 @@ public: /// IfcLightIntensityDistribution defines the the luminous intensity of a light source that changes according to the direction of the ray. It is based on some standardized light distribution curves, which are defined by the LightDistributionCurve attribute. /// /// New entity in IFC2x2. -class IFC_SCHEMA_API IfcLightIntensityDistribution : public express::Entity { +class IFC_SCHEMA_API IfcLightIntensityDistribution : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// Standardized light distribution curve used to define the luminous intensity of the light in all directions. ::Ifc4x3_tc1::IfcLightDistributionCurveEnum::Value LightDistributionCurve() const; @@ -14675,9 +14675,9 @@ public: /// HISTORY New entity in IFC2x. /// /// IFC2x4 CHANGE The entity IfcMaterialClassificationRelationship is deprecated since IFC2x4 and shall no longer be used. Use IfcExternalReferenceRelationship instead. -class IFC_SCHEMA_API IfcMaterialClassificationRelationship : public express::Entity { +class IFC_SCHEMA_API IfcMaterialClassificationRelationship : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// The material classifications identifying the type of material. std::vector< ::Ifc4x3_tc1::IfcClassificationSelect > MaterialClassifications() const; @@ -14713,9 +14713,9 @@ public: /// IfcRelAssociatesMaterial. /// /// HISTORY New entity in IFC2x4 -class IFC_SCHEMA_API IfcMaterialDefinition : public express::Entity { +class IFC_SCHEMA_API IfcMaterialDefinition : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; std::vector< IfcRelAssociatesMaterial > AssociatedTo() const; // INVERSE IfcRelAssociatesMaterial::RelatingMaterial std::vector< IfcExternalReferenceRelationship > HasExternalReferences() const; // INVERSE IfcExternalReferenceRelationship::RelatedResourceObjects @@ -14911,9 +14911,9 @@ public: /// /// IFC2x4 CHANGE The entity IfcMaterialList is deprecated and shall no longer /// be used. Use IfcMaterialConstituentSet instead. -class IFC_SCHEMA_API IfcMaterialList : public express::Entity { +class IFC_SCHEMA_API IfcMaterialList : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// Materials used in a composition of substances. std::vector< ::Ifc4x3_tc1::IfcMaterial > Materials() const; @@ -15029,9 +15029,9 @@ public: /// IfcMaterialUsageDefinition to a subtype of /// IfcElementType, it shall only be assigned to an element /// occurrence. -class IFC_SCHEMA_API IfcMaterialUsageDefinition : public express::Entity { +class IFC_SCHEMA_API IfcMaterialUsageDefinition : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; std::vector< IfcRelAssociatesMaterial > AssociatedTo() const; // INVERSE IfcRelAssociatesMaterial::RelatingMaterial @@ -15048,9 +15048,9 @@ public: /// NOTE Corresponding ISO 10303 name: measure_with_unit, please refer to ISO/IS 10303-41 for the final definition of the formal standard. /// /// HISTORY New entity in IFC Release 1.5.1. -class IFC_SCHEMA_API IfcMeasureWithUnit : public express::Entity { +class IFC_SCHEMA_API IfcMeasureWithUnit : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// The value of the physical quantity when expressed in the specified units. ::Ifc4x3_tc1::IfcValue ValueComponent() const; @@ -15138,9 +15138,9 @@ public: /// HISTORY: New entity in IFC Release 2x. /// /// IFC2x4 CHANGE: Type of the attribute Currency changed. -class IFC_SCHEMA_API IfcMonetaryUnit : public express::Entity { +class IFC_SCHEMA_API IfcMonetaryUnit : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// Code or name of the currency. Permissible values are the three-letter alphabetic currency codes as per ISO 4217, for example CNY, EUR, GBP, JPY, USD. std::string Currency() const; @@ -15154,9 +15154,9 @@ public: /// NOTE Corresponding ISO 10303 name: named_unit, please refer to ISO/IS 10303-41 for the final definition of the formal standard. /// /// HISTORY New type in IFC Release 1.5.1. -class IFC_SCHEMA_API IfcNamedUnit : public express::Entity { +class IFC_SCHEMA_API IfcNamedUnit : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// The dimensional exponents of the SI base units by which the named unit is defined. ::Ifc4x3_tc1::IfcDimensionalExponents Dimensions() const; @@ -15179,9 +15179,9 @@ public: /// In any case the object placement has to unambiguously define the object coordinate system as either two-dimensional axis placement (IfcAxis2Placement2D) or three-dimensional axis placement (IfcAxis2Placement3D). The axis placement may have to be calculated. /// /// HISTORY New entity in IFC Release 2x. -class IFC_SCHEMA_API IfcObjectPlacement : public express::Entity { +class IFC_SCHEMA_API IfcObjectPlacement : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; ::Ifc4x3_tc1::IfcObjectPlacement PlacementRelTo() const; void setPlacementRelTo(const ::Ifc4x3_tc1::IfcObjectPlacement& v); @@ -15227,9 +15227,9 @@ public: /// /// HISTORY New entity in IFC Release 1.5.1. /// IFC 2x4 change: attribute Id renamed to Identification. -class IFC_SCHEMA_API IfcOrganization : public express::Entity { +class IFC_SCHEMA_API IfcOrganization : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// Identification of the organization. std::optional< std::string > Identification() const; @@ -15264,9 +15264,9 @@ public: /// /// If LastModifiedDate is defined but ChangeAction is not asserted, then the state of ChangeAction is assumed to be UNDEFINED. /// If both LastModifiedDate and ChangeAction are asserted, then the state of ChangeAction applies to the value asserted in LastModifiedDate. -class IFC_SCHEMA_API IfcOwnerHistory : public express::Entity { +class IFC_SCHEMA_API IfcOwnerHistory : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// Direct reference to the end user who currently "owns" this object. Note that IFC includes the concept of ownership transfer from one user to another and therefore distinguishes between the Owning User and Creating User. ::Ifc4x3_tc1::IfcPersonAndOrganization OwningUser() const; @@ -15305,9 +15305,9 @@ public: /// /// HISTORY New entity in IFC Release 1.5.1. /// IFC 2x4 change: attribute Id renamed to Identification. WHERE rule relaxed to allow omission of names if Identification is provided. -class IFC_SCHEMA_API IfcPerson : public express::Entity { +class IFC_SCHEMA_API IfcPerson : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// Identification of the person. std::optional< std::string > Identification() const; @@ -15349,9 +15349,9 @@ public: /// NOTE Corresponds to the following entity in ISO-10303-41: person_and_organization. /// /// HISTORY New entity in IFC Release 1.5.1 -class IFC_SCHEMA_API IfcPersonAndOrganization : public express::Entity { +class IFC_SCHEMA_API IfcPersonAndOrganization : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// The person who is related to the organization. ::Ifc4x3_tc1::IfcPerson ThePerson() const; @@ -15371,9 +15371,9 @@ public: /// The Name attribute defines the actual usage or kind of measure. The interpretation of the name label has to be established within the actual exchange context. In addition an informative text may be associated to each quantity by the Description attribute. /// /// HISTORY  New entity in IFC2x. It replaces the calcXxx attributes used in previous IFC Releases. -class IFC_SCHEMA_API IfcPhysicalQuantity : public express::Entity { +class IFC_SCHEMA_API IfcPhysicalQuantity : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// Name of the element quantity or measure. The name attribute has to be made recognizable by further agreements. std::string Name() const; @@ -15446,9 +15446,9 @@ public: IfcPostalAddress initialize(std::optional< ::Ifc4x3_tc1::IfcAddressTypeEnum::Value > v1_Purpose, std::optional< std::string > v2_Description, std::optional< std::string > v3_UserDefinedPurpose, std::optional< std::string > v4_InternalLocation, std::optional< std::vector< std::string > /*[1:?]*/ > v5_AddressLines, std::optional< std::string > v6_PostalBox, std::optional< std::string > v7_Town, std::optional< std::string > v8_Region, std::optional< std::string > v9_PostalCode, std::optional< std::string > v10_Country); }; -class IFC_SCHEMA_API IfcPresentationItem : public express::Entity { +class IFC_SCHEMA_API IfcPresentationItem : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; static const ifcopenshell::entity& Class(); @@ -15469,9 +15469,9 @@ public: /// Figure 305 illustrates assignment of items by shape representation or representation item. The set of AssignedItems can either include a whole shape representation, or individual geometric representation items. If both, the IfcShapeRepresentation has a layer assignment, and an individual geometric representation item in the set of IfcShapeRepresentation.Items, then the layer assignment of the IfcGeometricRepresentationItem overides the layer assignment of the IfcShapeRepresentation. /// /// Figure 305 — Presentation layer assignment -class IFC_SCHEMA_API IfcPresentationLayerAssignment : public express::Entity { +class IFC_SCHEMA_API IfcPresentationLayerAssignment : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// Name of the layer. std::string Name() const; @@ -15531,9 +15531,9 @@ public: /// Each subtype of  IfcPresentationStyle can be assigned to IfcGeometricRepresentationItem's via the IfcPresentationStyleAssignment through an intermediate IfcStyledItem or one of its subtypes. /// /// HISTORY  New entity in IFC2x3. -class IFC_SCHEMA_API IfcPresentationStyle : public express::Entity { +class IFC_SCHEMA_API IfcPresentationStyle : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// Name of the presentation style. std::optional< std::string > Name() const; @@ -15559,9 +15559,9 @@ public: /// IFC2x3 NOTE Users should not instantiate the entity from IFC2x Edition 3 onwards. /// /// IFC2x4 CHANGE  Entity made abstract. -class IFC_SCHEMA_API IfcProductRepresentation : public express::Entity { +class IFC_SCHEMA_API IfcProductRepresentation : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// The word or group of words by which the product representation is known. std::optional< std::string > Name() const; @@ -15746,9 +15746,9 @@ public: /// possible to directly instantiate IfcProfileDef and further specify /// the profile only by external reference or by profile properties. The latter /// are tracked by the inverse attribute HasProperties. -class IFC_SCHEMA_API IfcProfileDef : public express::Entity { +class IFC_SCHEMA_API IfcProfileDef : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// Defines the type of geometry into which this profile definition shall be resolved, either a curve or a surface area. In case of curve the profile should be referenced by a swept surface, in case of area the profile should be referenced by a swept area solid. ::Ifc4x3_tc1::IfcProfileTypeEnum::Value ProfileType() const; @@ -15810,9 +15810,9 @@ public: IfcProjectedCRS initialize(std::string v1_Name, std::optional< std::string > v2_Description, std::optional< std::string > v3_GeodeticDatum, std::optional< std::string > v4_VerticalDatum, std::optional< std::string > v5_MapProjection, std::optional< std::string > v6_MapZone, ::Ifc4x3_tc1::IfcNamedUnit v7_MapUnit); }; -class IFC_SCHEMA_API IfcPropertyAbstraction : public express::Entity { +class IFC_SCHEMA_API IfcPropertyAbstraction : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; std::vector< IfcExternalReferenceRelationship > HasExternalReferences() const; // INVERSE IfcExternalReferenceRelationship::RelatedResourceObjects @@ -16027,9 +16027,9 @@ public: /// /// Use definitions /// IfcRecurrencePattern supports various recurrence patterns that are differentiated by a type definition (IfcRecurrencePattern.RecurrenceType), which is required to provide the meaning of the given values. It can be further constrained by applicable times through specified IfcTimePeriod instances, thus enabling time periods such as between 7:00 and 12:00 and between 13:00 and 17:00 for each of the applicable days, weeks or months. -class IFC_SCHEMA_API IfcRecurrencePattern : public express::Entity { +class IFC_SCHEMA_API IfcRecurrencePattern : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// Defines the recurrence type that gives meaning to the used /// attributes and decides about possible attribute @@ -16073,9 +16073,9 @@ public: IfcRecurrencePattern initialize(::Ifc4x3_tc1::IfcRecurrenceTypeEnum::Value v1_RecurrenceType, std::optional< std::vector< int64_t > /*[1:?]*/ > v2_DayComponent, std::optional< std::vector< int64_t > /*[1:?]*/ > v3_WeekdayComponent, std::optional< std::vector< int64_t > /*[1:?]*/ > v4_MonthComponent, std::optional< int64_t > v5_Position, std::optional< int64_t > v6_Interval, std::optional< int64_t > v7_Occurrences, std::optional< std::vector< ::Ifc4x3_tc1::IfcTimePeriod > > v8_TimePeriods); }; -class IFC_SCHEMA_API IfcReference : public express::Entity { +class IFC_SCHEMA_API IfcReference : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; std::optional< std::string > TypeIdentifier() const; void setTypeIdentifier(const std::optional< std::string >& v); @@ -16137,9 +16137,9 @@ public: /// IFC2x4 CHANGE  Entity /// IfcRepresentation has been changed into an ABSTRACT /// supertype. -class IFC_SCHEMA_API IfcRepresentation : public express::Entity { +class IFC_SCHEMA_API IfcRepresentation : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// Definition of the representation context for which the different subtypes of representation are valid. ::Ifc4x3_tc1::IfcRepresentationContext ContextOfItems() const; @@ -16171,9 +16171,9 @@ public: /// /// IFC2x4 CHANGE Entity made abstract, had been deprecated from instantiation since /// IFC2x2. -class IFC_SCHEMA_API IfcRepresentationContext : public express::Entity { +class IFC_SCHEMA_API IfcRepresentationContext : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// The optional identifier of the representation context as used within a project. std::optional< std::string > ContextIdentifier() const; @@ -16218,9 +16218,9 @@ public: /// HISTORY  New entity in IFC Release 2x. /// /// IFC2x3 CHANGE  The inverse attributes StyledByItem and LayerAssignments have been added. Upward compatibility for file based exchange is guaranteed. -class IFC_SCHEMA_API IfcRepresentationItem : public express::Entity { +class IFC_SCHEMA_API IfcRepresentationItem : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; std::vector< IfcPresentationLayerAssignment > LayerAssignment() const; // INVERSE IfcPresentationLayerAssignment::AssignedItems std::vector< IfcStyledItem > StyledByItem() const; // INVERSE IfcStyledItem::Item @@ -16239,9 +16239,9 @@ public: /// NOTE  The definition of a mapping which is used to specify a new representation item comprises a representation map and a mapped item entity. Without both entities, the mapping is not fully defined. Two entities are specified to allow the same source representation to be mapped into multiple new representations. /// /// HISTORY  New entity in IFC Release 2x. -class IFC_SCHEMA_API IfcRepresentationMap : public express::Entity { +class IFC_SCHEMA_API IfcRepresentationMap : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// An axis2 placement that defines the position about which the mapped /// representation is mapped. @@ -16259,9 +16259,9 @@ public: /// IfcResourceLevelRelationship is an abstract base class for relationships between resource-level entities. /// /// HISTORY New Entity in IFC 2x4 -class IFC_SCHEMA_API IfcResourceLevelRelationship : public express::Entity { +class IFC_SCHEMA_API IfcResourceLevelRelationship : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// A name used to identify or qualify the relationship. std::optional< std::string > Name() const; @@ -16282,9 +16282,9 @@ public: /// HISTORY New entity in IFC Release 1.0 /// /// IFC2x4 CHANGE The attribute OwnerHistory has been made OPTIONAL. -class IFC_SCHEMA_API IfcRoot : public express::Entity { +class IFC_SCHEMA_API IfcRoot : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// Assignment of a globally unique identifier within the entire software world. std::string GlobalId() const; @@ -16332,9 +16332,9 @@ public: /// IfcSchedulingTime is the abstract supertype of entities that capture time-related information of processes. /// /// HISTORY: New entity in IFC2x4. -class IFC_SCHEMA_API IfcSchedulingTime : public express::Entity { +class IFC_SCHEMA_API IfcSchedulingTime : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// Optional name for the time definition. std::optional< std::string > Name() const; @@ -16387,9 +16387,9 @@ public: /// IfcRepresentationMap's that are used by an /// IfcTypeProduct through the /// RepresentationMaps attribute. -class IFC_SCHEMA_API IfcShapeAspect : public express::Entity { +class IFC_SCHEMA_API IfcShapeAspect : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// List of shape representations. Each member defines a valid representation of a particular type within a particular representation context as being an aspect (or part) of a product definition. /// IFC2x Edition 3 CHANGE  The data type has been changed from IfcShapeRepresentation to IfcShapeModel with upward compatibility @@ -16588,9 +16588,9 @@ public: /// Definition from IAI: Describe more rarely needed connection properties. /// /// HISTORY: New entity in IFC 2x2. -class IFC_SCHEMA_API IfcStructuralConnectionCondition : public express::Entity { +class IFC_SCHEMA_API IfcStructuralConnectionCondition : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// Optionally defines a name for this connection condition. std::optional< std::string > Name() const; @@ -16602,9 +16602,9 @@ public: /// Definition from IAI: The abstract entity IfcStructuralLoadOrResult is the supertype of all loads (actions or reactions) or of certain requirements resulting from structural analysis, or certain provisions which influence structural analysis. /// /// HISTORY: New entity in IFC 2x2. -class IFC_SCHEMA_API IfcStructuralLoad : public express::Entity { +class IFC_SCHEMA_API IfcStructuralLoad : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// Optionally defines a name for this load. std::optional< std::string > Name() const; @@ -17057,9 +17057,9 @@ public: /// HISTORY  New entity in IFC R1.5. /// /// IFC2x4 CHANGE  Columns attribute added. -class IFC_SCHEMA_API IfcTable : public express::Entity { +class IFC_SCHEMA_API IfcTable : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// A unique name which is intended to describe the usage of the Table. std::optional< std::string > Name() const; @@ -17079,9 +17079,9 @@ public: /// The use of IfcTableColumn supercedes the IsHeading flag associated with IfcTableRow. /// /// HISTORY  New entity in IFC2x4. -class IFC_SCHEMA_API IfcTableColumn : public express::Entity { +class IFC_SCHEMA_API IfcTableColumn : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// Table column identifier. std::optional< std::string > Identifier() const; @@ -17114,9 +17114,9 @@ public: /// Figure 338 — Table row use alternative /// /// HISTORY  New entity in IFC R1.5. -class IFC_SCHEMA_API IfcTableRow : public express::Entity { +class IFC_SCHEMA_API IfcTableRow : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// The data value of the table cell.. std::optional< std::vector< ::Ifc4x3_tc1::IfcValue > > RowCells() const; @@ -17490,9 +17490,9 @@ public: IfcTextureCoordinateGenerator initialize(std::vector< ::Ifc4x3_tc1::IfcSurfaceTexture > v1_Maps, std::string v2_Mode, std::optional< std::vector< double > /*[1:?]*/ > v3_Parameter); }; -class IFC_SCHEMA_API IfcTextureCoordinateIndices : public express::Entity { +class IFC_SCHEMA_API IfcTextureCoordinateIndices : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; std::vector< int64_t > /*[3:?]*/ TexCoordIndex() const; void setTexCoordIndex(const std::vector< int64_t > /*[3:?]*/& v); @@ -17635,9 +17635,9 @@ public: /// /// Use definitions /// A time period is defined by a start and an end time, which is defined by IfcTime. The given time period should be within reasonable values (for example, the start time must be before the end time). It is furthermore expected that both time definitions use the same time zone and, if given, the same daylight saving offset. -class IFC_SCHEMA_API IfcTimePeriod : public express::Entity { +class IFC_SCHEMA_API IfcTimePeriod : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// Start time of the time period. std::string StartTime() const; @@ -17654,9 +17654,9 @@ public: /// The modeling of buildings and their performance involves data that are generated and recorded over a period of time. Such data cover a large spectrum, from weather data to schedules of all kinds to status measurements to reporting to everything else that has a time related aspect. Their correct placement in time is essential for their proper understanding and use, and the IfcTimeSeries subtypes provide the appropriate data structures to accommodate these types of data. /// /// HISTORY: New entity in IFC 2x2. -class IFC_SCHEMA_API IfcTimeSeries : public express::Entity { +class IFC_SCHEMA_API IfcTimeSeries : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// An unique name for the time series. std::string Name() const; @@ -17696,9 +17696,9 @@ public: /// Figure 241 — Time series value /// /// HISTORY  New entity in IFC2x2. -class IFC_SCHEMA_API IfcTimeSeriesValue : public express::Entity { +class IFC_SCHEMA_API IfcTimeSeriesValue : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// A list of time-series values. At least one value is required. std::vector< ::Ifc4x3_tc1::IfcValue > ListValues() const; @@ -17767,9 +17767,9 @@ public: /// NOTE  A project (IfcProject) has a unit assignment which establishes a set of units which will be used globally within the project, if not otherwise defined. Other objects may have local unit assignments if there is a requirement for them to make use of units which do not fall within the project unit assignment. /// /// HISTORY  New entity in IFC Release 1.5.1. -class IFC_SCHEMA_API IfcUnitAssignment : public express::Entity { +class IFC_SCHEMA_API IfcUnitAssignment : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// Units to be included within a unit assignment. std::vector< ::Ifc4x3_tc1::IfcUnit > Units() const; @@ -17875,9 +17875,9 @@ public: /// OffsetDistances[1] is a negative length measure /// /// Figure 248 — Virtual grid intersection negative offset -class IFC_SCHEMA_API IfcVirtualGridIntersection : public express::Entity { +class IFC_SCHEMA_API IfcVirtualGridIntersection : public express::entity { public: - using express::Entity::Entity; + using express::entity::entity; /// Two grid axes which intersects at exactly one intersection (see also informal proposition at IfcGrid). If attribute OffsetDistances is omitted, the intersection defines the placement or ref direction of a grid placement directly. If OffsetDistances are given, the intersection is defined by the offset curves to the grid axes. std::vector< ::Ifc4x3_tc1::IfcGridAxis > IntersectingAxes() const;