/********************************************************************************
* *
* This file is part of IfcOpenShell. *
* *
* IfcOpenShell is free software: you can redistribute it and/or modify *
* it under the terms of the Lesser GNU General Public License as published by *
* the Free Software Foundation, either version 3.0 of the License, or *
* (at your option) any later version. *
* *
* IfcOpenShell is distributed in the hope that it will be useful, *
* but WITHOUT ANY WARRANTY; without even the implied warranty of *
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
* Lesser GNU General Public License for more details. *
* *
* You should have received a copy of the Lesser GNU General Public License *
* along with this program. If not, see . *
* *
********************************************************************************/
/********************************************************************************
* *
* This file has been generated from IFC2X3_TC1.exp. Do not make modifications *
* but instead modify the python script that has been used to generate this. *
* *
********************************************************************************/
#ifndef IFC2X3_H
#define IFC2X3_H
#include
#include
#include "../ifcparse/IfcUtil.h"
#include "../ifcparse/Ifc2x3enum.h"
using namespace IfcUtil;
#define RETURN_INVERSE(T) \
IfcEntities e = entity->getInverse(T::Class()); \
SHARED_PTR< IfcTemplatedEntityList > l ( new IfcTemplatedEntityList() ); \
for ( IfcEntityList::it it = e->begin(); it != e->end(); ++ it ) { \
l->push(reinterpret_pointer_cast(*it)); \
} \
return l;
#define RETURN_AS_SINGLE(T,a) \
return reinterpret_pointer_cast(*entity->getArgument(a));
#define RETURN_AS_LIST(T,a) \
IfcEntities e = *entity->getArgument(a); \
SHARED_PTR< IfcTemplatedEntityList > l ( new IfcTemplatedEntityList() ); \
for ( IfcEntityList::it it = e->begin(); it != e->end(); ++ it ) { \
l->push(reinterpret_pointer_cast(*it)); \
} \
return l;
namespace Ifc2x3 {
typedef float IfcAbsorbedDoseMeasure;
typedef float IfcAccelerationMeasure;
typedef float IfcAmountOfSubstanceMeasure;
typedef float IfcAngularVelocityMeasure;
typedef float IfcAreaMeasure;
typedef bool IfcBoolean;
typedef std::vector /*[1:2]*/ IfcComplexNumber;
typedef std::vector /*[3:4]*/ IfcCompoundPlaneAngleMeasure;
typedef float IfcContextDependentMeasure;
typedef float IfcCountMeasure;
typedef float IfcCurvatureMeasure;
typedef int IfcDayInMonthNumber;
typedef int IfcDaylightSavingHour;
typedef std::string IfcDescriptiveMeasure;
typedef int IfcDimensionCount;
typedef float IfcDoseEquivalentMeasure;
typedef float IfcDynamicViscosityMeasure;
typedef float IfcElectricCapacitanceMeasure;
typedef float IfcElectricChargeMeasure;
typedef float IfcElectricConductanceMeasure;
typedef float IfcElectricCurrentMeasure;
typedef float IfcElectricResistanceMeasure;
typedef float IfcElectricVoltageMeasure;
typedef float IfcEnergyMeasure;
typedef std::string IfcFontStyle;
typedef std::string IfcFontVariant;
typedef std::string IfcFontWeight;
typedef float IfcForceMeasure;
typedef float IfcFrequencyMeasure;
typedef std::string IfcGloballyUniqueId;
typedef float IfcHeatFluxDensityMeasure;
typedef float IfcHeatingValueMeasure;
typedef int IfcHourInDay;
typedef std::string IfcIdentifier;
typedef float IfcIlluminanceMeasure;
typedef float IfcInductanceMeasure;
typedef int IfcInteger;
typedef int IfcIntegerCountRateMeasure;
typedef float IfcIonConcentrationMeasure;
typedef float IfcIsothermalMoistureCapacityMeasure;
typedef float IfcKinematicViscosityMeasure;
typedef std::string IfcLabel;
typedef float IfcLengthMeasure;
typedef float IfcLinearForceMeasure;
typedef float IfcLinearMomentMeasure;
typedef float IfcLinearStiffnessMeasure;
typedef float IfcLinearVelocityMeasure;
typedef bool IfcLogical;
typedef float IfcLuminousFluxMeasure;
typedef float IfcLuminousIntensityDistributionMeasure;
typedef float IfcLuminousIntensityMeasure;
typedef float IfcMagneticFluxDensityMeasure;
typedef float IfcMagneticFluxMeasure;
typedef float IfcMassDensityMeasure;
typedef float IfcMassFlowRateMeasure;
typedef float IfcMassMeasure;
typedef float IfcMassPerLengthMeasure;
typedef int IfcMinuteInHour;
typedef float IfcModulusOfElasticityMeasure;
typedef float IfcModulusOfLinearSubgradeReactionMeasure;
typedef float IfcModulusOfRotationalSubgradeReactionMeasure;
typedef float IfcModulusOfSubgradeReactionMeasure;
typedef float IfcMoistureDiffusivityMeasure;
typedef float IfcMolecularWeightMeasure;
typedef float IfcMomentOfInertiaMeasure;
typedef float IfcMonetaryMeasure;
typedef int IfcMonthInYearNumber;
typedef float IfcNumericMeasure;
typedef float IfcPHMeasure;
typedef float IfcParameterValue;
typedef float IfcPlanarForceMeasure;
typedef float IfcPlaneAngleMeasure;
typedef float IfcPowerMeasure;
typedef std::string IfcPresentableText;
typedef float IfcPressureMeasure;
typedef float IfcRadioActivityMeasure;
typedef float IfcRatioMeasure;
typedef float IfcReal;
typedef float IfcRotationalFrequencyMeasure;
typedef float IfcRotationalMassMeasure;
typedef float IfcRotationalStiffnessMeasure;
typedef float IfcSecondInMinute;
typedef float IfcSectionModulusMeasure;
typedef float IfcSectionalAreaIntegralMeasure;
typedef float IfcShearModulusMeasure;
typedef float IfcSolidAngleMeasure;
typedef float IfcSoundPowerMeasure;
typedef float IfcSoundPressureMeasure;
typedef float IfcSpecificHeatCapacityMeasure;
typedef float IfcSpecularExponent;
typedef float IfcSpecularRoughness;
typedef float IfcTemperatureGradientMeasure;
typedef std::string IfcText;
typedef std::string IfcTextAlignment;
typedef std::string IfcTextDecoration;
typedef std::string IfcTextFontName;
typedef std::string IfcTextTransformation;
typedef float IfcThermalAdmittanceMeasure;
typedef float IfcThermalConductivityMeasure;
typedef float IfcThermalExpansionCoefficientMeasure;
typedef float IfcThermalResistanceMeasure;
typedef float IfcThermalTransmittanceMeasure;
typedef float IfcThermodynamicTemperatureMeasure;
typedef float IfcTimeMeasure;
typedef int IfcTimeStamp;
typedef float IfcTorqueMeasure;
typedef float IfcVaporPermeabilityMeasure;
typedef float IfcVolumeMeasure;
typedef float IfcVolumetricFlowRateMeasure;
typedef float IfcWarpingConstantMeasure;
typedef float IfcWarpingMomentMeasure;
typedef int IfcYearNumber;
typedef SHARED_PTR IfcActorSelect;
typedef SHARED_PTR IfcAppliedValueSelect;
typedef SHARED_PTR IfcAxis2Placement;
typedef SHARED_PTR IfcBooleanOperand;
typedef SHARED_PTR IfcCharacterStyleSelect;
typedef SHARED_PTR IfcClassificationNotationSelect;
typedef SHARED_PTR IfcColour;
typedef SHARED_PTR IfcColourOrFactor;
typedef SHARED_PTR IfcConditionCriterionSelect;
typedef SHARED_PTR IfcCsgSelect;
typedef SHARED_PTR IfcCurveFontOrScaledCurveFontSelect;
typedef SHARED_PTR IfcCurveOrEdgeCurve;
typedef SHARED_PTR IfcCurveStyleFontSelect;
typedef SHARED_PTR IfcDateTimeSelect;
typedef SHARED_PTR IfcDefinedSymbolSelect;
typedef SHARED_PTR IfcDerivedMeasureValue;
typedef SHARED_PTR IfcDocumentSelect;
typedef SHARED_PTR IfcDraughtingCalloutElement;
typedef SHARED_PTR IfcFillAreaStyleTileShapeSelect;
typedef SHARED_PTR IfcFillStyleSelect;
typedef SHARED_PTR IfcGeometricSetSelect;
typedef SHARED_PTR IfcHatchLineDistanceSelect;
typedef SHARED_PTR IfcLayeredItem;
typedef SHARED_PTR IfcLibrarySelect;
typedef SHARED_PTR IfcLightDistributionDataSourceSelect;
typedef SHARED_PTR IfcMaterialSelect;
typedef SHARED_PTR IfcMeasureValue;
typedef SHARED_PTR IfcMetricValueSelect;
typedef SHARED_PTR IfcObjectReferenceSelect;
typedef SHARED_PTR IfcOrientationSelect;
typedef SHARED_PTR IfcPointOrVertexPoint;
typedef SHARED_PTR IfcPresentationStyleSelect;
typedef SHARED_PTR IfcShell;
typedef SHARED_PTR IfcSimpleValue;
typedef SHARED_PTR IfcSizeSelect;
typedef SHARED_PTR IfcSpecularHighlightSelect;
typedef SHARED_PTR IfcStructuralActivityAssignmentSelect;
typedef SHARED_PTR IfcSurfaceOrFaceSurface;
typedef SHARED_PTR IfcSurfaceStyleElementSelect;
typedef SHARED_PTR IfcSymbolStyleSelect;
typedef SHARED_PTR IfcTextFontSelect;
typedef SHARED_PTR IfcTextStyleSelect;
typedef SHARED_PTR IfcTrimmingSelect;
typedef SHARED_PTR IfcUnit;
typedef SHARED_PTR IfcValue;
typedef SHARED_PTR IfcVectorOrDirection;
typedef IfcLabel IfcBoxAlignment;
typedef IfcRatioMeasure IfcNormalisedRatioMeasure;
typedef IfcLengthMeasure IfcPositiveLengthMeasure;
typedef IfcPlaneAngleMeasure IfcPositivePlaneAngleMeasure;
typedef IfcRatioMeasure IfcPositiveRatioMeasure;
namespace IfcActionSourceTypeEnum {typedef enum {DEAD_LOAD_G, COMPLETION_G1, LIVE_LOAD_Q, SNOW_S, WIND_W, PRESTRESSING_P, SETTLEMENT_U, TEMPERATURE_T, EARTHQUAKE_E, FIRE, IMPULSE, IMPACT, TRANSPORT, ERECTION, PROPPING, SYSTEM_IMPERFECTION, SHRINKAGE, CREEP, LACK_OF_FIT, BUOYANCY, ICE, CURRENT, WAVE, RAIN, BRAKES, USERDEFINED, NOTDEFINED} IfcActionSourceTypeEnum;
std::string ToString(IfcActionSourceTypeEnum v);
IfcActionSourceTypeEnum FromString(const std::string& s);}
namespace IfcActionTypeEnum {typedef enum {PERMANENT_G, VARIABLE_Q, EXTRAORDINARY_A, USERDEFINED, NOTDEFINED} IfcActionTypeEnum;
std::string ToString(IfcActionTypeEnum v);
IfcActionTypeEnum FromString(const std::string& s);}
namespace IfcActuatorTypeEnum {typedef enum {ELECTRICACTUATOR, HANDOPERATEDACTUATOR, HYDRAULICACTUATOR, PNEUMATICACTUATOR, THERMOSTATICACTUATOR, USERDEFINED, NOTDEFINED} IfcActuatorTypeEnum;
std::string ToString(IfcActuatorTypeEnum v);
IfcActuatorTypeEnum FromString(const std::string& s);}
namespace IfcAddressTypeEnum {typedef enum {OFFICE, SITE, HOME, DISTRIBUTIONPOINT, USERDEFINED} IfcAddressTypeEnum;
std::string ToString(IfcAddressTypeEnum v);
IfcAddressTypeEnum FromString(const std::string& s);}
namespace IfcAheadOrBehind {typedef enum {AHEAD, BEHIND} IfcAheadOrBehind;
std::string ToString(IfcAheadOrBehind v);
IfcAheadOrBehind FromString(const std::string& s);}
namespace IfcAirTerminalBoxTypeEnum {typedef enum {CONSTANTFLOW, VARIABLEFLOWPRESSUREDEPENDANT, VARIABLEFLOWPRESSUREINDEPENDANT, USERDEFINED, NOTDEFINED} IfcAirTerminalBoxTypeEnum;
std::string ToString(IfcAirTerminalBoxTypeEnum v);
IfcAirTerminalBoxTypeEnum FromString(const std::string& s);}
namespace IfcAirTerminalTypeEnum {typedef enum {GRILLE, REGISTER, DIFFUSER, EYEBALL, IRIS, LINEARGRILLE, LINEARDIFFUSER, USERDEFINED, NOTDEFINED} IfcAirTerminalTypeEnum;
std::string ToString(IfcAirTerminalTypeEnum v);
IfcAirTerminalTypeEnum FromString(const std::string& s);}
namespace IfcAirToAirHeatRecoveryTypeEnum {typedef enum {FIXEDPLATECOUNTERFLOWEXCHANGER, FIXEDPLATECROSSFLOWEXCHANGER, FIXEDPLATEPARALLELFLOWEXCHANGER, ROTARYWHEEL, RUNAROUNDCOILLOOP, HEATPIPE, TWINTOWERENTHALPYRECOVERYLOOPS, THERMOSIPHONSEALEDTUBEHEATEXCHANGERS, THERMOSIPHONCOILTYPEHEATEXCHANGERS, USERDEFINED, NOTDEFINED} IfcAirToAirHeatRecoveryTypeEnum;
std::string ToString(IfcAirToAirHeatRecoveryTypeEnum v);
IfcAirToAirHeatRecoveryTypeEnum FromString(const std::string& s);}
namespace IfcAlarmTypeEnum {typedef enum {BELL, BREAKGLASSBUTTON, LIGHT, MANUALPULLBOX, SIREN, WHISTLE, USERDEFINED, NOTDEFINED} IfcAlarmTypeEnum;
std::string ToString(IfcAlarmTypeEnum v);
IfcAlarmTypeEnum FromString(const std::string& s);}
namespace IfcAnalysisModelTypeEnum {typedef enum {IN_PLANE_LOADING_2D, OUT_PLANE_LOADING_2D, LOADING_3D, USERDEFINED, NOTDEFINED} IfcAnalysisModelTypeEnum;
std::string ToString(IfcAnalysisModelTypeEnum v);
IfcAnalysisModelTypeEnum FromString(const std::string& s);}
namespace IfcAnalysisTheoryTypeEnum {typedef enum {FIRST_ORDER_THEORY, SECOND_ORDER_THEORY, THIRD_ORDER_THEORY, FULL_NONLINEAR_THEORY, USERDEFINED, NOTDEFINED} IfcAnalysisTheoryTypeEnum;
std::string ToString(IfcAnalysisTheoryTypeEnum v);
IfcAnalysisTheoryTypeEnum FromString(const std::string& s);}
namespace IfcArithmeticOperatorEnum {typedef enum {ADD, DIVIDE, MULTIPLY, SUBTRACT} IfcArithmeticOperatorEnum;
std::string ToString(IfcArithmeticOperatorEnum v);
IfcArithmeticOperatorEnum FromString(const std::string& s);}
namespace IfcAssemblyPlaceEnum {typedef enum {SITE, FACTORY, NOTDEFINED} IfcAssemblyPlaceEnum;
std::string ToString(IfcAssemblyPlaceEnum v);
IfcAssemblyPlaceEnum FromString(const std::string& s);}
namespace IfcBSplineCurveForm {typedef enum {POLYLINE_FORM, CIRCULAR_ARC, ELLIPTIC_ARC, PARABOLIC_ARC, HYPERBOLIC_ARC, UNSPECIFIED} IfcBSplineCurveForm;
std::string ToString(IfcBSplineCurveForm v);
IfcBSplineCurveForm FromString(const std::string& s);}
namespace IfcBeamTypeEnum {typedef enum {BEAM, JOIST, LINTEL, T_BEAM, USERDEFINED, NOTDEFINED} IfcBeamTypeEnum;
std::string ToString(IfcBeamTypeEnum v);
IfcBeamTypeEnum FromString(const std::string& s);}
namespace IfcBenchmarkEnum {typedef enum {GREATERTHAN, GREATERTHANOREQUALTO, LESSTHAN, LESSTHANOREQUALTO, EQUALTO, NOTEQUALTO} IfcBenchmarkEnum;
std::string ToString(IfcBenchmarkEnum v);
IfcBenchmarkEnum FromString(const std::string& s);}
namespace IfcBoilerTypeEnum {typedef enum {WATER, STEAM, USERDEFINED, NOTDEFINED} IfcBoilerTypeEnum;
std::string ToString(IfcBoilerTypeEnum v);
IfcBoilerTypeEnum FromString(const std::string& s);}
namespace IfcBooleanOperator {typedef enum {UNION, INTERSECTION, DIFFERENCE} IfcBooleanOperator;
std::string ToString(IfcBooleanOperator v);
IfcBooleanOperator FromString(const std::string& s);}
namespace IfcBuildingElementProxyTypeEnum {typedef enum {USERDEFINED, NOTDEFINED} IfcBuildingElementProxyTypeEnum;
std::string ToString(IfcBuildingElementProxyTypeEnum v);
IfcBuildingElementProxyTypeEnum FromString(const std::string& s);}
namespace IfcCableCarrierFittingTypeEnum {typedef enum {BEND, CROSS, REDUCER, TEE, USERDEFINED, NOTDEFINED} IfcCableCarrierFittingTypeEnum;
std::string ToString(IfcCableCarrierFittingTypeEnum v);
IfcCableCarrierFittingTypeEnum FromString(const std::string& s);}
namespace IfcCableCarrierSegmentTypeEnum {typedef enum {CABLELADDERSEGMENT, CABLETRAYSEGMENT, CABLETRUNKINGSEGMENT, CONDUITSEGMENT, USERDEFINED, NOTDEFINED} IfcCableCarrierSegmentTypeEnum;
std::string ToString(IfcCableCarrierSegmentTypeEnum v);
IfcCableCarrierSegmentTypeEnum FromString(const std::string& s);}
namespace IfcCableSegmentTypeEnum {typedef enum {CABLESEGMENT, CONDUCTORSEGMENT, USERDEFINED, NOTDEFINED} IfcCableSegmentTypeEnum;
std::string ToString(IfcCableSegmentTypeEnum v);
IfcCableSegmentTypeEnum FromString(const std::string& s);}
namespace IfcChangeActionEnum {typedef enum {NOCHANGE, MODIFIED, ADDED, DELETED, MODIFIEDADDED, MODIFIEDDELETED} IfcChangeActionEnum;
std::string ToString(IfcChangeActionEnum v);
IfcChangeActionEnum FromString(const std::string& s);}
namespace IfcChillerTypeEnum {typedef enum {AIRCOOLED, WATERCOOLED, HEATRECOVERY, USERDEFINED, NOTDEFINED} IfcChillerTypeEnum;
std::string ToString(IfcChillerTypeEnum v);
IfcChillerTypeEnum FromString(const std::string& s);}
namespace IfcCoilTypeEnum {typedef enum {DXCOOLINGCOIL, WATERCOOLINGCOIL, STEAMHEATINGCOIL, WATERHEATINGCOIL, ELECTRICHEATINGCOIL, GASHEATINGCOIL, USERDEFINED, NOTDEFINED} IfcCoilTypeEnum;
std::string ToString(IfcCoilTypeEnum v);
IfcCoilTypeEnum FromString(const std::string& s);}
namespace IfcColumnTypeEnum {typedef enum {COLUMN, USERDEFINED, NOTDEFINED} IfcColumnTypeEnum;
std::string ToString(IfcColumnTypeEnum v);
IfcColumnTypeEnum FromString(const std::string& s);}
namespace IfcCompressorTypeEnum {typedef enum {DYNAMIC, RECIPROCATING, ROTARY, SCROLL, TROCHOIDAL, SINGLESTAGE, BOOSTER, OPENTYPE, HERMETIC, SEMIHERMETIC, WELDEDSHELLHERMETIC, ROLLINGPISTON, ROTARYVANE, SINGLESCREW, TWINSCREW, USERDEFINED, NOTDEFINED} IfcCompressorTypeEnum;
std::string ToString(IfcCompressorTypeEnum v);
IfcCompressorTypeEnum FromString(const std::string& s);}
namespace IfcCondenserTypeEnum {typedef enum {WATERCOOLEDSHELLTUBE, WATERCOOLEDSHELLCOIL, WATERCOOLEDTUBEINTUBE, WATERCOOLEDBRAZEDPLATE, AIRCOOLED, EVAPORATIVECOOLED, USERDEFINED, NOTDEFINED} IfcCondenserTypeEnum;
std::string ToString(IfcCondenserTypeEnum v);
IfcCondenserTypeEnum FromString(const std::string& s);}
namespace IfcConnectionTypeEnum {typedef enum {ATPATH, ATSTART, ATEND, NOTDEFINED} IfcConnectionTypeEnum;
std::string ToString(IfcConnectionTypeEnum v);
IfcConnectionTypeEnum FromString(const std::string& s);}
namespace IfcConstraintEnum {typedef enum {HARD, SOFT, ADVISORY, USERDEFINED, NOTDEFINED} IfcConstraintEnum;
std::string ToString(IfcConstraintEnum v);
IfcConstraintEnum FromString(const std::string& s);}
namespace IfcControllerTypeEnum {typedef enum {FLOATING, PROPORTIONAL, PROPORTIONALINTEGRAL, PROPORTIONALINTEGRALDERIVATIVE, TIMEDTWOPOSITION, TWOPOSITION, USERDEFINED, NOTDEFINED} IfcControllerTypeEnum;
std::string ToString(IfcControllerTypeEnum v);
IfcControllerTypeEnum FromString(const std::string& s);}
namespace IfcCooledBeamTypeEnum {typedef enum {ACTIVE, PASSIVE, USERDEFINED, NOTDEFINED} IfcCooledBeamTypeEnum;
std::string ToString(IfcCooledBeamTypeEnum v);
IfcCooledBeamTypeEnum FromString(const std::string& s);}
namespace IfcCoolingTowerTypeEnum {typedef enum {NATURALDRAFT, MECHANICALINDUCEDDRAFT, MECHANICALFORCEDDRAFT, USERDEFINED, NOTDEFINED} IfcCoolingTowerTypeEnum;
std::string ToString(IfcCoolingTowerTypeEnum v);
IfcCoolingTowerTypeEnum FromString(const std::string& s);}
namespace IfcCostScheduleTypeEnum {typedef enum {BUDGET, COSTPLAN, ESTIMATE, TENDER, PRICEDBILLOFQUANTITIES, UNPRICEDBILLOFQUANTITIES, SCHEDULEOFRATES, USERDEFINED, NOTDEFINED} IfcCostScheduleTypeEnum;
std::string ToString(IfcCostScheduleTypeEnum v);
IfcCostScheduleTypeEnum FromString(const std::string& s);}
namespace IfcCoveringTypeEnum {typedef enum {CEILING, FLOORING, CLADDING, ROOFING, INSULATION, MEMBRANE, SLEEVING, WRAPPING, USERDEFINED, NOTDEFINED} IfcCoveringTypeEnum;
std::string ToString(IfcCoveringTypeEnum v);
IfcCoveringTypeEnum FromString(const std::string& s);}
namespace IfcCurrencyEnum {typedef enum {AED, AES, ATS, AUD, BBD, BEG, BGL, BHD, BMD, BND, BRL, BSD, BWP, BZD, CAD, CBD, CHF, CLP, CNY, CYS, CZK, DDP, DEM, DKK, EGL, EST, EUR, FAK, FIM, FJD, FKP, FRF, GBP, GIP, GMD, GRX, HKD, HUF, ICK, IDR, ILS, INR, IRP, ITL, JMD, JOD, JPY, KES, KRW, KWD, KYD, LKR, LUF, MTL, MUR, MXN, MYR, NLG, NZD, OMR, PGK, PHP, PKR, PLN, PTN, QAR, RUR, SAR, SCR, SEK, SGD, SKP, THB, TRL, TTD, TWD, USD, VEB, VND, XEU, ZAR, ZWD, NOK} IfcCurrencyEnum;
std::string ToString(IfcCurrencyEnum v);
IfcCurrencyEnum FromString(const std::string& s);}
namespace IfcCurtainWallTypeEnum {typedef enum {USERDEFINED, NOTDEFINED} IfcCurtainWallTypeEnum;
std::string ToString(IfcCurtainWallTypeEnum v);
IfcCurtainWallTypeEnum FromString(const std::string& s);}
namespace IfcDamperTypeEnum {typedef enum {CONTROLDAMPER, FIREDAMPER, SMOKEDAMPER, FIRESMOKEDAMPER, BACKDRAFTDAMPER, RELIEFDAMPER, BLASTDAMPER, GRAVITYDAMPER, GRAVITYRELIEFDAMPER, BALANCINGDAMPER, FUMEHOODEXHAUST, USERDEFINED, NOTDEFINED} IfcDamperTypeEnum;
std::string ToString(IfcDamperTypeEnum v);
IfcDamperTypeEnum FromString(const std::string& s);}
namespace IfcDataOriginEnum {typedef enum {MEASURED, PREDICTED, SIMULATED, USERDEFINED, NOTDEFINED} IfcDataOriginEnum;
std::string ToString(IfcDataOriginEnum v);
IfcDataOriginEnum FromString(const std::string& s);}
namespace IfcDerivedUnitEnum {typedef enum {ANGULARVELOCITYUNIT, COMPOUNDPLANEANGLEUNIT, DYNAMICVISCOSITYUNIT, HEATFLUXDENSITYUNIT, INTEGERCOUNTRATEUNIT, ISOTHERMALMOISTURECAPACITYUNIT, KINEMATICVISCOSITYUNIT, LINEARVELOCITYUNIT, MASSDENSITYUNIT, MASSFLOWRATEUNIT, MOISTUREDIFFUSIVITYUNIT, MOLECULARWEIGHTUNIT, SPECIFICHEATCAPACITYUNIT, THERMALADMITTANCEUNIT, THERMALCONDUCTANCEUNIT, THERMALRESISTANCEUNIT, THERMALTRANSMITTANCEUNIT, VAPORPERMEABILITYUNIT, VOLUMETRICFLOWRATEUNIT, ROTATIONALFREQUENCYUNIT, TORQUEUNIT, MOMENTOFINERTIAUNIT, LINEARMOMENTUNIT, LINEARFORCEUNIT, PLANARFORCEUNIT, MODULUSOFELASTICITYUNIT, SHEARMODULUSUNIT, LINEARSTIFFNESSUNIT, ROTATIONALSTIFFNESSUNIT, MODULUSOFSUBGRADEREACTIONUNIT, ACCELERATIONUNIT, CURVATUREUNIT, HEATINGVALUEUNIT, IONCONCENTRATIONUNIT, LUMINOUSINTENSITYDISTRIBUTIONUNIT, MASSPERLENGTHUNIT, MODULUSOFLINEARSUBGRADEREACTIONUNIT, MODULUSOFROTATIONALSUBGRADEREACTIONUNIT, PHUNIT, ROTATIONALMASSUNIT, SECTIONAREAINTEGRALUNIT, SECTIONMODULUSUNIT, SOUNDPOWERUNIT, SOUNDPRESSUREUNIT, TEMPERATUREGRADIENTUNIT, THERMALEXPANSIONCOEFFICIENTUNIT, WARPINGCONSTANTUNIT, WARPINGMOMENTUNIT, USERDEFINED} IfcDerivedUnitEnum;
std::string ToString(IfcDerivedUnitEnum v);
IfcDerivedUnitEnum FromString(const std::string& s);}
namespace IfcDimensionExtentUsage {typedef enum {ORIGIN, TARGET} IfcDimensionExtentUsage;
std::string ToString(IfcDimensionExtentUsage v);
IfcDimensionExtentUsage FromString(const std::string& s);}
namespace IfcDirectionSenseEnum {typedef enum {POSITIVE, NEGATIVE} IfcDirectionSenseEnum;
std::string ToString(IfcDirectionSenseEnum v);
IfcDirectionSenseEnum FromString(const std::string& s);}
namespace IfcDistributionChamberElementTypeEnum {typedef enum {FORMEDDUCT, INSPECTIONCHAMBER, INSPECTIONPIT, MANHOLE, METERCHAMBER, SUMP, TRENCH, VALVECHAMBER, USERDEFINED, NOTDEFINED} IfcDistributionChamberElementTypeEnum;
std::string ToString(IfcDistributionChamberElementTypeEnum v);
IfcDistributionChamberElementTypeEnum FromString(const std::string& s);}
namespace IfcDocumentConfidentialityEnum {typedef enum {PUBLIC, RESTRICTED, CONFIDENTIAL, PERSONAL, USERDEFINED, NOTDEFINED} IfcDocumentConfidentialityEnum;
std::string ToString(IfcDocumentConfidentialityEnum v);
IfcDocumentConfidentialityEnum FromString(const std::string& s);}
namespace IfcDocumentStatusEnum {typedef enum {DRAFT, FINALDRAFT, FINAL, REVISION, NOTDEFINED} IfcDocumentStatusEnum;
std::string ToString(IfcDocumentStatusEnum v);
IfcDocumentStatusEnum FromString(const std::string& s);}
namespace IfcDoorPanelOperationEnum {typedef enum {SWINGING, DOUBLE_ACTING, SLIDING, FOLDING, REVOLVING, ROLLINGUP, USERDEFINED, NOTDEFINED} IfcDoorPanelOperationEnum;
std::string ToString(IfcDoorPanelOperationEnum v);
IfcDoorPanelOperationEnum FromString(const std::string& s);}
namespace IfcDoorPanelPositionEnum {typedef enum {LEFT, MIDDLE, RIGHT, NOTDEFINED} IfcDoorPanelPositionEnum;
std::string ToString(IfcDoorPanelPositionEnum v);
IfcDoorPanelPositionEnum FromString(const std::string& s);}
namespace IfcDoorStyleConstructionEnum {typedef enum {ALUMINIUM, HIGH_GRADE_STEEL, STEEL, WOOD, ALUMINIUM_WOOD, ALUMINIUM_PLASTIC, PLASTIC, USERDEFINED, NOTDEFINED} IfcDoorStyleConstructionEnum;
std::string ToString(IfcDoorStyleConstructionEnum v);
IfcDoorStyleConstructionEnum FromString(const std::string& s);}
namespace IfcDoorStyleOperationEnum {typedef enum {SINGLE_SWING_LEFT, SINGLE_SWING_RIGHT, DOUBLE_DOOR_SINGLE_SWING, DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_LEFT, DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_RIGHT, DOUBLE_SWING_LEFT, DOUBLE_SWING_RIGHT, DOUBLE_DOOR_DOUBLE_SWING, SLIDING_TO_LEFT, SLIDING_TO_RIGHT, DOUBLE_DOOR_SLIDING, FOLDING_TO_LEFT, FOLDING_TO_RIGHT, DOUBLE_DOOR_FOLDING, REVOLVING, ROLLINGUP, USERDEFINED, NOTDEFINED} IfcDoorStyleOperationEnum;
std::string ToString(IfcDoorStyleOperationEnum v);
IfcDoorStyleOperationEnum FromString(const std::string& s);}
namespace IfcDuctFittingTypeEnum {typedef enum {BEND, CONNECTOR, ENTRY, EXIT, JUNCTION, OBSTRUCTION, TRANSITION, USERDEFINED, NOTDEFINED} IfcDuctFittingTypeEnum;
std::string ToString(IfcDuctFittingTypeEnum v);
IfcDuctFittingTypeEnum FromString(const std::string& s);}
namespace IfcDuctSegmentTypeEnum {typedef enum {RIGIDSEGMENT, FLEXIBLESEGMENT, USERDEFINED, NOTDEFINED} IfcDuctSegmentTypeEnum;
std::string ToString(IfcDuctSegmentTypeEnum v);
IfcDuctSegmentTypeEnum FromString(const std::string& s);}
namespace IfcDuctSilencerTypeEnum {typedef enum {FLATOVAL, RECTANGULAR, ROUND, USERDEFINED, NOTDEFINED} IfcDuctSilencerTypeEnum;
std::string ToString(IfcDuctSilencerTypeEnum v);
IfcDuctSilencerTypeEnum FromString(const std::string& s);}
namespace IfcElectricApplianceTypeEnum {typedef enum {COMPUTER, DIRECTWATERHEATER, DISHWASHER, ELECTRICCOOKER, ELECTRICHEATER, FACSIMILE, FREESTANDINGFAN, FREEZER, FRIDGE_FREEZER, HANDDRYER, INDIRECTWATERHEATER, MICROWAVE, PHOTOCOPIER, PRINTER, REFRIGERATOR, RADIANTHEATER, SCANNER, TELEPHONE, TUMBLEDRYER, TV, VENDINGMACHINE, WASHINGMACHINE, WATERHEATER, WATERCOOLER, USERDEFINED, NOTDEFINED} IfcElectricApplianceTypeEnum;
std::string ToString(IfcElectricApplianceTypeEnum v);
IfcElectricApplianceTypeEnum FromString(const std::string& s);}
namespace IfcElectricCurrentEnum {typedef enum {ALTERNATING, DIRECT, NOTDEFINED} IfcElectricCurrentEnum;
std::string ToString(IfcElectricCurrentEnum v);
IfcElectricCurrentEnum FromString(const std::string& s);}
namespace IfcElectricDistributionPointFunctionEnum {typedef enum {ALARMPANEL, CONSUMERUNIT, CONTROLPANEL, DISTRIBUTIONBOARD, GASDETECTORPANEL, INDICATORPANEL, MIMICPANEL, MOTORCONTROLCENTRE, SWITCHBOARD, USERDEFINED, NOTDEFINED} IfcElectricDistributionPointFunctionEnum;
std::string ToString(IfcElectricDistributionPointFunctionEnum v);
IfcElectricDistributionPointFunctionEnum FromString(const std::string& s);}
namespace IfcElectricFlowStorageDeviceTypeEnum {typedef enum {BATTERY, CAPACITORBANK, HARMONICFILTER, INDUCTORBANK, UPS, USERDEFINED, NOTDEFINED} IfcElectricFlowStorageDeviceTypeEnum;
std::string ToString(IfcElectricFlowStorageDeviceTypeEnum v);
IfcElectricFlowStorageDeviceTypeEnum FromString(const std::string& s);}
namespace IfcElectricGeneratorTypeEnum {typedef enum {USERDEFINED, NOTDEFINED} IfcElectricGeneratorTypeEnum;
std::string ToString(IfcElectricGeneratorTypeEnum v);
IfcElectricGeneratorTypeEnum FromString(const std::string& s);}
namespace IfcElectricHeaterTypeEnum {typedef enum {ELECTRICPOINTHEATER, ELECTRICCABLEHEATER, ELECTRICMATHEATER, USERDEFINED, NOTDEFINED} IfcElectricHeaterTypeEnum;
std::string ToString(IfcElectricHeaterTypeEnum v);
IfcElectricHeaterTypeEnum FromString(const std::string& s);}
namespace IfcElectricMotorTypeEnum {typedef enum {DC, INDUCTION, POLYPHASE, RELUCTANCESYNCHRONOUS, SYNCHRONOUS, USERDEFINED, NOTDEFINED} IfcElectricMotorTypeEnum;
std::string ToString(IfcElectricMotorTypeEnum v);
IfcElectricMotorTypeEnum FromString(const std::string& s);}
namespace IfcElectricTimeControlTypeEnum {typedef enum {TIMECLOCK, TIMEDELAY, RELAY, USERDEFINED, NOTDEFINED} IfcElectricTimeControlTypeEnum;
std::string ToString(IfcElectricTimeControlTypeEnum v);
IfcElectricTimeControlTypeEnum FromString(const std::string& s);}
namespace IfcElementAssemblyTypeEnum {typedef enum {ACCESSORY_ASSEMBLY, ARCH, BEAM_GRID, BRACED_FRAME, GIRDER, REINFORCEMENT_UNIT, RIGID_FRAME, SLAB_FIELD, TRUSS, USERDEFINED, NOTDEFINED} IfcElementAssemblyTypeEnum;
std::string ToString(IfcElementAssemblyTypeEnum v);
IfcElementAssemblyTypeEnum FromString(const std::string& s);}
namespace IfcElementCompositionEnum {typedef enum {COMPLEX, ELEMENT, PARTIAL} IfcElementCompositionEnum;
std::string ToString(IfcElementCompositionEnum v);
IfcElementCompositionEnum FromString(const std::string& s);}
namespace IfcEnergySequenceEnum {typedef enum {PRIMARY, SECONDARY, TERTIARY, AUXILIARY, USERDEFINED, NOTDEFINED} IfcEnergySequenceEnum;
std::string ToString(IfcEnergySequenceEnum v);
IfcEnergySequenceEnum FromString(const std::string& s);}
namespace IfcEnvironmentalImpactCategoryEnum {typedef enum {COMBINEDVALUE, DISPOSAL, EXTRACTION, INSTALLATION, MANUFACTURE, TRANSPORTATION, USERDEFINED, NOTDEFINED} IfcEnvironmentalImpactCategoryEnum;
std::string ToString(IfcEnvironmentalImpactCategoryEnum v);
IfcEnvironmentalImpactCategoryEnum FromString(const std::string& s);}
namespace IfcEvaporativeCoolerTypeEnum {typedef enum {DIRECTEVAPORATIVERANDOMMEDIAAIRCOOLER, DIRECTEVAPORATIVERIGIDMEDIAAIRCOOLER, DIRECTEVAPORATIVESLINGERSPACKAGEDAIRCOOLER, DIRECTEVAPORATIVEPACKAGEDROTARYAIRCOOLER, DIRECTEVAPORATIVEAIRWASHER, INDIRECTEVAPORATIVEPACKAGEAIRCOOLER, INDIRECTEVAPORATIVEWETCOIL, INDIRECTEVAPORATIVECOOLINGTOWERORCOILCOOLER, INDIRECTDIRECTCOMBINATION, USERDEFINED, NOTDEFINED} IfcEvaporativeCoolerTypeEnum;
std::string ToString(IfcEvaporativeCoolerTypeEnum v);
IfcEvaporativeCoolerTypeEnum FromString(const std::string& s);}
namespace IfcEvaporatorTypeEnum {typedef enum {DIRECTEXPANSIONSHELLANDTUBE, DIRECTEXPANSIONTUBEINTUBE, DIRECTEXPANSIONBRAZEDPLATE, FLOODEDSHELLANDTUBE, SHELLANDCOIL, USERDEFINED, NOTDEFINED} IfcEvaporatorTypeEnum;
std::string ToString(IfcEvaporatorTypeEnum v);
IfcEvaporatorTypeEnum FromString(const std::string& s);}
namespace IfcFanTypeEnum {typedef enum {CENTRIFUGALFORWARDCURVED, CENTRIFUGALRADIAL, CENTRIFUGALBACKWARDINCLINEDCURVED, CENTRIFUGALAIRFOIL, TUBEAXIAL, VANEAXIAL, PROPELLORAXIAL, USERDEFINED, NOTDEFINED} IfcFanTypeEnum;
std::string ToString(IfcFanTypeEnum v);
IfcFanTypeEnum FromString(const std::string& s);}
namespace IfcFilterTypeEnum {typedef enum {AIRPARTICLEFILTER, ODORFILTER, OILFILTER, STRAINER, WATERFILTER, USERDEFINED, NOTDEFINED} IfcFilterTypeEnum;
std::string ToString(IfcFilterTypeEnum v);
IfcFilterTypeEnum FromString(const std::string& s);}
namespace IfcFireSuppressionTerminalTypeEnum {typedef enum {BREECHINGINLET, FIREHYDRANT, HOSEREEL, SPRINKLER, SPRINKLERDEFLECTOR, USERDEFINED, NOTDEFINED} IfcFireSuppressionTerminalTypeEnum;
std::string ToString(IfcFireSuppressionTerminalTypeEnum v);
IfcFireSuppressionTerminalTypeEnum FromString(const std::string& s);}
namespace IfcFlowDirectionEnum {typedef enum {SOURCE, SINK, SOURCEANDSINK, NOTDEFINED} IfcFlowDirectionEnum;
std::string ToString(IfcFlowDirectionEnum v);
IfcFlowDirectionEnum FromString(const std::string& s);}
namespace IfcFlowInstrumentTypeEnum {typedef enum {PRESSUREGAUGE, THERMOMETER, AMMETER, FREQUENCYMETER, POWERFACTORMETER, PHASEANGLEMETER, VOLTMETER_PEAK, VOLTMETER_RMS, USERDEFINED, NOTDEFINED} IfcFlowInstrumentTypeEnum;
std::string ToString(IfcFlowInstrumentTypeEnum v);
IfcFlowInstrumentTypeEnum FromString(const std::string& s);}
namespace IfcFlowMeterTypeEnum {typedef enum {ELECTRICMETER, ENERGYMETER, FLOWMETER, GASMETER, OILMETER, WATERMETER, USERDEFINED, NOTDEFINED} IfcFlowMeterTypeEnum;
std::string ToString(IfcFlowMeterTypeEnum v);
IfcFlowMeterTypeEnum FromString(const std::string& s);}
namespace IfcFootingTypeEnum {typedef enum {FOOTING_BEAM, PAD_FOOTING, PILE_CAP, STRIP_FOOTING, USERDEFINED, NOTDEFINED} IfcFootingTypeEnum;
std::string ToString(IfcFootingTypeEnum v);
IfcFootingTypeEnum FromString(const std::string& s);}
namespace IfcGasTerminalTypeEnum {typedef enum {GASAPPLIANCE, GASBOOSTER, GASBURNER, USERDEFINED, NOTDEFINED} IfcGasTerminalTypeEnum;
std::string ToString(IfcGasTerminalTypeEnum v);
IfcGasTerminalTypeEnum FromString(const std::string& s);}
namespace IfcGeometricProjectionEnum {typedef enum {GRAPH_VIEW, SKETCH_VIEW, MODEL_VIEW, PLAN_VIEW, REFLECTED_PLAN_VIEW, SECTION_VIEW, ELEVATION_VIEW, USERDEFINED, NOTDEFINED} IfcGeometricProjectionEnum;
std::string ToString(IfcGeometricProjectionEnum v);
IfcGeometricProjectionEnum FromString(const std::string& s);}
namespace IfcGlobalOrLocalEnum {typedef enum {GLOBAL_COORDS, LOCAL_COORDS} IfcGlobalOrLocalEnum;
std::string ToString(IfcGlobalOrLocalEnum v);
IfcGlobalOrLocalEnum FromString(const std::string& s);}
namespace IfcHeatExchangerTypeEnum {typedef enum {PLATE, SHELLANDTUBE, USERDEFINED, NOTDEFINED} IfcHeatExchangerTypeEnum;
std::string ToString(IfcHeatExchangerTypeEnum v);
IfcHeatExchangerTypeEnum FromString(const std::string& s);}
namespace IfcHumidifierTypeEnum {typedef enum {STEAMINJECTION, ADIABATICAIRWASHER, ADIABATICPAN, ADIABATICWETTEDELEMENT, ADIABATICATOMIZING, ADIABATICULTRASONIC, ADIABATICRIGIDMEDIA, ADIABATICCOMPRESSEDAIRNOZZLE, ASSISTEDELECTRIC, ASSISTEDNATURALGAS, ASSISTEDPROPANE, ASSISTEDBUTANE, ASSISTEDSTEAM, USERDEFINED, NOTDEFINED} IfcHumidifierTypeEnum;
std::string ToString(IfcHumidifierTypeEnum v);
IfcHumidifierTypeEnum FromString(const std::string& s);}
namespace IfcInternalOrExternalEnum {typedef enum {INTERNAL, EXTERNAL, NOTDEFINED} IfcInternalOrExternalEnum;
std::string ToString(IfcInternalOrExternalEnum v);
IfcInternalOrExternalEnum FromString(const std::string& s);}
namespace IfcInventoryTypeEnum {typedef enum {ASSETINVENTORY, SPACEINVENTORY, FURNITUREINVENTORY, USERDEFINED, NOTDEFINED} IfcInventoryTypeEnum;
std::string ToString(IfcInventoryTypeEnum v);
IfcInventoryTypeEnum FromString(const std::string& s);}
namespace IfcJunctionBoxTypeEnum {typedef enum {USERDEFINED, NOTDEFINED} IfcJunctionBoxTypeEnum;
std::string ToString(IfcJunctionBoxTypeEnum v);
IfcJunctionBoxTypeEnum FromString(const std::string& s);}
namespace IfcLampTypeEnum {typedef enum {COMPACTFLUORESCENT, FLUORESCENT, HIGHPRESSUREMERCURY, HIGHPRESSURESODIUM, METALHALIDE, TUNGSTENFILAMENT, USERDEFINED, NOTDEFINED} IfcLampTypeEnum;
std::string ToString(IfcLampTypeEnum v);
IfcLampTypeEnum FromString(const std::string& s);}
namespace IfcLayerSetDirectionEnum {typedef enum {AXIS1, AXIS2, AXIS3} IfcLayerSetDirectionEnum;
std::string ToString(IfcLayerSetDirectionEnum v);
IfcLayerSetDirectionEnum FromString(const std::string& s);}
namespace IfcLightDistributionCurveEnum {typedef enum {TYPE_A, TYPE_B, TYPE_C, NOTDEFINED} IfcLightDistributionCurveEnum;
std::string ToString(IfcLightDistributionCurveEnum v);
IfcLightDistributionCurveEnum FromString(const std::string& s);}
namespace IfcLightEmissionSourceEnum {typedef enum {COMPACTFLUORESCENT, FLUORESCENT, HIGHPRESSUREMERCURY, HIGHPRESSURESODIUM, LIGHTEMITTINGDIODE, LOWPRESSURESODIUM, LOWVOLTAGEHALOGEN, MAINVOLTAGEHALOGEN, METALHALIDE, TUNGSTENFILAMENT, NOTDEFINED} IfcLightEmissionSourceEnum;
std::string ToString(IfcLightEmissionSourceEnum v);
IfcLightEmissionSourceEnum FromString(const std::string& s);}
namespace IfcLightFixtureTypeEnum {typedef enum {POINTSOURCE, DIRECTIONSOURCE, USERDEFINED, NOTDEFINED} IfcLightFixtureTypeEnum;
std::string ToString(IfcLightFixtureTypeEnum v);
IfcLightFixtureTypeEnum FromString(const std::string& s);}
namespace IfcLoadGroupTypeEnum {typedef enum {LOAD_GROUP, LOAD_CASE, LOAD_COMBINATION_GROUP, LOAD_COMBINATION, USERDEFINED, NOTDEFINED} IfcLoadGroupTypeEnum;
std::string ToString(IfcLoadGroupTypeEnum v);
IfcLoadGroupTypeEnum FromString(const std::string& s);}
namespace IfcLogicalOperatorEnum {typedef enum {LOGICALAND, LOGICALOR} IfcLogicalOperatorEnum;
std::string ToString(IfcLogicalOperatorEnum v);
IfcLogicalOperatorEnum FromString(const std::string& s);}
namespace IfcMemberTypeEnum {typedef enum {BRACE, CHORD, COLLAR, MEMBER, MULLION, PLATE, POST, PURLIN, RAFTER, STRINGER, STRUT, STUD, USERDEFINED, NOTDEFINED} IfcMemberTypeEnum;
std::string ToString(IfcMemberTypeEnum v);
IfcMemberTypeEnum FromString(const std::string& s);}
namespace IfcMotorConnectionTypeEnum {typedef enum {BELTDRIVE, COUPLING, DIRECTDRIVE, USERDEFINED, NOTDEFINED} IfcMotorConnectionTypeEnum;
std::string ToString(IfcMotorConnectionTypeEnum v);
IfcMotorConnectionTypeEnum FromString(const std::string& s);}
namespace IfcNullStyle {typedef enum {IFC_NULL} IfcNullStyle;
std::string ToString(IfcNullStyle v);
IfcNullStyle FromString(const std::string& s);}
namespace IfcObjectTypeEnum {typedef enum {PRODUCT, PROCESS, CONTROL, RESOURCE, ACTOR, GROUP, PROJECT, NOTDEFINED} IfcObjectTypeEnum;
std::string ToString(IfcObjectTypeEnum v);
IfcObjectTypeEnum FromString(const std::string& s);}
namespace IfcObjectiveEnum {typedef enum {CODECOMPLIANCE, DESIGNINTENT, HEALTHANDSAFETY, REQUIREMENT, SPECIFICATION, TRIGGERCONDITION, USERDEFINED, NOTDEFINED} IfcObjectiveEnum;
std::string ToString(IfcObjectiveEnum v);
IfcObjectiveEnum FromString(const std::string& s);}
namespace IfcOccupantTypeEnum {typedef enum {ASSIGNEE, ASSIGNOR, LESSEE, LESSOR, LETTINGAGENT, OWNER, TENANT, USERDEFINED, NOTDEFINED} IfcOccupantTypeEnum;
std::string ToString(IfcOccupantTypeEnum v);
IfcOccupantTypeEnum FromString(const std::string& s);}
namespace IfcOutletTypeEnum {typedef enum {AUDIOVISUALOUTLET, COMMUNICATIONSOUTLET, POWEROUTLET, USERDEFINED, NOTDEFINED} IfcOutletTypeEnum;
std::string ToString(IfcOutletTypeEnum v);
IfcOutletTypeEnum FromString(const std::string& s);}
namespace IfcPermeableCoveringOperationEnum {typedef enum {GRILL, LOUVER, SCREEN, USERDEFINED, NOTDEFINED} IfcPermeableCoveringOperationEnum;
std::string ToString(IfcPermeableCoveringOperationEnum v);
IfcPermeableCoveringOperationEnum FromString(const std::string& s);}
namespace IfcPhysicalOrVirtualEnum {typedef enum {PHYSICAL, VIRTUAL, NOTDEFINED} IfcPhysicalOrVirtualEnum;
std::string ToString(IfcPhysicalOrVirtualEnum v);
IfcPhysicalOrVirtualEnum FromString(const std::string& s);}
namespace IfcPileConstructionEnum {typedef enum {CAST_IN_PLACE, COMPOSITE, PRECAST_CONCRETE, PREFAB_STEEL, USERDEFINED, NOTDEFINED} IfcPileConstructionEnum;
std::string ToString(IfcPileConstructionEnum v);
IfcPileConstructionEnum FromString(const std::string& s);}
namespace IfcPileTypeEnum {typedef enum {COHESION, FRICTION, SUPPORT, USERDEFINED, NOTDEFINED} IfcPileTypeEnum;
std::string ToString(IfcPileTypeEnum v);
IfcPileTypeEnum FromString(const std::string& s);}
namespace IfcPipeFittingTypeEnum {typedef enum {BEND, CONNECTOR, ENTRY, EXIT, JUNCTION, OBSTRUCTION, TRANSITION, USERDEFINED, NOTDEFINED} IfcPipeFittingTypeEnum;
std::string ToString(IfcPipeFittingTypeEnum v);
IfcPipeFittingTypeEnum FromString(const std::string& s);}
namespace IfcPipeSegmentTypeEnum {typedef enum {FLEXIBLESEGMENT, RIGIDSEGMENT, GUTTER, SPOOL, USERDEFINED, NOTDEFINED} IfcPipeSegmentTypeEnum;
std::string ToString(IfcPipeSegmentTypeEnum v);
IfcPipeSegmentTypeEnum FromString(const std::string& s);}
namespace IfcPlateTypeEnum {typedef enum {CURTAIN_PANEL, SHEET, USERDEFINED, NOTDEFINED} IfcPlateTypeEnum;
std::string ToString(IfcPlateTypeEnum v);
IfcPlateTypeEnum FromString(const std::string& s);}
namespace IfcProcedureTypeEnum {typedef enum {ADVICE_CAUTION, ADVICE_NOTE, ADVICE_WARNING, CALIBRATION, DIAGNOSTIC, SHUTDOWN, STARTUP, USERDEFINED, NOTDEFINED} IfcProcedureTypeEnum;
std::string ToString(IfcProcedureTypeEnum v);
IfcProcedureTypeEnum FromString(const std::string& s);}
namespace IfcProfileTypeEnum {typedef enum {CURVE, AREA} IfcProfileTypeEnum;
std::string ToString(IfcProfileTypeEnum v);
IfcProfileTypeEnum FromString(const std::string& s);}
namespace IfcProjectOrderRecordTypeEnum {typedef enum {CHANGE, MAINTENANCE, MOVE, PURCHASE, WORK, USERDEFINED, NOTDEFINED} IfcProjectOrderRecordTypeEnum;
std::string ToString(IfcProjectOrderRecordTypeEnum v);
IfcProjectOrderRecordTypeEnum FromString(const std::string& s);}
namespace IfcProjectOrderTypeEnum {typedef enum {CHANGEORDER, MAINTENANCEWORKORDER, MOVEORDER, PURCHASEORDER, WORKORDER, USERDEFINED, NOTDEFINED} IfcProjectOrderTypeEnum;
std::string ToString(IfcProjectOrderTypeEnum v);
IfcProjectOrderTypeEnum FromString(const std::string& s);}
namespace IfcProjectedOrTrueLengthEnum {typedef enum {PROJECTED_LENGTH, TRUE_LENGTH} IfcProjectedOrTrueLengthEnum;
std::string ToString(IfcProjectedOrTrueLengthEnum v);
IfcProjectedOrTrueLengthEnum FromString(const std::string& s);}
namespace IfcPropertySourceEnum {typedef enum {DESIGN, DESIGNMAXIMUM, DESIGNMINIMUM, SIMULATED, ASBUILT, COMMISSIONING, MEASURED, USERDEFINED, NOTKNOWN} IfcPropertySourceEnum;
std::string ToString(IfcPropertySourceEnum v);
IfcPropertySourceEnum FromString(const std::string& s);}
namespace IfcProtectiveDeviceTypeEnum {typedef enum {FUSEDISCONNECTOR, CIRCUITBREAKER, EARTHFAILUREDEVICE, RESIDUALCURRENTCIRCUITBREAKER, RESIDUALCURRENTSWITCH, VARISTOR, USERDEFINED, NOTDEFINED} IfcProtectiveDeviceTypeEnum;
std::string ToString(IfcProtectiveDeviceTypeEnum v);
IfcProtectiveDeviceTypeEnum FromString(const std::string& s);}
namespace IfcPumpTypeEnum {typedef enum {CIRCULATOR, ENDSUCTION, SPLITCASE, VERTICALINLINE, VERTICALTURBINE, USERDEFINED, NOTDEFINED} IfcPumpTypeEnum;
std::string ToString(IfcPumpTypeEnum v);
IfcPumpTypeEnum FromString(const std::string& s);}
namespace IfcRailingTypeEnum {typedef enum {HANDRAIL, GUARDRAIL, BALUSTRADE, USERDEFINED, NOTDEFINED} IfcRailingTypeEnum;
std::string ToString(IfcRailingTypeEnum v);
IfcRailingTypeEnum FromString(const std::string& s);}
namespace IfcRampFlightTypeEnum {typedef enum {STRAIGHT, SPIRAL, USERDEFINED, NOTDEFINED} IfcRampFlightTypeEnum;
std::string ToString(IfcRampFlightTypeEnum v);
IfcRampFlightTypeEnum FromString(const std::string& s);}
namespace IfcRampTypeEnum {typedef enum {STRAIGHT_RUN_RAMP, TWO_STRAIGHT_RUN_RAMP, QUARTER_TURN_RAMP, TWO_QUARTER_TURN_RAMP, HALF_TURN_RAMP, SPIRAL_RAMP, USERDEFINED, NOTDEFINED} IfcRampTypeEnum;
std::string ToString(IfcRampTypeEnum v);
IfcRampTypeEnum FromString(const std::string& s);}
namespace IfcReflectanceMethodEnum {typedef enum {BLINN, FLAT, GLASS, MATT, METAL, MIRROR, PHONG, PLASTIC, STRAUSS, NOTDEFINED} IfcReflectanceMethodEnum;
std::string ToString(IfcReflectanceMethodEnum v);
IfcReflectanceMethodEnum FromString(const std::string& s);}
namespace IfcReinforcingBarRoleEnum {typedef enum {MAIN, SHEAR, LIGATURE, STUD, PUNCHING, EDGE, RING, USERDEFINED, NOTDEFINED} IfcReinforcingBarRoleEnum;
std::string ToString(IfcReinforcingBarRoleEnum v);
IfcReinforcingBarRoleEnum FromString(const std::string& s);}
namespace IfcReinforcingBarSurfaceEnum {typedef enum {PLAIN, TEXTURED} IfcReinforcingBarSurfaceEnum;
std::string ToString(IfcReinforcingBarSurfaceEnum v);
IfcReinforcingBarSurfaceEnum FromString(const std::string& s);}
namespace IfcResourceConsumptionEnum {typedef enum {CONSUMED, PARTIALLYCONSUMED, NOTCONSUMED, OCCUPIED, PARTIALLYOCCUPIED, NOTOCCUPIED, USERDEFINED, NOTDEFINED} IfcResourceConsumptionEnum;
std::string ToString(IfcResourceConsumptionEnum v);
IfcResourceConsumptionEnum FromString(const std::string& s);}
namespace IfcRibPlateDirectionEnum {typedef enum {DIRECTION_X, DIRECTION_Y} IfcRibPlateDirectionEnum;
std::string ToString(IfcRibPlateDirectionEnum v);
IfcRibPlateDirectionEnum FromString(const std::string& s);}
namespace IfcRoleEnum {typedef enum {SUPPLIER, MANUFACTURER, CONTRACTOR, SUBCONTRACTOR, ARCHITECT, STRUCTURALENGINEER, COSTENGINEER, CLIENT, BUILDINGOWNER, BUILDINGOPERATOR, MECHANICALENGINEER, ELECTRICALENGINEER, PROJECTMANAGER, FACILITIESMANAGER, CIVILENGINEER, COMISSIONINGENGINEER, ENGINEER, OWNER, CONSULTANT, CONSTRUCTIONMANAGER, FIELDCONSTRUCTIONMANAGER, RESELLER, USERDEFINED} IfcRoleEnum;
std::string ToString(IfcRoleEnum v);
IfcRoleEnum FromString(const std::string& s);}
namespace IfcRoofTypeEnum {typedef enum {FLAT_ROOF, SHED_ROOF, GABLE_ROOF, HIP_ROOF, HIPPED_GABLE_ROOF, GAMBREL_ROOF, MANSARD_ROOF, BARREL_ROOF, RAINBOW_ROOF, BUTTERFLY_ROOF, PAVILION_ROOF, DOME_ROOF, FREEFORM, NOTDEFINED} IfcRoofTypeEnum;
std::string ToString(IfcRoofTypeEnum v);
IfcRoofTypeEnum FromString(const std::string& s);}
namespace IfcSIPrefix {typedef enum {EXA, PETA, TERA, GIGA, MEGA, KILO, HECTO, DECA, DECI, CENTI, MILLI, MICRO, NANO, PICO, FEMTO, ATTO} IfcSIPrefix;
std::string ToString(IfcSIPrefix v);
IfcSIPrefix FromString(const std::string& s);}
namespace IfcSIUnitName {typedef enum {AMPERE, BECQUEREL, CANDELA, COULOMB, CUBIC_METRE, DEGREE_CELSIUS, FARAD, GRAM, GRAY, HENRY, HERTZ, JOULE, KELVIN, LUMEN, LUX, METRE, MOLE, NEWTON, OHM, PASCAL, RADIAN, SECOND, SIEMENS, SIEVERT, SQUARE_METRE, STERADIAN, TESLA, VOLT, WATT, WEBER} IfcSIUnitName;
std::string ToString(IfcSIUnitName v);
IfcSIUnitName FromString(const std::string& s);}
namespace IfcSanitaryTerminalTypeEnum {typedef enum {BATH, BIDET, CISTERN, SHOWER, SINK, SANITARYFOUNTAIN, TOILETPAN, URINAL, WASHHANDBASIN, WCSEAT, USERDEFINED, NOTDEFINED} IfcSanitaryTerminalTypeEnum;
std::string ToString(IfcSanitaryTerminalTypeEnum v);
IfcSanitaryTerminalTypeEnum FromString(const std::string& s);}
namespace IfcSectionTypeEnum {typedef enum {UNIFORM, TAPERED} IfcSectionTypeEnum;
std::string ToString(IfcSectionTypeEnum v);
IfcSectionTypeEnum FromString(const std::string& s);}
namespace IfcSensorTypeEnum {typedef enum {CO2SENSOR, FIRESENSOR, FLOWSENSOR, GASSENSOR, HEATSENSOR, HUMIDITYSENSOR, LIGHTSENSOR, MOISTURESENSOR, MOVEMENTSENSOR, PRESSURESENSOR, SMOKESENSOR, SOUNDSENSOR, TEMPERATURESENSOR, USERDEFINED, NOTDEFINED} IfcSensorTypeEnum;
std::string ToString(IfcSensorTypeEnum v);
IfcSensorTypeEnum FromString(const std::string& s);}
namespace IfcSequenceEnum {typedef enum {START_START, START_FINISH, FINISH_START, FINISH_FINISH, NOTDEFINED} IfcSequenceEnum;
std::string ToString(IfcSequenceEnum v);
IfcSequenceEnum FromString(const std::string& s);}
namespace IfcServiceLifeFactorTypeEnum {typedef enum {A_QUALITYOFCOMPONENTS, B_DESIGNLEVEL, C_WORKEXECUTIONLEVEL, D_INDOORENVIRONMENT, E_OUTDOORENVIRONMENT, F_INUSECONDITIONS, G_MAINTENANCELEVEL, USERDEFINED, NOTDEFINED} IfcServiceLifeFactorTypeEnum;
std::string ToString(IfcServiceLifeFactorTypeEnum v);
IfcServiceLifeFactorTypeEnum FromString(const std::string& s);}
namespace IfcServiceLifeTypeEnum {typedef enum {ACTUALSERVICELIFE, EXPECTEDSERVICELIFE, OPTIMISTICREFERENCESERVICELIFE, PESSIMISTICREFERENCESERVICELIFE, REFERENCESERVICELIFE} IfcServiceLifeTypeEnum;
std::string ToString(IfcServiceLifeTypeEnum v);
IfcServiceLifeTypeEnum FromString(const std::string& s);}
namespace IfcSlabTypeEnum {typedef enum {FLOOR, ROOF, LANDING, BASESLAB, USERDEFINED, NOTDEFINED} IfcSlabTypeEnum;
std::string ToString(IfcSlabTypeEnum v);
IfcSlabTypeEnum FromString(const std::string& s);}
namespace IfcSoundScaleEnum {typedef enum {DBA, DBB, DBC, NC, NR, USERDEFINED, NOTDEFINED} IfcSoundScaleEnum;
std::string ToString(IfcSoundScaleEnum v);
IfcSoundScaleEnum FromString(const std::string& s);}
namespace IfcSpaceHeaterTypeEnum {typedef enum {SECTIONALRADIATOR, PANELRADIATOR, TUBULARRADIATOR, CONVECTOR, BASEBOARDHEATER, FINNEDTUBEUNIT, UNITHEATER, USERDEFINED, NOTDEFINED} IfcSpaceHeaterTypeEnum;
std::string ToString(IfcSpaceHeaterTypeEnum v);
IfcSpaceHeaterTypeEnum FromString(const std::string& s);}
namespace IfcSpaceTypeEnum {typedef enum {USERDEFINED, NOTDEFINED} IfcSpaceTypeEnum;
std::string ToString(IfcSpaceTypeEnum v);
IfcSpaceTypeEnum FromString(const std::string& s);}
namespace IfcStackTerminalTypeEnum {typedef enum {BIRDCAGE, COWL, RAINWATERHOPPER, USERDEFINED, NOTDEFINED} IfcStackTerminalTypeEnum;
std::string ToString(IfcStackTerminalTypeEnum v);
IfcStackTerminalTypeEnum FromString(const std::string& s);}
namespace IfcStairFlightTypeEnum {typedef enum {STRAIGHT, WINDER, SPIRAL, CURVED, FREEFORM, USERDEFINED, NOTDEFINED} IfcStairFlightTypeEnum;
std::string ToString(IfcStairFlightTypeEnum v);
IfcStairFlightTypeEnum FromString(const std::string& s);}
namespace IfcStairTypeEnum {typedef enum {STRAIGHT_RUN_STAIR, TWO_STRAIGHT_RUN_STAIR, QUARTER_WINDING_STAIR, QUARTER_TURN_STAIR, HALF_WINDING_STAIR, HALF_TURN_STAIR, TWO_QUARTER_WINDING_STAIR, TWO_QUARTER_TURN_STAIR, THREE_QUARTER_WINDING_STAIR, THREE_QUARTER_TURN_STAIR, SPIRAL_STAIR, DOUBLE_RETURN_STAIR, CURVED_RUN_STAIR, TWO_CURVED_RUN_STAIR, USERDEFINED, NOTDEFINED} IfcStairTypeEnum;
std::string ToString(IfcStairTypeEnum v);
IfcStairTypeEnum FromString(const std::string& s);}
namespace IfcStateEnum {typedef enum {READWRITE, READONLY, LOCKED, READWRITELOCKED, READONLYLOCKED} IfcStateEnum;
std::string ToString(IfcStateEnum v);
IfcStateEnum FromString(const std::string& s);}
namespace IfcStructuralCurveTypeEnum {typedef enum {RIGID_JOINED_MEMBER, PIN_JOINED_MEMBER, CABLE, TENSION_MEMBER, COMPRESSION_MEMBER, USERDEFINED, NOTDEFINED} IfcStructuralCurveTypeEnum;
std::string ToString(IfcStructuralCurveTypeEnum v);
IfcStructuralCurveTypeEnum FromString(const std::string& s);}
namespace IfcStructuralSurfaceTypeEnum {typedef enum {BENDING_ELEMENT, MEMBRANE_ELEMENT, SHELL, USERDEFINED, NOTDEFINED} IfcStructuralSurfaceTypeEnum;
std::string ToString(IfcStructuralSurfaceTypeEnum v);
IfcStructuralSurfaceTypeEnum FromString(const std::string& s);}
namespace IfcSurfaceSide {typedef enum {POSITIVE, NEGATIVE, BOTH} IfcSurfaceSide;
std::string ToString(IfcSurfaceSide v);
IfcSurfaceSide FromString(const std::string& s);}
namespace IfcSurfaceTextureEnum {typedef enum {BUMP, OPACITY, REFLECTION, SELFILLUMINATION, SHININESS, SPECULAR, TEXTURE, TRANSPARENCYMAP, NOTDEFINED} IfcSurfaceTextureEnum;
std::string ToString(IfcSurfaceTextureEnum v);
IfcSurfaceTextureEnum FromString(const std::string& s);}
namespace IfcSwitchingDeviceTypeEnum {typedef enum {CONTACTOR, EMERGENCYSTOP, STARTER, SWITCHDISCONNECTOR, TOGGLESWITCH, USERDEFINED, NOTDEFINED} IfcSwitchingDeviceTypeEnum;
std::string ToString(IfcSwitchingDeviceTypeEnum v);
IfcSwitchingDeviceTypeEnum FromString(const std::string& s);}
namespace IfcTankTypeEnum {typedef enum {PREFORMED, SECTIONAL, EXPANSION, PRESSUREVESSEL, USERDEFINED, NOTDEFINED} IfcTankTypeEnum;
std::string ToString(IfcTankTypeEnum v);
IfcTankTypeEnum FromString(const std::string& s);}
namespace IfcTendonTypeEnum {typedef enum {STRAND, WIRE, BAR, COATED, USERDEFINED, NOTDEFINED} IfcTendonTypeEnum;
std::string ToString(IfcTendonTypeEnum v);
IfcTendonTypeEnum FromString(const std::string& s);}
namespace IfcTextPath {typedef enum {LEFT, RIGHT, UP, DOWN} IfcTextPath;
std::string ToString(IfcTextPath v);
IfcTextPath FromString(const std::string& s);}
namespace IfcThermalLoadSourceEnum {typedef enum {PEOPLE, LIGHTING, EQUIPMENT, VENTILATIONINDOORAIR, VENTILATIONOUTSIDEAIR, RECIRCULATEDAIR, EXHAUSTAIR, AIREXCHANGERATE, DRYBULBTEMPERATURE, RELATIVEHUMIDITY, INFILTRATION, USERDEFINED, NOTDEFINED} IfcThermalLoadSourceEnum;
std::string ToString(IfcThermalLoadSourceEnum v);
IfcThermalLoadSourceEnum FromString(const std::string& s);}
namespace IfcThermalLoadTypeEnum {typedef enum {SENSIBLE, LATENT, RADIANT, NOTDEFINED} IfcThermalLoadTypeEnum;
std::string ToString(IfcThermalLoadTypeEnum v);
IfcThermalLoadTypeEnum FromString(const std::string& s);}
namespace IfcTimeSeriesDataTypeEnum {typedef enum {CONTINUOUS, DISCRETE, DISCRETEBINARY, PIECEWISEBINARY, PIECEWISECONSTANT, PIECEWISECONTINUOUS, NOTDEFINED} IfcTimeSeriesDataTypeEnum;
std::string ToString(IfcTimeSeriesDataTypeEnum v);
IfcTimeSeriesDataTypeEnum FromString(const std::string& s);}
namespace IfcTimeSeriesScheduleTypeEnum {typedef enum {ANNUAL, MONTHLY, WEEKLY, DAILY, USERDEFINED, NOTDEFINED} IfcTimeSeriesScheduleTypeEnum;
std::string ToString(IfcTimeSeriesScheduleTypeEnum v);
IfcTimeSeriesScheduleTypeEnum FromString(const std::string& s);}
namespace IfcTransformerTypeEnum {typedef enum {CURRENT, FREQUENCY, VOLTAGE, USERDEFINED, NOTDEFINED} IfcTransformerTypeEnum;
std::string ToString(IfcTransformerTypeEnum v);
IfcTransformerTypeEnum FromString(const std::string& s);}
namespace IfcTransitionCode {typedef enum {DISCONTINUOUS, CONTINUOUS, CONTSAMEGRADIENT, CONTSAMEGRADIENTSAMECURVATURE} IfcTransitionCode;
std::string ToString(IfcTransitionCode v);
IfcTransitionCode FromString(const std::string& s);}
namespace IfcTransportElementTypeEnum {typedef enum {ELEVATOR, ESCALATOR, MOVINGWALKWAY, USERDEFINED, NOTDEFINED} IfcTransportElementTypeEnum;
std::string ToString(IfcTransportElementTypeEnum v);
IfcTransportElementTypeEnum FromString(const std::string& s);}
namespace IfcTrimmingPreference {typedef enum {CARTESIAN, PARAMETER, UNSPECIFIED} IfcTrimmingPreference;
std::string ToString(IfcTrimmingPreference v);
IfcTrimmingPreference FromString(const std::string& s);}
namespace IfcTubeBundleTypeEnum {typedef enum {FINNED, USERDEFINED, NOTDEFINED} IfcTubeBundleTypeEnum;
std::string ToString(IfcTubeBundleTypeEnum v);
IfcTubeBundleTypeEnum FromString(const std::string& s);}
namespace IfcUnitEnum {typedef enum {ABSORBEDDOSEUNIT, AMOUNTOFSUBSTANCEUNIT, AREAUNIT, DOSEEQUIVALENTUNIT, ELECTRICCAPACITANCEUNIT, ELECTRICCHARGEUNIT, ELECTRICCONDUCTANCEUNIT, ELECTRICCURRENTUNIT, ELECTRICRESISTANCEUNIT, ELECTRICVOLTAGEUNIT, ENERGYUNIT, FORCEUNIT, FREQUENCYUNIT, ILLUMINANCEUNIT, INDUCTANCEUNIT, LENGTHUNIT, LUMINOUSFLUXUNIT, LUMINOUSINTENSITYUNIT, MAGNETICFLUXDENSITYUNIT, MAGNETICFLUXUNIT, MASSUNIT, PLANEANGLEUNIT, POWERUNIT, PRESSUREUNIT, RADIOACTIVITYUNIT, SOLIDANGLEUNIT, THERMODYNAMICTEMPERATUREUNIT, TIMEUNIT, VOLUMEUNIT, USERDEFINED} IfcUnitEnum;
std::string ToString(IfcUnitEnum v);
IfcUnitEnum FromString(const std::string& s);}
namespace IfcUnitaryEquipmentTypeEnum {typedef enum {AIRHANDLER, AIRCONDITIONINGUNIT, SPLITSYSTEM, ROOFTOPUNIT, USERDEFINED, NOTDEFINED} IfcUnitaryEquipmentTypeEnum;
std::string ToString(IfcUnitaryEquipmentTypeEnum v);
IfcUnitaryEquipmentTypeEnum FromString(const std::string& s);}
namespace IfcValveTypeEnum {typedef enum {AIRRELEASE, ANTIVACUUM, CHANGEOVER, CHECK, COMMISSIONING, DIVERTING, DRAWOFFCOCK, DOUBLECHECK, DOUBLEREGULATING, FAUCET, FLUSHING, GASCOCK, GASTAP, ISOLATING, MIXING, PRESSUREREDUCING, PRESSURERELIEF, REGULATING, SAFETYCUTOFF, STEAMTRAP, STOPCOCK, USERDEFINED, NOTDEFINED} IfcValveTypeEnum;
std::string ToString(IfcValveTypeEnum v);
IfcValveTypeEnum FromString(const std::string& s);}
namespace IfcVibrationIsolatorTypeEnum {typedef enum {COMPRESSION, SPRING, USERDEFINED, NOTDEFINED} IfcVibrationIsolatorTypeEnum;
std::string ToString(IfcVibrationIsolatorTypeEnum v);
IfcVibrationIsolatorTypeEnum FromString(const std::string& s);}
namespace IfcWallTypeEnum {typedef enum {STANDARD, POLYGONAL, SHEAR, ELEMENTEDWALL, PLUMBINGWALL, USERDEFINED, NOTDEFINED} IfcWallTypeEnum;
std::string ToString(IfcWallTypeEnum v);
IfcWallTypeEnum FromString(const std::string& s);}
namespace IfcWasteTerminalTypeEnum {typedef enum {FLOORTRAP, FLOORWASTE, GULLYSUMP, GULLYTRAP, GREASEINTERCEPTOR, OILINTERCEPTOR, PETROLINTERCEPTOR, ROOFDRAIN, WASTEDISPOSALUNIT, WASTETRAP, USERDEFINED, NOTDEFINED} IfcWasteTerminalTypeEnum;
std::string ToString(IfcWasteTerminalTypeEnum v);
IfcWasteTerminalTypeEnum FromString(const std::string& s);}
namespace IfcWindowPanelOperationEnum {typedef enum {SIDEHUNGRIGHTHAND, SIDEHUNGLEFTHAND, TILTANDTURNRIGHTHAND, TILTANDTURNLEFTHAND, TOPHUNG, BOTTOMHUNG, PIVOTHORIZONTAL, PIVOTVERTICAL, SLIDINGHORIZONTAL, SLIDINGVERTICAL, REMOVABLECASEMENT, FIXEDCASEMENT, OTHEROPERATION, NOTDEFINED} IfcWindowPanelOperationEnum;
std::string ToString(IfcWindowPanelOperationEnum v);
IfcWindowPanelOperationEnum FromString(const std::string& s);}
namespace IfcWindowPanelPositionEnum {typedef enum {LEFT, MIDDLE, RIGHT, BOTTOM, TOP, NOTDEFINED} IfcWindowPanelPositionEnum;
std::string ToString(IfcWindowPanelPositionEnum v);
IfcWindowPanelPositionEnum FromString(const std::string& s);}
namespace IfcWindowStyleConstructionEnum {typedef enum {ALUMINIUM, HIGH_GRADE_STEEL, STEEL, WOOD, ALUMINIUM_WOOD, PLASTIC, OTHER_CONSTRUCTION, NOTDEFINED} IfcWindowStyleConstructionEnum;
std::string ToString(IfcWindowStyleConstructionEnum v);
IfcWindowStyleConstructionEnum FromString(const std::string& s);}
namespace IfcWindowStyleOperationEnum {typedef enum {SINGLE_PANEL, DOUBLE_PANEL_VERTICAL, DOUBLE_PANEL_HORIZONTAL, TRIPLE_PANEL_VERTICAL, TRIPLE_PANEL_BOTTOM, TRIPLE_PANEL_TOP, TRIPLE_PANEL_LEFT, TRIPLE_PANEL_RIGHT, TRIPLE_PANEL_HORIZONTAL, USERDEFINED, NOTDEFINED} IfcWindowStyleOperationEnum;
std::string ToString(IfcWindowStyleOperationEnum v);
IfcWindowStyleOperationEnum FromString(const std::string& s);}
namespace IfcWorkControlTypeEnum {typedef enum {ACTUAL, BASELINE, PLANNED, USERDEFINED, NOTDEFINED} IfcWorkControlTypeEnum;
std::string ToString(IfcWorkControlTypeEnum v);
IfcWorkControlTypeEnum FromString(const std::string& s);}
// Forward definitions
class Ifc2DCompositeCurve; class IfcActionRequest; class IfcActor; class IfcActorRole; class IfcActuatorType; class IfcAddress; class IfcAirTerminalBoxType; class IfcAirTerminalType; class IfcAirToAirHeatRecoveryType; class IfcAlarmType; class IfcAngularDimension; class IfcAnnotation; class IfcAnnotationCurveOccurrence; class IfcAnnotationFillArea; class IfcAnnotationFillAreaOccurrence; class IfcAnnotationOccurrence; class IfcAnnotationSurface; class IfcAnnotationSurfaceOccurrence; class IfcAnnotationSymbolOccurrence; class IfcAnnotationTextOccurrence; class IfcApplication; class IfcAppliedValue; class IfcAppliedValueRelationship; class IfcApproval; class IfcApprovalActorRelationship; class IfcApprovalPropertyRelationship; class IfcApprovalRelationship; class IfcArbitraryClosedProfileDef; class IfcArbitraryOpenProfileDef; class IfcArbitraryProfileDefWithVoids; class IfcAsset; class IfcAsymmetricIShapeProfileDef; class IfcAxis1Placement; class IfcAxis2Placement2D; class IfcAxis2Placement3D; class IfcBSplineCurve; class IfcBeam; class IfcBeamType; class IfcBezierCurve; class IfcBlobTexture; class IfcBlock; class IfcBoilerType; class IfcBooleanClippingResult; class IfcBooleanResult; class IfcBoundaryCondition; class IfcBoundaryEdgeCondition; class IfcBoundaryFaceCondition; class IfcBoundaryNodeCondition; class IfcBoundaryNodeConditionWarping; class IfcBoundedCurve; class IfcBoundedSurface; class IfcBoundingBox; class IfcBoxedHalfSpace; class IfcBuilding; class IfcBuildingElement; class IfcBuildingElementComponent; class IfcBuildingElementPart; class IfcBuildingElementProxy; class IfcBuildingElementProxyType; class IfcBuildingElementType; class IfcBuildingStorey; class IfcCShapeProfileDef; class IfcCableCarrierFittingType; class IfcCableCarrierSegmentType; class IfcCableSegmentType; class IfcCalendarDate; class IfcCartesianPoint; class IfcCartesianTransformationOperator; class IfcCartesianTransformationOperator2D; class IfcCartesianTransformationOperator2DnonUniform; class IfcCartesianTransformationOperator3D; class IfcCartesianTransformationOperator3DnonUniform; class IfcCenterLineProfileDef; class IfcChamferEdgeFeature; class IfcChillerType; class IfcCircle; class IfcCircleHollowProfileDef; class IfcCircleProfileDef; class IfcClassification; class IfcClassificationItem; class IfcClassificationItemRelationship; class IfcClassificationNotation; class IfcClassificationNotationFacet; class IfcClassificationReference; class IfcClosedShell; class IfcCoilType; class IfcColourRgb; class IfcColourSpecification; class IfcColumn; class IfcColumnType; class IfcComplexProperty; class IfcCompositeCurve; class IfcCompositeCurveSegment; class IfcCompositeProfileDef; class IfcCompressorType; class IfcCondenserType; class IfcCondition; class IfcConditionCriterion; class IfcConic; class IfcConnectedFaceSet; class IfcConnectionCurveGeometry; class IfcConnectionGeometry; class IfcConnectionPointEccentricity; class IfcConnectionPointGeometry; class IfcConnectionPortGeometry; class IfcConnectionSurfaceGeometry; class IfcConstraint; class IfcConstraintAggregationRelationship; class IfcConstraintClassificationRelationship; class IfcConstraintRelationship; class IfcConstructionEquipmentResource; class IfcConstructionMaterialResource; class IfcConstructionProductResource; class IfcConstructionResource; class IfcContextDependentUnit; class IfcControl; class IfcControllerType; class IfcConversionBasedUnit; class IfcCooledBeamType; class IfcCoolingTowerType; class IfcCoordinatedUniversalTimeOffset; class IfcCostItem; class IfcCostSchedule; class IfcCostValue; class IfcCovering; class IfcCoveringType; class IfcCraneRailAShapeProfileDef; class IfcCraneRailFShapeProfileDef; class IfcCrewResource; class IfcCsgPrimitive3D; class IfcCsgSolid; class IfcCurrencyRelationship; class IfcCurtainWall; class IfcCurtainWallType; class IfcCurve; class IfcCurveBoundedPlane; class IfcCurveStyle; class IfcCurveStyleFont; class IfcCurveStyleFontAndScaling; class IfcCurveStyleFontPattern; class IfcDamperType; class IfcDateAndTime; class IfcDefinedSymbol; class IfcDerivedProfileDef; class IfcDerivedUnit; class IfcDerivedUnitElement; class IfcDiameterDimension; class IfcDimensionCalloutRelationship; class IfcDimensionCurve; class IfcDimensionCurveDirectedCallout; class IfcDimensionCurveTerminator; class IfcDimensionPair; class IfcDimensionalExponents; class IfcDirection; class IfcDiscreteAccessory; class IfcDiscreteAccessoryType; class IfcDistributionChamberElement; class IfcDistributionChamberElementType; class IfcDistributionControlElement; class IfcDistributionControlElementType; class IfcDistributionElement; class IfcDistributionElementType; class IfcDistributionFlowElement; class IfcDistributionFlowElementType; class IfcDistributionPort; class IfcDocumentElectronicFormat; class IfcDocumentInformation; class IfcDocumentInformationRelationship; class IfcDocumentReference; class IfcDoor; class IfcDoorLiningProperties; class IfcDoorPanelProperties; class IfcDoorStyle; class IfcDraughtingCallout; class IfcDraughtingCalloutRelationship; class IfcDraughtingPreDefinedColour; class IfcDraughtingPreDefinedCurveFont; class IfcDraughtingPreDefinedTextFont; class IfcDuctFittingType; class IfcDuctSegmentType; class IfcDuctSilencerType; class IfcEdge; class IfcEdgeCurve; class IfcEdgeFeature; class IfcEdgeLoop; class IfcElectricApplianceType; class IfcElectricDistributionPoint; class IfcElectricFlowStorageDeviceType; class IfcElectricGeneratorType; class IfcElectricHeaterType; class IfcElectricMotorType; class IfcElectricTimeControlType; class IfcElectricalBaseProperties; class IfcElectricalCircuit; class IfcElectricalElement; class IfcElement; class IfcElementAssembly; class IfcElementComponent; class IfcElementComponentType; class IfcElementQuantity; class IfcElementType; class IfcElementarySurface; class IfcEllipse; class IfcEllipseProfileDef; class IfcEnergyConversionDevice; class IfcEnergyConversionDeviceType; class IfcEnergyProperties; class IfcEnvironmentalImpactValue; class IfcEquipmentElement; class IfcEquipmentStandard; class IfcEvaporativeCoolerType; class IfcEvaporatorType; class IfcExtendedMaterialProperties; class IfcExternalReference; class IfcExternallyDefinedHatchStyle; class IfcExternallyDefinedSurfaceStyle; class IfcExternallyDefinedSymbol; class IfcExternallyDefinedTextFont; class IfcExtrudedAreaSolid; class IfcFace; class IfcFaceBasedSurfaceModel; class IfcFaceBound; class IfcFaceOuterBound; class IfcFaceSurface; class IfcFacetedBrep; class IfcFacetedBrepWithVoids; class IfcFailureConnectionCondition; class IfcFanType; class IfcFastener; class IfcFastenerType; class IfcFeatureElement; class IfcFeatureElementAddition; class IfcFeatureElementSubtraction; class IfcFillAreaStyle; class IfcFillAreaStyleHatching; class IfcFillAreaStyleTileSymbolWithStyle; class IfcFillAreaStyleTiles; class IfcFilterType; class IfcFireSuppressionTerminalType; class IfcFlowController; class IfcFlowControllerType; class IfcFlowFitting; class IfcFlowFittingType; class IfcFlowInstrumentType; class IfcFlowMeterType; class IfcFlowMovingDevice; class IfcFlowMovingDeviceType; class IfcFlowSegment; class IfcFlowSegmentType; class IfcFlowStorageDevice; class IfcFlowStorageDeviceType; class IfcFlowTerminal; class IfcFlowTerminalType; class IfcFlowTreatmentDevice; class IfcFlowTreatmentDeviceType; class IfcFluidFlowProperties; class IfcFooting; class IfcFuelProperties; class IfcFurnishingElement; class IfcFurnishingElementType; class IfcFurnitureStandard; class IfcFurnitureType; class IfcGasTerminalType; class IfcGeneralMaterialProperties; class IfcGeneralProfileProperties; class IfcGeometricCurveSet; class IfcGeometricRepresentationContext; class IfcGeometricRepresentationItem; class IfcGeometricRepresentationSubContext; class IfcGeometricSet; class IfcGrid; class IfcGridAxis; class IfcGridPlacement; class IfcGroup; class IfcHalfSpaceSolid; class IfcHeatExchangerType; class IfcHumidifierType; class IfcHygroscopicMaterialProperties; class IfcIShapeProfileDef; class IfcImageTexture; class IfcInventory; class IfcIrregularTimeSeries; class IfcIrregularTimeSeriesValue; class IfcJunctionBoxType; class IfcLShapeProfileDef; class IfcLaborResource; class IfcLampType; class IfcLibraryInformation; class IfcLibraryReference; class IfcLightDistributionData; class IfcLightFixtureType; class IfcLightIntensityDistribution; class IfcLightSource; class IfcLightSourceAmbient; class IfcLightSourceDirectional; class IfcLightSourceGoniometric; class IfcLightSourcePositional; class IfcLightSourceSpot; class IfcLine; class IfcLinearDimension; class IfcLocalPlacement; class IfcLocalTime; class IfcLoop; class IfcManifoldSolidBrep; class IfcMappedItem; class IfcMaterial; class IfcMaterialClassificationRelationship; class IfcMaterialDefinitionRepresentation; class IfcMaterialLayer; class IfcMaterialLayerSet; class IfcMaterialLayerSetUsage; class IfcMaterialList; class IfcMaterialProperties; class IfcMeasureWithUnit; class IfcMechanicalConcreteMaterialProperties; class IfcMechanicalFastener; class IfcMechanicalFastenerType; class IfcMechanicalMaterialProperties; class IfcMechanicalSteelMaterialProperties; class IfcMember; class IfcMemberType; class IfcMetric; class IfcMonetaryUnit; class IfcMotorConnectionType; class IfcMove; class IfcNamedUnit; class IfcObject; class IfcObjectDefinition; class IfcObjectPlacement; class IfcObjective; class IfcOccupant; class IfcOffsetCurve2D; class IfcOffsetCurve3D; class IfcOneDirectionRepeatFactor; class IfcOpenShell; class IfcOpeningElement; class IfcOpticalMaterialProperties; class IfcOrderAction; class IfcOrganization; class IfcOrganizationRelationship; class IfcOrientedEdge; class IfcOutletType; class IfcOwnerHistory; class IfcParameterizedProfileDef; class IfcPath; class IfcPerformanceHistory; class IfcPermeableCoveringProperties; class IfcPermit; class IfcPerson; class IfcPersonAndOrganization; class IfcPhysicalComplexQuantity; class IfcPhysicalQuantity; class IfcPhysicalSimpleQuantity; class IfcPile; class IfcPipeFittingType; class IfcPipeSegmentType; class IfcPixelTexture; class IfcPlacement; class IfcPlanarBox; class IfcPlanarExtent; class IfcPlane; class IfcPlate; class IfcPlateType; class IfcPoint; class IfcPointOnCurve; class IfcPointOnSurface; class IfcPolyLoop; class IfcPolygonalBoundedHalfSpace; class IfcPolyline; class IfcPort; class IfcPostalAddress; class IfcPreDefinedColour; class IfcPreDefinedCurveFont; class IfcPreDefinedDimensionSymbol; class IfcPreDefinedItem; class IfcPreDefinedPointMarkerSymbol; class IfcPreDefinedSymbol; class IfcPreDefinedTerminatorSymbol; class IfcPreDefinedTextFont; class IfcPresentationLayerAssignment; class IfcPresentationLayerWithStyle; class IfcPresentationStyle; class IfcPresentationStyleAssignment; class IfcProcedure; class IfcProcess; class IfcProduct; class IfcProductDefinitionShape; class IfcProductRepresentation; class IfcProductsOfCombustionProperties; class IfcProfileDef; class IfcProfileProperties; class IfcProject; class IfcProjectOrder; class IfcProjectOrderRecord; class IfcProjectionCurve; class IfcProjectionElement; class IfcProperty; class IfcPropertyBoundedValue; class IfcPropertyConstraintRelationship; class IfcPropertyDefinition; class IfcPropertyDependencyRelationship; class IfcPropertyEnumeratedValue; class IfcPropertyEnumeration; class IfcPropertyListValue; class IfcPropertyReferenceValue; class IfcPropertySet; class IfcPropertySetDefinition; class IfcPropertySingleValue; class IfcPropertyTableValue; class IfcProtectiveDeviceType; class IfcProxy; class IfcPumpType; class IfcQuantityArea; class IfcQuantityCount; class IfcQuantityLength; class IfcQuantityTime; class IfcQuantityVolume; class IfcQuantityWeight; class IfcRadiusDimension; class IfcRailing; class IfcRailingType; class IfcRamp; class IfcRampFlight; class IfcRampFlightType; class IfcRationalBezierCurve; class IfcRectangleHollowProfileDef; class IfcRectangleProfileDef; class IfcRectangularPyramid; class IfcRectangularTrimmedSurface; class IfcReferencesValueDocument; class IfcRegularTimeSeries; class IfcReinforcementBarProperties; class IfcReinforcementDefinitionProperties; class IfcReinforcingBar; class IfcReinforcingElement; class IfcReinforcingMesh; class IfcRelAggregates; class IfcRelAssigns; class IfcRelAssignsTasks; class IfcRelAssignsToActor; class IfcRelAssignsToControl; class IfcRelAssignsToGroup; class IfcRelAssignsToProcess; class IfcRelAssignsToProduct; class IfcRelAssignsToProjectOrder; class IfcRelAssignsToResource; class IfcRelAssociates; class IfcRelAssociatesAppliedValue; class IfcRelAssociatesApproval; class IfcRelAssociatesClassification; class IfcRelAssociatesConstraint; class IfcRelAssociatesDocument; class IfcRelAssociatesLibrary; class IfcRelAssociatesMaterial; class IfcRelAssociatesProfileProperties; class IfcRelConnects; class IfcRelConnectsElements; class IfcRelConnectsPathElements; class IfcRelConnectsPortToElement; class IfcRelConnectsPorts; class IfcRelConnectsStructuralActivity; class IfcRelConnectsStructuralElement; class IfcRelConnectsStructuralMember; class IfcRelConnectsWithEccentricity; class IfcRelConnectsWithRealizingElements; class IfcRelContainedInSpatialStructure; class IfcRelCoversBldgElements; class IfcRelCoversSpaces; class IfcRelDecomposes; class IfcRelDefines; class IfcRelDefinesByProperties; class IfcRelDefinesByType; class IfcRelFillsElement; class IfcRelFlowControlElements; class IfcRelInteractionRequirements; class IfcRelNests; class IfcRelOccupiesSpaces; class IfcRelOverridesProperties; class IfcRelProjectsElement; class IfcRelReferencedInSpatialStructure; class IfcRelSchedulesCostItems; class IfcRelSequence; class IfcRelServicesBuildings; class IfcRelSpaceBoundary; class IfcRelVoidsElement; class IfcRelationship; class IfcRelaxation; class IfcRepresentation; class IfcRepresentationContext; class IfcRepresentationItem; class IfcRepresentationMap; class IfcResource; class IfcRevolvedAreaSolid; class IfcRibPlateProfileProperties; class IfcRightCircularCone; class IfcRightCircularCylinder; class IfcRoof; class IfcRoot; class IfcRoundedEdgeFeature; class IfcRoundedRectangleProfileDef; class IfcSIUnit; class IfcSanitaryTerminalType; class IfcScheduleTimeControl; class IfcSectionProperties; class IfcSectionReinforcementProperties; class IfcSectionedSpine; class IfcSensorType; class IfcServiceLife; class IfcServiceLifeFactor; class IfcShapeAspect; class IfcShapeModel; class IfcShapeRepresentation; class IfcShellBasedSurfaceModel; class IfcSimpleProperty; class IfcSite; class IfcSlab; class IfcSlabType; class IfcSlippageConnectionCondition; class IfcSolidModel; class IfcSoundProperties; class IfcSoundValue; class IfcSpace; class IfcSpaceHeaterType; class IfcSpaceProgram; class IfcSpaceThermalLoadProperties; class IfcSpaceType; class IfcSpatialStructureElement; class IfcSpatialStructureElementType; class IfcSphere; class IfcStackTerminalType; class IfcStair; class IfcStairFlight; class IfcStairFlightType; class IfcStructuralAction; class IfcStructuralActivity; class IfcStructuralAnalysisModel; class IfcStructuralConnection; class IfcStructuralConnectionCondition; class IfcStructuralCurveConnection; class IfcStructuralCurveMember; class IfcStructuralCurveMemberVarying; class IfcStructuralItem; class IfcStructuralLinearAction; class IfcStructuralLinearActionVarying; class IfcStructuralLoad; class IfcStructuralLoadGroup; class IfcStructuralLoadLinearForce; class IfcStructuralLoadPlanarForce; class IfcStructuralLoadSingleDisplacement; class IfcStructuralLoadSingleDisplacementDistortion; class IfcStructuralLoadSingleForce; class IfcStructuralLoadSingleForceWarping; class IfcStructuralLoadStatic; class IfcStructuralLoadTemperature; class IfcStructuralMember; class IfcStructuralPlanarAction; class IfcStructuralPlanarActionVarying; class IfcStructuralPointAction; class IfcStructuralPointConnection; class IfcStructuralPointReaction; class IfcStructuralProfileProperties; class IfcStructuralReaction; class IfcStructuralResultGroup; class IfcStructuralSteelProfileProperties; class IfcStructuralSurfaceConnection; class IfcStructuralSurfaceMember; class IfcStructuralSurfaceMemberVarying; class IfcStructuredDimensionCallout; class IfcStyleModel; class IfcStyledItem; class IfcStyledRepresentation; class IfcSubContractResource; class IfcSubedge; class IfcSurface; class IfcSurfaceCurveSweptAreaSolid; class IfcSurfaceOfLinearExtrusion; class IfcSurfaceOfRevolution; class IfcSurfaceStyle; class IfcSurfaceStyleLighting; class IfcSurfaceStyleRefraction; class IfcSurfaceStyleRendering; class IfcSurfaceStyleShading; class IfcSurfaceStyleWithTextures; class IfcSurfaceTexture; class IfcSweptAreaSolid; class IfcSweptDiskSolid; class IfcSweptSurface; class IfcSwitchingDeviceType; class IfcSymbolStyle; class IfcSystem; class IfcSystemFurnitureElementType; class IfcTShapeProfileDef; class IfcTable; class IfcTableRow; class IfcTankType; class IfcTask; class IfcTelecomAddress; class IfcTendon; class IfcTendonAnchor; class IfcTerminatorSymbol; class IfcTextLiteral; class IfcTextLiteralWithExtent; class IfcTextStyle; class IfcTextStyleFontModel; class IfcTextStyleForDefinedFont; class IfcTextStyleTextModel; class IfcTextStyleWithBoxCharacteristics; class IfcTextureCoordinate; class IfcTextureCoordinateGenerator; class IfcTextureMap; class IfcTextureVertex; class IfcThermalMaterialProperties; class IfcTimeSeries; class IfcTimeSeriesReferenceRelationship; class IfcTimeSeriesSchedule; class IfcTimeSeriesValue; class IfcTopologicalRepresentationItem; class IfcTopologyRepresentation; class IfcTransformerType; class IfcTransportElement; class IfcTransportElementType; class IfcTrapeziumProfileDef; class IfcTrimmedCurve; class IfcTubeBundleType; class IfcTwoDirectionRepeatFactor; class IfcTypeObject; class IfcTypeProduct; class IfcUShapeProfileDef; class IfcUnitAssignment; class IfcUnitaryEquipmentType; class IfcValveType; class IfcVector; class IfcVertex; class IfcVertexBasedTextureMap; class IfcVertexLoop; class IfcVertexPoint; class IfcVibrationIsolatorType; class IfcVirtualElement; class IfcVirtualGridIntersection; class IfcWall; class IfcWallStandardCase; class IfcWallType; class IfcWasteTerminalType; class IfcWaterProperties; class IfcWindow; class IfcWindowLiningProperties; class IfcWindowPanelProperties; class IfcWindowStyle; class IfcWorkControl; class IfcWorkPlan; class IfcWorkSchedule; class IfcZShapeProfileDef; class IfcZone;
class IfcActorRole : public IfcBaseClass {
public:
IfcRoleEnum::IfcRoleEnum Role();
bool hasUserDefinedRole();
IfcLabel UserDefinedRole();
bool hasDescription();
IfcText Description();
bool is(Type::Enum v);
Type::Enum type();
static Type::Enum Class();
IfcActorRole (IfcAbstractEntityPtr e = IfcAbstractEntityPtr());
typedef SHARED_PTR ptr;
typedef SHARED_PTR< IfcTemplatedEntityList > list;
typedef IfcTemplatedEntityList::it it;
};
class IfcAddress : public IfcBaseClass {
public:
bool hasPurpose();
IfcAddressTypeEnum::IfcAddressTypeEnum Purpose();
bool hasDescription();
IfcText Description();
bool hasUserDefinedPurpose();
IfcLabel UserDefinedPurpose();
SHARED_PTR< IfcTemplatedEntityList > OfPerson(); // INVERSE IfcPerson::Addresses
SHARED_PTR< IfcTemplatedEntityList > OfOrganization(); // INVERSE IfcOrganization::Addresses
bool is(Type::Enum v);
Type::Enum type();
static Type::Enum Class();
IfcAddress (IfcAbstractEntityPtr e = IfcAbstractEntityPtr());
typedef SHARED_PTR ptr;
typedef SHARED_PTR< IfcTemplatedEntityList > list;
typedef IfcTemplatedEntityList::it it;
};
class IfcApplication : public IfcBaseClass {
public:
SHARED_PTR ApplicationDeveloper();
IfcLabel Version();
IfcLabel ApplicationFullName();
IfcIdentifier ApplicationIdentifier();
bool is(Type::Enum v);
Type::Enum type();
static Type::Enum Class();
IfcApplication (IfcAbstractEntityPtr e = IfcAbstractEntityPtr());
typedef SHARED_PTR ptr;
typedef SHARED_PTR< IfcTemplatedEntityList > list;
typedef IfcTemplatedEntityList::it it;
};
class IfcAppliedValue : public IfcBaseClass {
public:
bool hasName();
IfcLabel Name();
bool hasDescription();
IfcText Description();
bool hasAppliedValue();
IfcAppliedValueSelect AppliedValue();
bool hasUnitBasis();
SHARED_PTR UnitBasis();
bool hasApplicableDate();
IfcDateTimeSelect ApplicableDate();
bool hasFixedUntilDate();
IfcDateTimeSelect FixedUntilDate();
SHARED_PTR< IfcTemplatedEntityList > ValuesReferenced(); // INVERSE IfcReferencesValueDocument::ReferencingValues
SHARED_PTR< IfcTemplatedEntityList > ValueOfComponents(); // INVERSE IfcAppliedValueRelationship::ComponentOfTotal
SHARED_PTR< IfcTemplatedEntityList > IsComponentIn(); // INVERSE IfcAppliedValueRelationship::Components
bool is(Type::Enum v);
Type::Enum type();
static Type::Enum Class();
IfcAppliedValue (IfcAbstractEntityPtr e = IfcAbstractEntityPtr());
typedef SHARED_PTR ptr;
typedef SHARED_PTR< IfcTemplatedEntityList > list;
typedef IfcTemplatedEntityList::it it;
};
class IfcAppliedValueRelationship : public IfcBaseClass {
public:
SHARED_PTR ComponentOfTotal();
SHARED_PTR< IfcTemplatedEntityList > Components();
IfcArithmeticOperatorEnum::IfcArithmeticOperatorEnum ArithmeticOperator();
bool hasName();
IfcLabel Name();
bool hasDescription();
IfcText Description();
bool is(Type::Enum v);
Type::Enum type();
static Type::Enum Class();
IfcAppliedValueRelationship (IfcAbstractEntityPtr e = IfcAbstractEntityPtr());
typedef SHARED_PTR ptr;
typedef SHARED_PTR< IfcTemplatedEntityList > list;
typedef IfcTemplatedEntityList::it it;
};
class IfcApproval : public IfcBaseClass {
public:
bool hasDescription();
IfcText Description();
IfcDateTimeSelect ApprovalDateTime();
bool hasApprovalStatus();
IfcLabel ApprovalStatus();
bool hasApprovalLevel();
IfcLabel ApprovalLevel();
bool hasApprovalQualifier();
IfcText ApprovalQualifier();
IfcLabel Name();
IfcIdentifier Identifier();
SHARED_PTR< IfcTemplatedEntityList > Actors(); // INVERSE IfcApprovalActorRelationship::Approval
SHARED_PTR< IfcTemplatedEntityList > IsRelatedWith(); // INVERSE IfcApprovalRelationship::RelatedApproval
SHARED_PTR< IfcTemplatedEntityList > Relates(); // INVERSE IfcApprovalRelationship::RelatingApproval
bool is(Type::Enum v);
Type::Enum type();
static Type::Enum Class();
IfcApproval (IfcAbstractEntityPtr e = IfcAbstractEntityPtr());
typedef SHARED_PTR ptr;
typedef SHARED_PTR< IfcTemplatedEntityList > list;
typedef IfcTemplatedEntityList::it it;
};
class IfcApprovalActorRelationship : public IfcBaseClass {
public:
IfcActorSelect Actor();
SHARED_PTR Approval();
SHARED_PTR Role();
bool is(Type::Enum v);
Type::Enum type();
static Type::Enum Class();
IfcApprovalActorRelationship (IfcAbstractEntityPtr e = IfcAbstractEntityPtr());
typedef SHARED_PTR ptr;
typedef SHARED_PTR< IfcTemplatedEntityList > list;
typedef IfcTemplatedEntityList::it it;
};
class IfcApprovalPropertyRelationship : public IfcBaseClass {
public:
SHARED_PTR< IfcTemplatedEntityList > ApprovedProperties();
SHARED_PTR Approval();
bool is(Type::Enum v);
Type::Enum type();
static Type::Enum Class();
IfcApprovalPropertyRelationship (IfcAbstractEntityPtr e = IfcAbstractEntityPtr());
typedef SHARED_PTR ptr;
typedef SHARED_PTR< IfcTemplatedEntityList > list;
typedef IfcTemplatedEntityList::it it;
};
class IfcApprovalRelationship : public IfcBaseClass {
public:
SHARED_PTR RelatedApproval();
SHARED_PTR RelatingApproval();
bool hasDescription();
IfcText Description();
IfcLabel Name();
bool is(Type::Enum v);
Type::Enum type();
static Type::Enum Class();
IfcApprovalRelationship (IfcAbstractEntityPtr e = IfcAbstractEntityPtr());
typedef SHARED_PTR ptr;
typedef SHARED_PTR< IfcTemplatedEntityList > list;
typedef IfcTemplatedEntityList::it it;
};
class IfcBoundaryCondition : public IfcBaseClass {
public:
bool hasName();
IfcLabel Name();
bool is(Type::Enum v);
Type::Enum type();
static Type::Enum Class();
IfcBoundaryCondition (IfcAbstractEntityPtr e = IfcAbstractEntityPtr());
typedef SHARED_PTR ptr;
typedef SHARED_PTR< IfcTemplatedEntityList > list;
typedef IfcTemplatedEntityList::it it;
};
class IfcBoundaryEdgeCondition : public IfcBoundaryCondition {
public:
bool hasLinearStiffnessByLengthX();
IfcModulusOfLinearSubgradeReactionMeasure LinearStiffnessByLengthX();
bool hasLinearStiffnessByLengthY();
IfcModulusOfLinearSubgradeReactionMeasure LinearStiffnessByLengthY();
bool hasLinearStiffnessByLengthZ();
IfcModulusOfLinearSubgradeReactionMeasure LinearStiffnessByLengthZ();
bool hasRotationalStiffnessByLengthX();
IfcModulusOfRotationalSubgradeReactionMeasure RotationalStiffnessByLengthX();
bool hasRotationalStiffnessByLengthY();
IfcModulusOfRotationalSubgradeReactionMeasure RotationalStiffnessByLengthY();
bool hasRotationalStiffnessByLengthZ();
IfcModulusOfRotationalSubgradeReactionMeasure RotationalStiffnessByLengthZ();
bool is(Type::Enum v);
Type::Enum type();
static Type::Enum Class();
IfcBoundaryEdgeCondition (IfcAbstractEntityPtr e = IfcAbstractEntityPtr());
typedef SHARED_PTR ptr;
typedef SHARED_PTR< IfcTemplatedEntityList > list;
typedef IfcTemplatedEntityList::it it;
};
class IfcBoundaryFaceCondition : public IfcBoundaryCondition {
public:
bool hasLinearStiffnessByAreaX();
IfcModulusOfSubgradeReactionMeasure LinearStiffnessByAreaX();
bool hasLinearStiffnessByAreaY();
IfcModulusOfSubgradeReactionMeasure LinearStiffnessByAreaY();
bool hasLinearStiffnessByAreaZ();
IfcModulusOfSubgradeReactionMeasure LinearStiffnessByAreaZ();
bool is(Type::Enum v);
Type::Enum type();
static Type::Enum Class();
IfcBoundaryFaceCondition (IfcAbstractEntityPtr e = IfcAbstractEntityPtr());
typedef SHARED_PTR ptr;
typedef SHARED_PTR< IfcTemplatedEntityList > list;
typedef IfcTemplatedEntityList::it it;
};
class IfcBoundaryNodeCondition : public IfcBoundaryCondition {
public:
bool hasLinearStiffnessX();
IfcLinearStiffnessMeasure LinearStiffnessX();
bool hasLinearStiffnessY();
IfcLinearStiffnessMeasure LinearStiffnessY();
bool hasLinearStiffnessZ();
IfcLinearStiffnessMeasure LinearStiffnessZ();
bool hasRotationalStiffnessX();
IfcRotationalStiffnessMeasure RotationalStiffnessX();
bool hasRotationalStiffnessY();
IfcRotationalStiffnessMeasure RotationalStiffnessY();
bool hasRotationalStiffnessZ();
IfcRotationalStiffnessMeasure RotationalStiffnessZ();
bool is(Type::Enum v);
Type::Enum type();
static Type::Enum Class();
IfcBoundaryNodeCondition (IfcAbstractEntityPtr e = IfcAbstractEntityPtr());
typedef SHARED_PTR ptr;
typedef SHARED_PTR< IfcTemplatedEntityList > list;
typedef IfcTemplatedEntityList::it it;
};
class IfcBoundaryNodeConditionWarping : public IfcBoundaryNodeCondition {
public:
bool hasWarpingStiffness();
IfcWarpingMomentMeasure WarpingStiffness();
bool is(Type::Enum v);
Type::Enum type();
static Type::Enum Class();
IfcBoundaryNodeConditionWarping (IfcAbstractEntityPtr e = IfcAbstractEntityPtr());
typedef SHARED_PTR ptr;
typedef SHARED_PTR< IfcTemplatedEntityList > list;
typedef IfcTemplatedEntityList::it it;
};
class IfcCalendarDate : public IfcBaseClass {
public:
IfcDayInMonthNumber DayComponent();
IfcMonthInYearNumber MonthComponent();
IfcYearNumber YearComponent();
bool is(Type::Enum v);
Type::Enum type();
static Type::Enum Class();
IfcCalendarDate (IfcAbstractEntityPtr e = IfcAbstractEntityPtr());
typedef SHARED_PTR ptr;
typedef SHARED_PTR< IfcTemplatedEntityList > list;
typedef IfcTemplatedEntityList::it it;
};
class IfcClassification : public IfcBaseClass {
public:
IfcLabel Source();
IfcLabel Edition();
bool hasEditionDate();
SHARED_PTR EditionDate();
IfcLabel Name();
SHARED_PTR< IfcTemplatedEntityList > Contains(); // INVERSE IfcClassificationItem::ItemOf
bool is(Type::Enum v);
Type::Enum type();
static Type::Enum Class();
IfcClassification (IfcAbstractEntityPtr e = IfcAbstractEntityPtr());
typedef SHARED_PTR ptr;
typedef SHARED_PTR< IfcTemplatedEntityList > list;
typedef IfcTemplatedEntityList::it it;
};
class IfcClassificationItem : public IfcBaseClass {
public:
SHARED_PTR Notation();
bool hasItemOf();
SHARED_PTR ItemOf();
IfcLabel Title();
SHARED_PTR< IfcTemplatedEntityList > IsClassifiedItemIn(); // INVERSE IfcClassificationItemRelationship::RelatedItems
SHARED_PTR< IfcTemplatedEntityList > IsClassifyingItemIn(); // INVERSE IfcClassificationItemRelationship::RelatingItem
bool is(Type::Enum v);
Type::Enum type();
static Type::Enum Class();
IfcClassificationItem (IfcAbstractEntityPtr e = IfcAbstractEntityPtr());
typedef SHARED_PTR ptr;
typedef SHARED_PTR< IfcTemplatedEntityList > list;
typedef IfcTemplatedEntityList::it it;
};
class IfcClassificationItemRelationship : public IfcBaseClass {
public:
SHARED_PTR RelatingItem();
SHARED_PTR< IfcTemplatedEntityList > RelatedItems();
bool is(Type::Enum v);
Type::Enum type();
static Type::Enum Class();
IfcClassificationItemRelationship (IfcAbstractEntityPtr e = IfcAbstractEntityPtr());
typedef SHARED_PTR ptr;
typedef SHARED_PTR< IfcTemplatedEntityList > list;
typedef IfcTemplatedEntityList::it it;
};
class IfcClassificationNotation : public IfcBaseClass {
public:
SHARED_PTR< IfcTemplatedEntityList > NotationFacets();
bool is(Type::Enum v);
Type::Enum type();
static Type::Enum Class();
IfcClassificationNotation (IfcAbstractEntityPtr e = IfcAbstractEntityPtr());
typedef SHARED_PTR ptr;
typedef SHARED_PTR< IfcTemplatedEntityList > list;
typedef IfcTemplatedEntityList::it it;
};
class IfcClassificationNotationFacet : public IfcBaseClass {
public:
IfcLabel NotationValue();
bool is(Type::Enum v);
Type::Enum type();
static Type::Enum Class();
IfcClassificationNotationFacet (IfcAbstractEntityPtr e = IfcAbstractEntityPtr());
typedef SHARED_PTR ptr;
typedef SHARED_PTR< IfcTemplatedEntityList > list;
typedef IfcTemplatedEntityList::it it;
};
class IfcColourSpecification : public IfcBaseClass {
public:
bool hasName();
IfcLabel Name();
bool is(Type::Enum v);
Type::Enum type();
static Type::Enum Class();
IfcColourSpecification (IfcAbstractEntityPtr e = IfcAbstractEntityPtr());
typedef SHARED_PTR ptr;
typedef SHARED_PTR< IfcTemplatedEntityList > list;
typedef IfcTemplatedEntityList::it it;
};
class IfcConnectionGeometry : public IfcBaseClass {
public:
bool is(Type::Enum v);
Type::Enum type();
static Type::Enum Class();
IfcConnectionGeometry (IfcAbstractEntityPtr e = IfcAbstractEntityPtr());
typedef SHARED_PTR ptr;
typedef SHARED_PTR< IfcTemplatedEntityList > list;
typedef IfcTemplatedEntityList::it it;
};
class IfcConnectionPointGeometry : public IfcConnectionGeometry {
public:
IfcPointOrVertexPoint PointOnRelatingElement();
bool hasPointOnRelatedElement();
IfcPointOrVertexPoint PointOnRelatedElement();
bool is(Type::Enum v);
Type::Enum type();
static Type::Enum Class();
IfcConnectionPointGeometry (IfcAbstractEntityPtr e = IfcAbstractEntityPtr());
typedef SHARED_PTR ptr;
typedef SHARED_PTR< IfcTemplatedEntityList > list;
typedef IfcTemplatedEntityList::it it;
};
class IfcConnectionPortGeometry : public IfcConnectionGeometry {
public:
IfcAxis2Placement LocationAtRelatingElement();
bool hasLocationAtRelatedElement();
IfcAxis2Placement LocationAtRelatedElement();
SHARED_PTR ProfileOfPort();
bool is(Type::Enum v);
Type::Enum type();
static Type::Enum Class();
IfcConnectionPortGeometry (IfcAbstractEntityPtr e = IfcAbstractEntityPtr());
typedef SHARED_PTR ptr;
typedef SHARED_PTR< IfcTemplatedEntityList > list;
typedef IfcTemplatedEntityList::it it;
};
class IfcConnectionSurfaceGeometry : public IfcConnectionGeometry {
public:
IfcSurfaceOrFaceSurface SurfaceOnRelatingElement();
bool hasSurfaceOnRelatedElement();
IfcSurfaceOrFaceSurface SurfaceOnRelatedElement();
bool is(Type::Enum v);
Type::Enum type();
static Type::Enum Class();
IfcConnectionSurfaceGeometry (IfcAbstractEntityPtr e = IfcAbstractEntityPtr());
typedef SHARED_PTR ptr;
typedef SHARED_PTR< IfcTemplatedEntityList > list;
typedef IfcTemplatedEntityList::it it;
};
class IfcConstraint : public IfcBaseClass {
public:
IfcLabel Name();
bool hasDescription();
IfcText Description();
IfcConstraintEnum::IfcConstraintEnum ConstraintGrade();
bool hasConstraintSource();
IfcLabel ConstraintSource();
bool hasCreatingActor();
IfcActorSelect CreatingActor();
bool hasCreationTime();
IfcDateTimeSelect CreationTime();
bool hasUserDefinedGrade();
IfcLabel UserDefinedGrade();
SHARED_PTR< IfcTemplatedEntityList > ClassifiedAs(); // INVERSE IfcConstraintClassificationRelationship::ClassifiedConstraint
SHARED_PTR< IfcTemplatedEntityList > RelatesConstraints(); // INVERSE IfcConstraintRelationship::RelatingConstraint
SHARED_PTR< IfcTemplatedEntityList > IsRelatedWith(); // INVERSE IfcConstraintRelationship::RelatedConstraints
SHARED_PTR< IfcTemplatedEntityList > PropertiesForConstraint(); // INVERSE IfcPropertyConstraintRelationship::RelatingConstraint
SHARED_PTR< IfcTemplatedEntityList > Aggregates(); // INVERSE IfcConstraintAggregationRelationship::RelatingConstraint
SHARED_PTR< IfcTemplatedEntityList > IsAggregatedIn(); // INVERSE IfcConstraintAggregationRelationship::RelatedConstraints
bool is(Type::Enum v);
Type::Enum type();
static Type::Enum Class();
IfcConstraint (IfcAbstractEntityPtr e = IfcAbstractEntityPtr());
typedef SHARED_PTR ptr;
typedef SHARED_PTR< IfcTemplatedEntityList > list;
typedef IfcTemplatedEntityList::it it;
};
class IfcConstraintAggregationRelationship : public IfcBaseClass {
public:
bool hasName();
IfcLabel Name();
bool hasDescription();
IfcText Description();
SHARED_PTR RelatingConstraint();
SHARED_PTR< IfcTemplatedEntityList > RelatedConstraints();
IfcLogicalOperatorEnum::IfcLogicalOperatorEnum LogicalAggregator();
bool is(Type::Enum v);
Type::Enum type();
static Type::Enum Class();
IfcConstraintAggregationRelationship (IfcAbstractEntityPtr e = IfcAbstractEntityPtr());
typedef SHARED_PTR ptr;
typedef SHARED_PTR< IfcTemplatedEntityList > list;
typedef IfcTemplatedEntityList::it it;
};
class IfcConstraintClassificationRelationship : public IfcBaseClass {
public:
SHARED_PTR ClassifiedConstraint();
SHARED_PTR< IfcTemplatedEntityList > RelatedClassifications();
bool is(Type::Enum v);
Type::Enum type();
static Type::Enum Class();
IfcConstraintClassificationRelationship (IfcAbstractEntityPtr e = IfcAbstractEntityPtr());
typedef SHARED_PTR ptr;
typedef SHARED_PTR< IfcTemplatedEntityList > list;
typedef IfcTemplatedEntityList::it it;
};
class IfcConstraintRelationship : public IfcBaseClass {
public:
bool hasName();
IfcLabel Name();
bool hasDescription();
IfcText Description();
SHARED_PTR RelatingConstraint();
SHARED_PTR< IfcTemplatedEntityList > RelatedConstraints();
bool is(Type::Enum v);
Type::Enum type();
static Type::Enum Class();
IfcConstraintRelationship (IfcAbstractEntityPtr e = IfcAbstractEntityPtr());
typedef SHARED_PTR ptr;
typedef SHARED_PTR< IfcTemplatedEntityList > list;
typedef IfcTemplatedEntityList::it it;
};
class IfcCoordinatedUniversalTimeOffset : public IfcBaseClass {
public:
IfcHourInDay HourOffset();
bool hasMinuteOffset();
IfcMinuteInHour MinuteOffset();
IfcAheadOrBehind::IfcAheadOrBehind Sense();
bool is(Type::Enum v);
Type::Enum type();
static Type::Enum Class();
IfcCoordinatedUniversalTimeOffset (IfcAbstractEntityPtr e = IfcAbstractEntityPtr());
typedef SHARED_PTR ptr;
typedef SHARED_PTR< IfcTemplatedEntityList > list;
typedef IfcTemplatedEntityList::it it;
};
class IfcCostValue : public IfcAppliedValue {
public:
IfcLabel CostType();
bool hasCondition();
IfcText Condition();
bool is(Type::Enum v);
Type::Enum type();
static Type::Enum Class();
IfcCostValue (IfcAbstractEntityPtr e = IfcAbstractEntityPtr());
typedef SHARED_PTR ptr;
typedef SHARED_PTR< IfcTemplatedEntityList > list;
typedef IfcTemplatedEntityList::it it;
};
class IfcCurrencyRelationship : public IfcBaseClass {
public:
SHARED_PTR RelatingMonetaryUnit();
SHARED_PTR RelatedMonetaryUnit();
IfcPositiveRatioMeasure ExchangeRate();
SHARED_PTR RateDateTime();
bool hasRateSource();
SHARED_PTR RateSource();
bool is(Type::Enum v);
Type::Enum type();
static Type::Enum Class();
IfcCurrencyRelationship (IfcAbstractEntityPtr e = IfcAbstractEntityPtr());
typedef SHARED_PTR ptr;
typedef SHARED_PTR< IfcTemplatedEntityList > list;
typedef IfcTemplatedEntityList::it it;
};
class IfcCurveStyleFont : public IfcBaseClass {
public:
bool hasName();
IfcLabel Name();
SHARED_PTR< IfcTemplatedEntityList > PatternList();
bool is(Type::Enum v);
Type::Enum type();
static Type::Enum Class();
IfcCurveStyleFont (IfcAbstractEntityPtr e = IfcAbstractEntityPtr());
typedef SHARED_PTR ptr;
typedef SHARED_PTR< IfcTemplatedEntityList > list;
typedef IfcTemplatedEntityList::it it;
};
class IfcCurveStyleFontAndScaling : public IfcBaseClass {
public:
bool hasName();
IfcLabel Name();
IfcCurveStyleFontSelect CurveFont();
IfcPositiveRatioMeasure CurveFontScaling();
bool is(Type::Enum v);
Type::Enum type();
static Type::Enum Class();
IfcCurveStyleFontAndScaling (IfcAbstractEntityPtr e = IfcAbstractEntityPtr());
typedef SHARED_PTR ptr;
typedef SHARED_PTR< IfcTemplatedEntityList > list;
typedef IfcTemplatedEntityList::it it;
};
class IfcCurveStyleFontPattern : public IfcBaseClass {
public:
IfcLengthMeasure VisibleSegmentLength();
IfcPositiveLengthMeasure InvisibleSegmentLength();
bool is(Type::Enum v);
Type::Enum type();
static Type::Enum Class();
IfcCurveStyleFontPattern (IfcAbstractEntityPtr e = IfcAbstractEntityPtr());
typedef SHARED_PTR ptr;
typedef SHARED_PTR< IfcTemplatedEntityList > list;
typedef IfcTemplatedEntityList::it it;
};
class IfcDateAndTime : public IfcBaseClass {
public:
SHARED_PTR DateComponent();
SHARED_PTR TimeComponent();
bool is(Type::Enum v);
Type::Enum type();
static Type::Enum Class();
IfcDateAndTime (IfcAbstractEntityPtr e = IfcAbstractEntityPtr());
typedef SHARED_PTR ptr;
typedef SHARED_PTR< IfcTemplatedEntityList > list;
typedef IfcTemplatedEntityList::it it;
};
class IfcDerivedUnit : public IfcBaseClass {
public:
SHARED_PTR< IfcTemplatedEntityList > Elements();
IfcDerivedUnitEnum::IfcDerivedUnitEnum UnitType();
bool hasUserDefinedType();
IfcLabel UserDefinedType();
bool is(Type::Enum v);
Type::Enum type();
static Type::Enum Class();
IfcDerivedUnit (IfcAbstractEntityPtr e = IfcAbstractEntityPtr());
typedef SHARED_PTR ptr;
typedef SHARED_PTR< IfcTemplatedEntityList > list;
typedef IfcTemplatedEntityList::it it;
};
class IfcDerivedUnitElement : public IfcBaseClass {
public:
SHARED_PTR Unit();
int Exponent();
bool is(Type::Enum v);
Type::Enum type();
static Type::Enum Class();
IfcDerivedUnitElement (IfcAbstractEntityPtr e = IfcAbstractEntityPtr());
typedef SHARED_PTR ptr;
typedef SHARED_PTR< IfcTemplatedEntityList > list;
typedef IfcTemplatedEntityList::it it;
};
class IfcDimensionalExponents : public IfcBaseClass {
public:
int LengthExponent();
int MassExponent();
int TimeExponent();
int ElectricCurrentExponent();
int ThermodynamicTemperatureExponent();
int AmountOfSubstanceExponent();
int LuminousIntensityExponent();
bool is(Type::Enum v);
Type::Enum type();
static Type::Enum Class();
IfcDimensionalExponents (IfcAbstractEntityPtr e = IfcAbstractEntityPtr());
typedef SHARED_PTR ptr;
typedef SHARED_PTR< IfcTemplatedEntityList > list;
typedef IfcTemplatedEntityList::it it;
};
class IfcDocumentElectronicFormat : public IfcBaseClass {
public:
bool hasFileExtension();
IfcLabel FileExtension();
bool hasMimeContentType();
IfcLabel MimeContentType();
bool hasMimeSubtype();
IfcLabel MimeSubtype();
bool is(Type::Enum v);
Type::Enum type();
static Type::Enum Class();
IfcDocumentElectronicFormat (IfcAbstractEntityPtr e = IfcAbstractEntityPtr());
typedef SHARED_PTR ptr;
typedef SHARED_PTR< IfcTemplatedEntityList > list;
typedef IfcTemplatedEntityList::it it;
};
class IfcDocumentInformation : public IfcBaseClass {
public:
IfcIdentifier DocumentId();
IfcLabel Name();
bool hasDescription();
IfcText Description();
bool hasDocumentReferences();
SHARED_PTR< IfcTemplatedEntityList > DocumentReferences();
bool hasPurpose();
IfcText Purpose();
bool hasIntendedUse();
IfcText IntendedUse();
bool hasScope();
IfcText Scope();
bool hasRevision();
IfcLabel Revision();
bool hasDocumentOwner();
IfcActorSelect DocumentOwner();
bool hasEditors();
SHARED_PTR< IfcTemplatedEntityList > Editors();
bool hasCreationTime();
SHARED_PTR CreationTime();
bool hasLastRevisionTime();
SHARED_PTR LastRevisionTime();
bool hasElectronicFormat();
SHARED_PTR ElectronicFormat();
bool hasValidFrom();
SHARED_PTR ValidFrom();
bool hasValidUntil();
SHARED_PTR ValidUntil();
bool hasConfidentiality();
IfcDocumentConfidentialityEnum::IfcDocumentConfidentialityEnum Confidentiality();
bool hasStatus();
IfcDocumentStatusEnum::IfcDocumentStatusEnum Status();
SHARED_PTR< IfcTemplatedEntityList > IsPointedTo(); // INVERSE IfcDocumentInformationRelationship::RelatedDocuments
SHARED_PTR< IfcTemplatedEntityList > IsPointer(); // INVERSE IfcDocumentInformationRelationship::RelatingDocument
bool is(Type::Enum v);
Type::Enum type();
static Type::Enum Class();
IfcDocumentInformation (IfcAbstractEntityPtr e = IfcAbstractEntityPtr());
typedef SHARED_PTR ptr;
typedef SHARED_PTR< IfcTemplatedEntityList > list;
typedef IfcTemplatedEntityList::it it;
};
class IfcDocumentInformationRelationship : public IfcBaseClass {
public:
SHARED_PTR RelatingDocument();
SHARED_PTR< IfcTemplatedEntityList > RelatedDocuments();
bool hasRelationshipType();
IfcLabel RelationshipType();
bool is(Type::Enum v);
Type::Enum type();
static Type::Enum Class();
IfcDocumentInformationRelationship (IfcAbstractEntityPtr e = IfcAbstractEntityPtr());
typedef SHARED_PTR ptr;
typedef SHARED_PTR< IfcTemplatedEntityList > list;
typedef IfcTemplatedEntityList::it it;
};
class IfcDraughtingCalloutRelationship : public IfcBaseClass {
public:
bool hasName();
IfcLabel Name();
bool hasDescription();
IfcText Description();
SHARED_PTR RelatingDraughtingCallout();
SHARED_PTR RelatedDraughtingCallout();
bool is(Type::Enum v);
Type::Enum type();
static Type::Enum Class();
IfcDraughtingCalloutRelationship (IfcAbstractEntityPtr e = IfcAbstractEntityPtr());
typedef SHARED_PTR ptr;
typedef SHARED_PTR< IfcTemplatedEntityList > list;
typedef IfcTemplatedEntityList::it it;
};
class IfcEnvironmentalImpactValue : public IfcAppliedValue {
public:
IfcLabel ImpactType();
IfcEnvironmentalImpactCategoryEnum::IfcEnvironmentalImpactCategoryEnum Category();
bool hasUserDefinedCategory();
IfcLabel UserDefinedCategory();
bool is(Type::Enum v);
Type::Enum type();
static Type::Enum Class();
IfcEnvironmentalImpactValue (IfcAbstractEntityPtr e = IfcAbstractEntityPtr());
typedef SHARED_PTR ptr;
typedef SHARED_PTR< IfcTemplatedEntityList > list;
typedef IfcTemplatedEntityList::it it;
};
class IfcExternalReference : public IfcBaseClass {
public:
bool hasLocation();
IfcLabel Location();
bool hasItemReference();
IfcIdentifier ItemReference();
bool hasName();
IfcLabel Name();
bool is(Type::Enum v);
Type::Enum type();
static Type::Enum Class();
IfcExternalReference (IfcAbstractEntityPtr e = IfcAbstractEntityPtr());
typedef SHARED_PTR ptr;
typedef SHARED_PTR< IfcTemplatedEntityList > list;
typedef IfcTemplatedEntityList::it it;
};
class IfcExternallyDefinedHatchStyle : public IfcExternalReference {
public:
bool is(Type::Enum v);
Type::Enum type();
static Type::Enum Class();
IfcExternallyDefinedHatchStyle (IfcAbstractEntityPtr e = IfcAbstractEntityPtr());
typedef SHARED_PTR