1/*
2Open Asset Import Library (ASSIMP)
3----------------------------------------------------------------------
4
5Copyright (c) 2006-2010, ASSIMP Development Team
6All rights reserved.
7
8Redistribution and use of this software in source and binary forms,
9with or without modification, are permitted provided that the
10following conditions are met:
11
12* Redistributions of source code must retain the above
13 copyright notice, this list of conditions and the
14 following disclaimer.
15
16* Redistributions in binary form must reproduce the above
17 copyright notice, this list of conditions and the
18 following disclaimer in the documentation and/or other
19 materials provided with the distribution.
20
21* Neither the name of the ASSIMP team, nor the names of its
22 contributors may be used to endorse or promote products
23 derived from this software without specific prior
24 written permission of the ASSIMP Development Team.
25
26THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
27"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
28LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
29A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
30OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
31SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
32LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
33DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
34THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
35(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
36OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
37
38----------------------------------------------------------------------
39*/
40
41/** MACHINE-GENERATED by scripts/ICFImporter/CppGenerator.py */
42
43#ifndef INCLUDED_IFC_READER_GEN_H
44#define INCLUDED_IFC_READER_GEN_H
45
46#include "STEPFile.h"
47
48namespace Assimp {
49namespace IFC {
50 using namespace STEP;
51 using namespace STEP::EXPRESS;
52
53
54 struct NotImplemented : public ObjectHelper<NotImplemented,0> {
55
56 };
57
58
59 // ******************************************************************************
60 // IFC Custom data types
61 // ******************************************************************************
62
63
64 // C++ wrapper type for IfcAbsorbedDoseMeasure
65 typedef REAL IfcAbsorbedDoseMeasure;
66 // C++ wrapper type for IfcAccelerationMeasure
67 typedef REAL IfcAccelerationMeasure;
68 // C++ wrapper type for IfcAmountOfSubstanceMeasure
69 typedef REAL IfcAmountOfSubstanceMeasure;
70 // C++ wrapper type for IfcAngularVelocityMeasure
71 typedef REAL IfcAngularVelocityMeasure;
72 // C++ wrapper type for IfcAreaMeasure
73 typedef REAL IfcAreaMeasure;
74 // C++ wrapper type for IfcBoolean
75 typedef BOOLEAN IfcBoolean;
76 // C++ wrapper type for IfcBoxAlignment
77 typedef STRING IfcBoxAlignment;
78 // C++ wrapper type for IfcCompoundPlaneAngleMeasure
79 typedef ListOf< INTEGER, 3, 3 > IfcCompoundPlaneAngleMeasure;
80 // C++ wrapper type for IfcContextDependentMeasure
81 typedef REAL IfcContextDependentMeasure;
82 // C++ wrapper type for IfcCountMeasure
83 typedef NUMBER IfcCountMeasure;
84 // C++ wrapper type for IfcCurvatureMeasure
85 typedef REAL IfcCurvatureMeasure;
86 // C++ wrapper type for IfcDayInMonthNumber
87 typedef INTEGER IfcDayInMonthNumber;
88 // C++ wrapper type for IfcDaylightSavingHour
89 typedef INTEGER IfcDaylightSavingHour;
90 // C++ wrapper type for IfcDescriptiveMeasure
91 typedef STRING IfcDescriptiveMeasure;
92 // C++ wrapper type for IfcDimensionCount
93 typedef INTEGER IfcDimensionCount;
94 // C++ wrapper type for IfcDoseEquivalentMeasure
95 typedef REAL IfcDoseEquivalentMeasure;
96 // C++ wrapper type for IfcDynamicViscosityMeasure
97 typedef REAL IfcDynamicViscosityMeasure;
98 // C++ wrapper type for IfcElectricCapacitanceMeasure
99 typedef REAL IfcElectricCapacitanceMeasure;
100 // C++ wrapper type for IfcElectricChargeMeasure
101 typedef REAL IfcElectricChargeMeasure;
102 // C++ wrapper type for IfcElectricConductanceMeasure
103 typedef REAL IfcElectricConductanceMeasure;
104 // C++ wrapper type for IfcElectricCurrentMeasure
105 typedef REAL IfcElectricCurrentMeasure;
106 // C++ wrapper type for IfcElectricResistanceMeasure
107 typedef REAL IfcElectricResistanceMeasure;
108 // C++ wrapper type for IfcElectricVoltageMeasure
109 typedef REAL IfcElectricVoltageMeasure;
110 // C++ wrapper type for IfcEnergyMeasure
111 typedef REAL IfcEnergyMeasure;
112 // C++ wrapper type for IfcFontStyle
113 typedef STRING IfcFontStyle;
114 // C++ wrapper type for IfcFontVariant
115 typedef STRING IfcFontVariant;
116 // C++ wrapper type for IfcFontWeight
117 typedef STRING IfcFontWeight;
118 // C++ wrapper type for IfcForceMeasure
119 typedef REAL IfcForceMeasure;
120 // C++ wrapper type for IfcFrequencyMeasure
121 typedef REAL IfcFrequencyMeasure;
122 // C++ wrapper type for IfcGloballyUniqueId
123 typedef STRING IfcGloballyUniqueId;
124 // C++ wrapper type for IfcHeatFluxDensityMeasure
125 typedef REAL IfcHeatFluxDensityMeasure;
126 // C++ wrapper type for IfcHeatingValueMeasure
127 typedef REAL IfcHeatingValueMeasure;
128 // C++ wrapper type for IfcHourInDay
129 typedef INTEGER IfcHourInDay;
130 // C++ wrapper type for IfcIdentifier
131 typedef STRING IfcIdentifier;
132 // C++ wrapper type for IfcIlluminanceMeasure
133 typedef REAL IfcIlluminanceMeasure;
134 // C++ wrapper type for IfcInductanceMeasure
135 typedef REAL IfcInductanceMeasure;
136 // C++ wrapper type for IfcInteger
137 typedef INTEGER IfcInteger;
138 // C++ wrapper type for IfcIntegerCountRateMeasure
139 typedef INTEGER IfcIntegerCountRateMeasure;
140 // C++ wrapper type for IfcIonConcentrationMeasure
141 typedef REAL IfcIonConcentrationMeasure;
142 // C++ wrapper type for IfcIsothermalMoistureCapacityMeasure
143 typedef REAL IfcIsothermalMoistureCapacityMeasure;
144 // C++ wrapper type for IfcKinematicViscosityMeasure
145 typedef REAL IfcKinematicViscosityMeasure;
146 // C++ wrapper type for IfcLabel
147 typedef STRING IfcLabel;
148 // C++ wrapper type for IfcLengthMeasure
149 typedef REAL IfcLengthMeasure;
150 // C++ wrapper type for IfcLinearForceMeasure
151 typedef REAL IfcLinearForceMeasure;
152 // C++ wrapper type for IfcLinearMomentMeasure
153 typedef REAL IfcLinearMomentMeasure;
154 // C++ wrapper type for IfcLinearStiffnessMeasure
155 typedef REAL IfcLinearStiffnessMeasure;
156 // C++ wrapper type for IfcLinearVelocityMeasure
157 typedef REAL IfcLinearVelocityMeasure;
158 // C++ wrapper type for IfcLogical
159 typedef LOGICAL IfcLogical;
160 // C++ wrapper type for IfcLuminousFluxMeasure
161 typedef REAL IfcLuminousFluxMeasure;
162 // C++ wrapper type for IfcLuminousIntensityDistributionMeasure
163 typedef REAL IfcLuminousIntensityDistributionMeasure;
164 // C++ wrapper type for IfcLuminousIntensityMeasure
165 typedef REAL IfcLuminousIntensityMeasure;
166 // C++ wrapper type for IfcMagneticFluxDensityMeasure
167 typedef REAL IfcMagneticFluxDensityMeasure;
168 // C++ wrapper type for IfcMagneticFluxMeasure
169 typedef REAL IfcMagneticFluxMeasure;
170 // C++ wrapper type for IfcMassDensityMeasure
171 typedef REAL IfcMassDensityMeasure;
172 // C++ wrapper type for IfcMassFlowRateMeasure
173 typedef REAL IfcMassFlowRateMeasure;
174 // C++ wrapper type for IfcMassMeasure
175 typedef REAL IfcMassMeasure;
176 // C++ wrapper type for IfcMassPerLengthMeasure
177 typedef REAL IfcMassPerLengthMeasure;
178 // C++ wrapper type for IfcMinuteInHour
179 typedef INTEGER IfcMinuteInHour;
180 // C++ wrapper type for IfcModulusOfElasticityMeasure
181 typedef REAL IfcModulusOfElasticityMeasure;
182 // C++ wrapper type for IfcModulusOfLinearSubgradeReactionMeasure
183 typedef REAL IfcModulusOfLinearSubgradeReactionMeasure;
184 // C++ wrapper type for IfcModulusOfRotationalSubgradeReactionMeasure
185 typedef REAL IfcModulusOfRotationalSubgradeReactionMeasure;
186 // C++ wrapper type for IfcModulusOfSubgradeReactionMeasure
187 typedef REAL IfcModulusOfSubgradeReactionMeasure;
188 // C++ wrapper type for IfcMoistureDiffusivityMeasure
189 typedef REAL IfcMoistureDiffusivityMeasure;
190 // C++ wrapper type for IfcMolecularWeightMeasure
191 typedef REAL IfcMolecularWeightMeasure;
192 // C++ wrapper type for IfcMomentOfInertiaMeasure
193 typedef REAL IfcMomentOfInertiaMeasure;
194 // C++ wrapper type for IfcMonetaryMeasure
195 typedef REAL IfcMonetaryMeasure;
196 // C++ wrapper type for IfcMonthInYearNumber
197 typedef INTEGER IfcMonthInYearNumber;
198 // C++ wrapper type for IfcNormalisedRatioMeasure
199 typedef REAL IfcNormalisedRatioMeasure;
200 // C++ wrapper type for IfcNumericMeasure
201 typedef NUMBER IfcNumericMeasure;
202 // C++ wrapper type for IfcPHMeasure
203 typedef REAL IfcPHMeasure;
204 // C++ wrapper type for IfcParameterValue
205 typedef REAL IfcParameterValue;
206 // C++ wrapper type for IfcPlanarForceMeasure
207 typedef REAL IfcPlanarForceMeasure;
208 // C++ wrapper type for IfcPlaneAngleMeasure
209 typedef REAL IfcPlaneAngleMeasure;
210 // C++ wrapper type for IfcPositiveLengthMeasure
211 typedef REAL IfcPositiveLengthMeasure;
212 // C++ wrapper type for IfcPositivePlaneAngleMeasure
213 typedef REAL IfcPositivePlaneAngleMeasure;
214 // C++ wrapper type for IfcPositiveRatioMeasure
215 typedef REAL IfcPositiveRatioMeasure;
216 // C++ wrapper type for IfcPowerMeasure
217 typedef REAL IfcPowerMeasure;
218 // C++ wrapper type for IfcPresentableText
219 typedef STRING IfcPresentableText;
220 // C++ wrapper type for IfcPressureMeasure
221 typedef REAL IfcPressureMeasure;
222 // C++ wrapper type for IfcRadioActivityMeasure
223 typedef REAL IfcRadioActivityMeasure;
224 // C++ wrapper type for IfcRatioMeasure
225 typedef REAL IfcRatioMeasure;
226 // C++ wrapper type for IfcReal
227 typedef REAL IfcReal;
228 // C++ wrapper type for IfcRotationalFrequencyMeasure
229 typedef REAL IfcRotationalFrequencyMeasure;
230 // C++ wrapper type for IfcRotationalMassMeasure
231 typedef REAL IfcRotationalMassMeasure;
232 // C++ wrapper type for IfcRotationalStiffnessMeasure
233 typedef REAL IfcRotationalStiffnessMeasure;
234 // C++ wrapper type for IfcSecondInMinute
235 typedef REAL IfcSecondInMinute;
236 // C++ wrapper type for IfcSectionModulusMeasure
237 typedef REAL IfcSectionModulusMeasure;
238 // C++ wrapper type for IfcSectionalAreaIntegralMeasure
239 typedef REAL IfcSectionalAreaIntegralMeasure;
240 // C++ wrapper type for IfcShearModulusMeasure
241 typedef REAL IfcShearModulusMeasure;
242 // C++ wrapper type for IfcSolidAngleMeasure
243 typedef REAL IfcSolidAngleMeasure;
244 // C++ wrapper type for IfcSoundPowerMeasure
245 typedef REAL IfcSoundPowerMeasure;
246 // C++ wrapper type for IfcSoundPressureMeasure
247 typedef REAL IfcSoundPressureMeasure;
248 // C++ wrapper type for IfcSpecificHeatCapacityMeasure
249 typedef REAL IfcSpecificHeatCapacityMeasure;
250 // C++ wrapper type for IfcSpecularExponent
251 typedef REAL IfcSpecularExponent;
252 // C++ wrapper type for IfcSpecularRoughness
253 typedef REAL IfcSpecularRoughness;
254 // C++ wrapper type for IfcTemperatureGradientMeasure
255 typedef REAL IfcTemperatureGradientMeasure;
256 // C++ wrapper type for IfcText
257 typedef STRING IfcText;
258 // C++ wrapper type for IfcTextAlignment
259 typedef STRING IfcTextAlignment;
260 // C++ wrapper type for IfcTextDecoration
261 typedef STRING IfcTextDecoration;
262 // C++ wrapper type for IfcTextFontName
263 typedef STRING IfcTextFontName;
264 // C++ wrapper type for IfcTextTransformation
265 typedef STRING IfcTextTransformation;
266 // C++ wrapper type for IfcThermalAdmittanceMeasure
267 typedef REAL IfcThermalAdmittanceMeasure;
268 // C++ wrapper type for IfcThermalConductivityMeasure
269 typedef REAL IfcThermalConductivityMeasure;
270 // C++ wrapper type for IfcThermalExpansionCoefficientMeasure
271 typedef REAL IfcThermalExpansionCoefficientMeasure;
272 // C++ wrapper type for IfcThermalResistanceMeasure
273 typedef REAL IfcThermalResistanceMeasure;
274 // C++ wrapper type for IfcThermalTransmittanceMeasure
275 typedef REAL IfcThermalTransmittanceMeasure;
276 // C++ wrapper type for IfcThermodynamicTemperatureMeasure
277 typedef REAL IfcThermodynamicTemperatureMeasure;
278 // C++ wrapper type for IfcTimeMeasure
279 typedef REAL IfcTimeMeasure;
280 // C++ wrapper type for IfcTimeStamp
281 typedef INTEGER IfcTimeStamp;
282 // C++ wrapper type for IfcTorqueMeasure
283 typedef REAL IfcTorqueMeasure;
284 // C++ wrapper type for IfcVaporPermeabilityMeasure
285 typedef REAL IfcVaporPermeabilityMeasure;
286 // C++ wrapper type for IfcVolumeMeasure
287 typedef REAL IfcVolumeMeasure;
288 // C++ wrapper type for IfcVolumetricFlowRateMeasure
289 typedef REAL IfcVolumetricFlowRateMeasure;
290 // C++ wrapper type for IfcWarpingConstantMeasure
291 typedef REAL IfcWarpingConstantMeasure;
292 // C++ wrapper type for IfcWarpingMomentMeasure
293 typedef REAL IfcWarpingMomentMeasure;
294 // C++ wrapper type for IfcYearNumber
295 typedef INTEGER IfcYearNumber;
296 // C++ wrapper type for IfcActionSourceTypeEnum
297 typedef ENUMERATION IfcActionSourceTypeEnum;
298 // C++ wrapper type for IfcActionTypeEnum
299 typedef ENUMERATION IfcActionTypeEnum;
300 // C++ wrapper type for IfcActuatorTypeEnum
301 typedef ENUMERATION IfcActuatorTypeEnum;
302 // C++ wrapper type for IfcAddressTypeEnum
303 typedef ENUMERATION IfcAddressTypeEnum;
304 // C++ wrapper type for IfcAheadOrBehind
305 typedef ENUMERATION IfcAheadOrBehind;
306 // C++ wrapper type for IfcAirTerminalBoxTypeEnum
307 typedef ENUMERATION IfcAirTerminalBoxTypeEnum;
308 // C++ wrapper type for IfcAirTerminalTypeEnum
309 typedef ENUMERATION IfcAirTerminalTypeEnum;
310 // C++ wrapper type for IfcAirToAirHeatRecoveryTypeEnum
311 typedef ENUMERATION IfcAirToAirHeatRecoveryTypeEnum;
312 // C++ wrapper type for IfcAlarmTypeEnum
313 typedef ENUMERATION IfcAlarmTypeEnum;
314 // C++ wrapper type for IfcAnalysisModelTypeEnum
315 typedef ENUMERATION IfcAnalysisModelTypeEnum;
316 // C++ wrapper type for IfcAnalysisTheoryTypeEnum
317 typedef ENUMERATION IfcAnalysisTheoryTypeEnum;
318 // C++ wrapper type for IfcArithmeticOperatorEnum
319 typedef ENUMERATION IfcArithmeticOperatorEnum;
320 // C++ wrapper type for IfcAssemblyPlaceEnum
321 typedef ENUMERATION IfcAssemblyPlaceEnum;
322 // C++ wrapper type for IfcBSplineCurveForm
323 typedef ENUMERATION IfcBSplineCurveForm;
324 // C++ wrapper type for IfcBeamTypeEnum
325 typedef ENUMERATION IfcBeamTypeEnum;
326 // C++ wrapper type for IfcBenchmarkEnum
327 typedef ENUMERATION IfcBenchmarkEnum;
328 // C++ wrapper type for IfcBoilerTypeEnum
329 typedef ENUMERATION IfcBoilerTypeEnum;
330 // C++ wrapper type for IfcBooleanOperator
331 typedef ENUMERATION IfcBooleanOperator;
332 // C++ wrapper type for IfcBuildingElementProxyTypeEnum
333 typedef ENUMERATION IfcBuildingElementProxyTypeEnum;
334 // C++ wrapper type for IfcCableCarrierFittingTypeEnum
335 typedef ENUMERATION IfcCableCarrierFittingTypeEnum;
336 // C++ wrapper type for IfcCableCarrierSegmentTypeEnum
337 typedef ENUMERATION IfcCableCarrierSegmentTypeEnum;
338 // C++ wrapper type for IfcCableSegmentTypeEnum
339 typedef ENUMERATION IfcCableSegmentTypeEnum;
340 // C++ wrapper type for IfcChangeActionEnum
341 typedef ENUMERATION IfcChangeActionEnum;
342 // C++ wrapper type for IfcChillerTypeEnum
343 typedef ENUMERATION IfcChillerTypeEnum;
344 // C++ wrapper type for IfcCoilTypeEnum
345 typedef ENUMERATION IfcCoilTypeEnum;
346 // C++ wrapper type for IfcColumnTypeEnum
347 typedef ENUMERATION IfcColumnTypeEnum;
348 // C++ wrapper type for IfcCompressorTypeEnum
349 typedef ENUMERATION IfcCompressorTypeEnum;
350 // C++ wrapper type for IfcCondenserTypeEnum
351 typedef ENUMERATION IfcCondenserTypeEnum;
352 // C++ wrapper type for IfcConnectionTypeEnum
353 typedef ENUMERATION IfcConnectionTypeEnum;
354 // C++ wrapper type for IfcConstraintEnum
355 typedef ENUMERATION IfcConstraintEnum;
356 // C++ wrapper type for IfcControllerTypeEnum
357 typedef ENUMERATION IfcControllerTypeEnum;
358 // C++ wrapper type for IfcCooledBeamTypeEnum
359 typedef ENUMERATION IfcCooledBeamTypeEnum;
360 // C++ wrapper type for IfcCoolingTowerTypeEnum
361 typedef ENUMERATION IfcCoolingTowerTypeEnum;
362 // C++ wrapper type for IfcCostScheduleTypeEnum
363 typedef ENUMERATION IfcCostScheduleTypeEnum;
364 // C++ wrapper type for IfcCoveringTypeEnum
365 typedef ENUMERATION IfcCoveringTypeEnum;
366 // C++ wrapper type for IfcCurrencyEnum
367 typedef ENUMERATION IfcCurrencyEnum;
368 // C++ wrapper type for IfcCurtainWallTypeEnum
369 typedef ENUMERATION IfcCurtainWallTypeEnum;
370 // C++ wrapper type for IfcDamperTypeEnum
371 typedef ENUMERATION IfcDamperTypeEnum;
372 // C++ wrapper type for IfcDataOriginEnum
373 typedef ENUMERATION IfcDataOriginEnum;
374 // C++ wrapper type for IfcDerivedUnitEnum
375 typedef ENUMERATION IfcDerivedUnitEnum;
376 // C++ wrapper type for IfcDimensionExtentUsage
377 typedef ENUMERATION IfcDimensionExtentUsage;
378 // C++ wrapper type for IfcDirectionSenseEnum
379 typedef ENUMERATION IfcDirectionSenseEnum;
380 // C++ wrapper type for IfcDistributionChamberElementTypeEnum
381 typedef ENUMERATION IfcDistributionChamberElementTypeEnum;
382 // C++ wrapper type for IfcDocumentConfidentialityEnum
383 typedef ENUMERATION IfcDocumentConfidentialityEnum;
384 // C++ wrapper type for IfcDocumentStatusEnum
385 typedef ENUMERATION IfcDocumentStatusEnum;
386 // C++ wrapper type for IfcDoorPanelOperationEnum
387 typedef ENUMERATION IfcDoorPanelOperationEnum;
388 // C++ wrapper type for IfcDoorPanelPositionEnum
389 typedef ENUMERATION IfcDoorPanelPositionEnum;
390 // C++ wrapper type for IfcDoorStyleConstructionEnum
391 typedef ENUMERATION IfcDoorStyleConstructionEnum;
392 // C++ wrapper type for IfcDoorStyleOperationEnum
393 typedef ENUMERATION IfcDoorStyleOperationEnum;
394 // C++ wrapper type for IfcDuctFittingTypeEnum
395 typedef ENUMERATION IfcDuctFittingTypeEnum;
396 // C++ wrapper type for IfcDuctSegmentTypeEnum
397 typedef ENUMERATION IfcDuctSegmentTypeEnum;
398 // C++ wrapper type for IfcDuctSilencerTypeEnum
399 typedef ENUMERATION IfcDuctSilencerTypeEnum;
400 // C++ wrapper type for IfcElectricApplianceTypeEnum
401 typedef ENUMERATION IfcElectricApplianceTypeEnum;
402 // C++ wrapper type for IfcElectricCurrentEnum
403 typedef ENUMERATION IfcElectricCurrentEnum;
404 // C++ wrapper type for IfcElectricDistributionPointFunctionEnum
405 typedef ENUMERATION IfcElectricDistributionPointFunctionEnum;
406 // C++ wrapper type for IfcElectricFlowStorageDeviceTypeEnum
407 typedef ENUMERATION IfcElectricFlowStorageDeviceTypeEnum;
408 // C++ wrapper type for IfcElectricGeneratorTypeEnum
409 typedef ENUMERATION IfcElectricGeneratorTypeEnum;
410 // C++ wrapper type for IfcElectricHeaterTypeEnum
411 typedef ENUMERATION IfcElectricHeaterTypeEnum;
412 // C++ wrapper type for IfcElectricMotorTypeEnum
413 typedef ENUMERATION IfcElectricMotorTypeEnum;
414 // C++ wrapper type for IfcElectricTimeControlTypeEnum
415 typedef ENUMERATION IfcElectricTimeControlTypeEnum;
416 // C++ wrapper type for IfcElementAssemblyTypeEnum
417 typedef ENUMERATION IfcElementAssemblyTypeEnum;
418 // C++ wrapper type for IfcElementCompositionEnum
419 typedef ENUMERATION IfcElementCompositionEnum;
420 // C++ wrapper type for IfcEnergySequenceEnum
421 typedef ENUMERATION IfcEnergySequenceEnum;
422 // C++ wrapper type for IfcEnvironmentalImpactCategoryEnum
423 typedef ENUMERATION IfcEnvironmentalImpactCategoryEnum;
424 // C++ wrapper type for IfcEvaporativeCoolerTypeEnum
425 typedef ENUMERATION IfcEvaporativeCoolerTypeEnum;
426 // C++ wrapper type for IfcEvaporatorTypeEnum
427 typedef ENUMERATION IfcEvaporatorTypeEnum;
428 // C++ wrapper type for IfcFanTypeEnum
429 typedef ENUMERATION IfcFanTypeEnum;
430 // C++ wrapper type for IfcFilterTypeEnum
431 typedef ENUMERATION IfcFilterTypeEnum;
432 // C++ wrapper type for IfcFireSuppressionTerminalTypeEnum
433 typedef ENUMERATION IfcFireSuppressionTerminalTypeEnum;
434 // C++ wrapper type for IfcFlowDirectionEnum
435 typedef ENUMERATION IfcFlowDirectionEnum;
436 // C++ wrapper type for IfcFlowInstrumentTypeEnum
437 typedef ENUMERATION IfcFlowInstrumentTypeEnum;
438 // C++ wrapper type for IfcFlowMeterTypeEnum
439 typedef ENUMERATION IfcFlowMeterTypeEnum;
440 // C++ wrapper type for IfcFootingTypeEnum
441 typedef ENUMERATION IfcFootingTypeEnum;
442 // C++ wrapper type for IfcGasTerminalTypeEnum
443 typedef ENUMERATION IfcGasTerminalTypeEnum;
444 // C++ wrapper type for IfcGeometricProjectionEnum
445 typedef ENUMERATION IfcGeometricProjectionEnum;
446 // C++ wrapper type for IfcGlobalOrLocalEnum
447 typedef ENUMERATION IfcGlobalOrLocalEnum;
448 // C++ wrapper type for IfcHeatExchangerTypeEnum
449 typedef ENUMERATION IfcHeatExchangerTypeEnum;
450 // C++ wrapper type for IfcHumidifierTypeEnum
451 typedef ENUMERATION IfcHumidifierTypeEnum;
452 // C++ wrapper type for IfcInternalOrExternalEnum
453 typedef ENUMERATION IfcInternalOrExternalEnum;
454 // C++ wrapper type for IfcInventoryTypeEnum
455 typedef ENUMERATION IfcInventoryTypeEnum;
456 // C++ wrapper type for IfcJunctionBoxTypeEnum
457 typedef ENUMERATION IfcJunctionBoxTypeEnum;
458 // C++ wrapper type for IfcLampTypeEnum
459 typedef ENUMERATION IfcLampTypeEnum;
460 // C++ wrapper type for IfcLayerSetDirectionEnum
461 typedef ENUMERATION IfcLayerSetDirectionEnum;
462 // C++ wrapper type for IfcLightDistributionCurveEnum
463 typedef ENUMERATION IfcLightDistributionCurveEnum;
464 // C++ wrapper type for IfcLightEmissionSourceEnum
465 typedef ENUMERATION IfcLightEmissionSourceEnum;
466 // C++ wrapper type for IfcLightFixtureTypeEnum
467 typedef ENUMERATION IfcLightFixtureTypeEnum;
468 // C++ wrapper type for IfcLoadGroupTypeEnum
469 typedef ENUMERATION IfcLoadGroupTypeEnum;
470 // C++ wrapper type for IfcLogicalOperatorEnum
471 typedef ENUMERATION IfcLogicalOperatorEnum;
472 // C++ wrapper type for IfcMemberTypeEnum
473 typedef ENUMERATION IfcMemberTypeEnum;
474 // C++ wrapper type for IfcMotorConnectionTypeEnum
475 typedef ENUMERATION IfcMotorConnectionTypeEnum;
476 // C++ wrapper type for IfcNullStyle
477 typedef ENUMERATION IfcNullStyle;
478 // C++ wrapper type for IfcObjectTypeEnum
479 typedef ENUMERATION IfcObjectTypeEnum;
480 // C++ wrapper type for IfcObjectiveEnum
481 typedef ENUMERATION IfcObjectiveEnum;
482 // C++ wrapper type for IfcOccupantTypeEnum
483 typedef ENUMERATION IfcOccupantTypeEnum;
484 // C++ wrapper type for IfcOutletTypeEnum
485 typedef ENUMERATION IfcOutletTypeEnum;
486 // C++ wrapper type for IfcPermeableCoveringOperationEnum
487 typedef ENUMERATION IfcPermeableCoveringOperationEnum;
488 // C++ wrapper type for IfcPhysicalOrVirtualEnum
489 typedef ENUMERATION IfcPhysicalOrVirtualEnum;
490 // C++ wrapper type for IfcPileConstructionEnum
491 typedef ENUMERATION IfcPileConstructionEnum;
492 // C++ wrapper type for IfcPileTypeEnum
493 typedef ENUMERATION IfcPileTypeEnum;
494 // C++ wrapper type for IfcPipeFittingTypeEnum
495 typedef ENUMERATION IfcPipeFittingTypeEnum;
496 // C++ wrapper type for IfcPipeSegmentTypeEnum
497 typedef ENUMERATION IfcPipeSegmentTypeEnum;
498 // C++ wrapper type for IfcPlateTypeEnum
499 typedef ENUMERATION IfcPlateTypeEnum;
500 // C++ wrapper type for IfcProcedureTypeEnum
501 typedef ENUMERATION IfcProcedureTypeEnum;
502 // C++ wrapper type for IfcProfileTypeEnum
503 typedef ENUMERATION IfcProfileTypeEnum;
504 // C++ wrapper type for IfcProjectOrderRecordTypeEnum
505 typedef ENUMERATION IfcProjectOrderRecordTypeEnum;
506 // C++ wrapper type for IfcProjectOrderTypeEnum
507 typedef ENUMERATION IfcProjectOrderTypeEnum;
508 // C++ wrapper type for IfcProjectedOrTrueLengthEnum
509 typedef ENUMERATION IfcProjectedOrTrueLengthEnum;
510 // C++ wrapper type for IfcPropertySourceEnum
511 typedef ENUMERATION IfcPropertySourceEnum;
512 // C++ wrapper type for IfcProtectiveDeviceTypeEnum
513 typedef ENUMERATION IfcProtectiveDeviceTypeEnum;
514 // C++ wrapper type for IfcPumpTypeEnum
515 typedef ENUMERATION IfcPumpTypeEnum;
516 // C++ wrapper type for IfcRailingTypeEnum
517 typedef ENUMERATION IfcRailingTypeEnum;
518 // C++ wrapper type for IfcRampFlightTypeEnum
519 typedef ENUMERATION IfcRampFlightTypeEnum;
520 // C++ wrapper type for IfcRampTypeEnum
521 typedef ENUMERATION IfcRampTypeEnum;
522 // C++ wrapper type for IfcReflectanceMethodEnum
523 typedef ENUMERATION IfcReflectanceMethodEnum;
524 // C++ wrapper type for IfcReinforcingBarRoleEnum
525 typedef ENUMERATION IfcReinforcingBarRoleEnum;
526 // C++ wrapper type for IfcReinforcingBarSurfaceEnum
527 typedef ENUMERATION IfcReinforcingBarSurfaceEnum;
528 // C++ wrapper type for IfcResourceConsumptionEnum
529 typedef ENUMERATION IfcResourceConsumptionEnum;
530 // C++ wrapper type for IfcRibPlateDirectionEnum
531 typedef ENUMERATION IfcRibPlateDirectionEnum;
532 // C++ wrapper type for IfcRoleEnum
533 typedef ENUMERATION IfcRoleEnum;
534 // C++ wrapper type for IfcRoofTypeEnum
535 typedef ENUMERATION IfcRoofTypeEnum;
536 // C++ wrapper type for IfcSIPrefix
537 typedef ENUMERATION IfcSIPrefix;
538 // C++ wrapper type for IfcSIUnitName
539 typedef ENUMERATION IfcSIUnitName;
540 // C++ wrapper type for IfcSanitaryTerminalTypeEnum
541 typedef ENUMERATION IfcSanitaryTerminalTypeEnum;
542 // C++ wrapper type for IfcSectionTypeEnum
543 typedef ENUMERATION IfcSectionTypeEnum;
544 // C++ wrapper type for IfcSensorTypeEnum
545 typedef ENUMERATION IfcSensorTypeEnum;
546 // C++ wrapper type for IfcSequenceEnum
547 typedef ENUMERATION IfcSequenceEnum;
548 // C++ wrapper type for IfcServiceLifeFactorTypeEnum
549 typedef ENUMERATION IfcServiceLifeFactorTypeEnum;
550 // C++ wrapper type for IfcServiceLifeTypeEnum
551 typedef ENUMERATION IfcServiceLifeTypeEnum;
552 // C++ wrapper type for IfcSlabTypeEnum
553 typedef ENUMERATION IfcSlabTypeEnum;
554 // C++ wrapper type for IfcSoundScaleEnum
555 typedef ENUMERATION IfcSoundScaleEnum;
556 // C++ wrapper type for IfcSpaceHeaterTypeEnum
557 typedef ENUMERATION IfcSpaceHeaterTypeEnum;
558 // C++ wrapper type for IfcSpaceTypeEnum
559 typedef ENUMERATION IfcSpaceTypeEnum;
560 // C++ wrapper type for IfcStackTerminalTypeEnum
561 typedef ENUMERATION IfcStackTerminalTypeEnum;
562 // C++ wrapper type for IfcStairFlightTypeEnum
563 typedef ENUMERATION IfcStairFlightTypeEnum;
564 // C++ wrapper type for IfcStairTypeEnum
565 typedef ENUMERATION IfcStairTypeEnum;
566 // C++ wrapper type for IfcStateEnum
567 typedef ENUMERATION IfcStateEnum;
568 // C++ wrapper type for IfcStructuralCurveTypeEnum
569 typedef ENUMERATION IfcStructuralCurveTypeEnum;
570 // C++ wrapper type for IfcStructuralSurfaceTypeEnum
571 typedef ENUMERATION IfcStructuralSurfaceTypeEnum;
572 // C++ wrapper type for IfcSurfaceSide
573 typedef ENUMERATION IfcSurfaceSide;
574 // C++ wrapper type for IfcSurfaceTextureEnum
575 typedef ENUMERATION IfcSurfaceTextureEnum;
576 // C++ wrapper type for IfcSwitchingDeviceTypeEnum
577 typedef ENUMERATION IfcSwitchingDeviceTypeEnum;
578 // C++ wrapper type for IfcTankTypeEnum
579 typedef ENUMERATION IfcTankTypeEnum;
580 // C++ wrapper type for IfcTendonTypeEnum
581 typedef ENUMERATION IfcTendonTypeEnum;
582 // C++ wrapper type for IfcTextPath
583 typedef ENUMERATION IfcTextPath;
584 // C++ wrapper type for IfcThermalLoadSourceEnum
585 typedef ENUMERATION IfcThermalLoadSourceEnum;
586 // C++ wrapper type for IfcThermalLoadTypeEnum
587 typedef ENUMERATION IfcThermalLoadTypeEnum;
588 // C++ wrapper type for IfcTimeSeriesDataTypeEnum
589 typedef ENUMERATION IfcTimeSeriesDataTypeEnum;
590 // C++ wrapper type for IfcTimeSeriesScheduleTypeEnum
591 typedef ENUMERATION IfcTimeSeriesScheduleTypeEnum;
592 // C++ wrapper type for IfcTransformerTypeEnum
593 typedef ENUMERATION IfcTransformerTypeEnum;
594 // C++ wrapper type for IfcTransitionCode
595 typedef ENUMERATION IfcTransitionCode;
596 // C++ wrapper type for IfcTransportElementTypeEnum
597 typedef ENUMERATION IfcTransportElementTypeEnum;
598 // C++ wrapper type for IfcTrimmingPreference
599 typedef ENUMERATION IfcTrimmingPreference;
600 // C++ wrapper type for IfcTubeBundleTypeEnum
601 typedef ENUMERATION IfcTubeBundleTypeEnum;
602 // C++ wrapper type for IfcUnitEnum
603 typedef ENUMERATION IfcUnitEnum;
604 // C++ wrapper type for IfcUnitaryEquipmentTypeEnum
605 typedef ENUMERATION IfcUnitaryEquipmentTypeEnum;
606 // C++ wrapper type for IfcValveTypeEnum
607 typedef ENUMERATION IfcValveTypeEnum;
608 // C++ wrapper type for IfcVibrationIsolatorTypeEnum
609 typedef ENUMERATION IfcVibrationIsolatorTypeEnum;
610 // C++ wrapper type for IfcWallTypeEnum
611 typedef ENUMERATION IfcWallTypeEnum;
612 // C++ wrapper type for IfcWasteTerminalTypeEnum
613 typedef ENUMERATION IfcWasteTerminalTypeEnum;
614 // C++ wrapper type for IfcWindowPanelOperationEnum
615 typedef ENUMERATION IfcWindowPanelOperationEnum;
616 // C++ wrapper type for IfcWindowPanelPositionEnum
617 typedef ENUMERATION IfcWindowPanelPositionEnum;
618 // C++ wrapper type for IfcWindowStyleConstructionEnum
619 typedef ENUMERATION IfcWindowStyleConstructionEnum;
620 // C++ wrapper type for IfcWindowStyleOperationEnum
621 typedef ENUMERATION IfcWindowStyleOperationEnum;
622 // C++ wrapper type for IfcWorkControlTypeEnum
623 typedef ENUMERATION IfcWorkControlTypeEnum;
624 // C++ wrapper type for IfcActorSelect
625 typedef SELECT IfcActorSelect;
626 // C++ wrapper type for IfcAppliedValueSelect
627 typedef SELECT IfcAppliedValueSelect;
628 // C++ wrapper type for IfcAxis2Placement
629 typedef SELECT IfcAxis2Placement;
630 // C++ wrapper type for IfcBooleanOperand
631 typedef SELECT IfcBooleanOperand;
632 // C++ wrapper type for IfcCharacterStyleSelect
633 typedef SELECT IfcCharacterStyleSelect;
634 // C++ wrapper type for IfcClassificationNotationSelect
635 typedef SELECT IfcClassificationNotationSelect;
636 // C++ wrapper type for IfcColour
637 typedef SELECT IfcColour;
638 // C++ wrapper type for IfcColourOrFactor
639 typedef SELECT IfcColourOrFactor;
640 // C++ wrapper type for IfcConditionCriterionSelect
641 typedef SELECT IfcConditionCriterionSelect;
642 // C++ wrapper type for IfcCsgSelect
643 typedef SELECT IfcCsgSelect;
644 // C++ wrapper type for IfcCurveFontOrScaledCurveFontSelect
645 typedef SELECT IfcCurveFontOrScaledCurveFontSelect;
646 // C++ wrapper type for IfcCurveOrEdgeCurve
647 typedef SELECT IfcCurveOrEdgeCurve;
648 // C++ wrapper type for IfcCurveStyleFontSelect
649 typedef SELECT IfcCurveStyleFontSelect;
650 // C++ wrapper type for IfcDateTimeSelect
651 typedef SELECT IfcDateTimeSelect;
652 // C++ wrapper type for IfcDefinedSymbolSelect
653 typedef SELECT IfcDefinedSymbolSelect;
654 // C++ wrapper type for IfcDerivedMeasureValue
655 typedef SELECT IfcDerivedMeasureValue;
656 // C++ wrapper type for IfcDocumentSelect
657 typedef SELECT IfcDocumentSelect;
658 // C++ wrapper type for IfcDraughtingCalloutElement
659 typedef SELECT IfcDraughtingCalloutElement;
660 // C++ wrapper type for IfcFillAreaStyleTileShapeSelect
661 typedef SELECT IfcFillAreaStyleTileShapeSelect;
662 // C++ wrapper type for IfcFillStyleSelect
663 typedef SELECT IfcFillStyleSelect;
664 // C++ wrapper type for IfcGeometricSetSelect
665 typedef SELECT IfcGeometricSetSelect;
666 // C++ wrapper type for IfcHatchLineDistanceSelect
667 typedef SELECT IfcHatchLineDistanceSelect;
668 // C++ wrapper type for IfcLayeredItem
669 typedef SELECT IfcLayeredItem;
670 // C++ wrapper type for IfcLibrarySelect
671 typedef SELECT IfcLibrarySelect;
672 // C++ wrapper type for IfcLightDistributionDataSourceSelect
673 typedef SELECT IfcLightDistributionDataSourceSelect;
674 // C++ wrapper type for IfcMaterialSelect
675 typedef SELECT IfcMaterialSelect;
676 // C++ wrapper type for IfcMeasureValue
677 typedef SELECT IfcMeasureValue;
678 // C++ wrapper type for IfcMetricValueSelect
679 typedef SELECT IfcMetricValueSelect;
680 // C++ wrapper type for IfcObjectReferenceSelect
681 typedef SELECT IfcObjectReferenceSelect;
682 // C++ wrapper type for IfcOrientationSelect
683 typedef SELECT IfcOrientationSelect;
684 // C++ wrapper type for IfcPointOrVertexPoint
685 typedef SELECT IfcPointOrVertexPoint;
686 // C++ wrapper type for IfcPresentationStyleSelect
687 typedef SELECT IfcPresentationStyleSelect;
688 // C++ wrapper type for IfcShell
689 typedef SELECT IfcShell;
690 // C++ wrapper type for IfcSimpleValue
691 typedef SELECT IfcSimpleValue;
692 // C++ wrapper type for IfcSizeSelect
693 typedef SELECT IfcSizeSelect;
694 // C++ wrapper type for IfcSpecularHighlightSelect
695 typedef SELECT IfcSpecularHighlightSelect;
696 // C++ wrapper type for IfcStructuralActivityAssignmentSelect
697 typedef SELECT IfcStructuralActivityAssignmentSelect;
698 // C++ wrapper type for IfcSurfaceOrFaceSurface
699 typedef SELECT IfcSurfaceOrFaceSurface;
700 // C++ wrapper type for IfcSurfaceStyleElementSelect
701 typedef SELECT IfcSurfaceStyleElementSelect;
702 // C++ wrapper type for IfcSymbolStyleSelect
703 typedef SELECT IfcSymbolStyleSelect;
704 // C++ wrapper type for IfcTextFontSelect
705 typedef SELECT IfcTextFontSelect;
706 // C++ wrapper type for IfcTextStyleSelect
707 typedef SELECT IfcTextStyleSelect;
708 // C++ wrapper type for IfcTrimmingSelect
709 typedef SELECT IfcTrimmingSelect;
710 // C++ wrapper type for IfcUnit
711 typedef SELECT IfcUnit;
712 // C++ wrapper type for IfcValue
713 typedef SELECT IfcValue;
714 // C++ wrapper type for IfcVectorOrDirection
715 typedef SELECT IfcVectorOrDirection;
716
717
718 // ******************************************************************************
719 // IFC Entities
720 // ******************************************************************************
721
722 struct IfcRepresentationItem;
723 struct IfcGeometricRepresentationItem;
724 struct IfcCurve;
725 struct IfcBoundedCurve;
726 struct IfcCompositeCurve;
727 struct Ifc2DCompositeCurve;
728 struct IfcRoot;
729 struct IfcObjectDefinition;
730 struct IfcObject;
731 struct IfcControl;
732 struct IfcActionRequest;
733 struct IfcActor;
734 typedef NotImplemented IfcActorRole; // (not currently used by Assimp)
735 struct IfcTypeObject;
736 struct IfcTypeProduct;
737 struct IfcElementType;
738 struct IfcDistributionElementType;
739 struct IfcDistributionControlElementType;
740 struct IfcActuatorType;
741 typedef NotImplemented IfcAddress; // (not currently used by Assimp)
742 struct IfcDistributionFlowElementType;
743 struct IfcFlowControllerType;
744 struct IfcAirTerminalBoxType;
745 struct IfcFlowTerminalType;
746 struct IfcAirTerminalType;
747 struct IfcEnergyConversionDeviceType;
748 struct IfcAirToAirHeatRecoveryType;
749 struct IfcAlarmType;
750 struct IfcDraughtingCallout;
751 struct IfcDimensionCurveDirectedCallout;
752 struct IfcAngularDimension;
753 struct IfcProduct;
754 struct IfcAnnotation;
755 struct IfcStyledItem;
756 struct IfcAnnotationOccurrence;
757 struct IfcAnnotationCurveOccurrence;
758 struct IfcAnnotationFillArea;
759 struct IfcAnnotationFillAreaOccurrence;
760 struct IfcAnnotationSurface;
761 struct IfcAnnotationSurfaceOccurrence;
762 struct IfcAnnotationSymbolOccurrence;
763 struct IfcAnnotationTextOccurrence;
764 typedef NotImplemented IfcApplication; // (not currently used by Assimp)
765 typedef NotImplemented IfcAppliedValue; // (not currently used by Assimp)
766 typedef NotImplemented IfcAppliedValueRelationship; // (not currently used by Assimp)
767 typedef NotImplemented IfcApproval; // (not currently used by Assimp)
768 typedef NotImplemented IfcApprovalActorRelationship; // (not currently used by Assimp)
769 typedef NotImplemented IfcApprovalPropertyRelationship; // (not currently used by Assimp)
770 typedef NotImplemented IfcApprovalRelationship; // (not currently used by Assimp)
771 struct IfcProfileDef;
772 struct IfcArbitraryClosedProfileDef;
773 struct IfcArbitraryOpenProfileDef;
774 struct IfcArbitraryProfileDefWithVoids;
775 struct IfcGroup;
776 struct IfcAsset;
777 struct IfcParameterizedProfileDef;
778 struct IfcIShapeProfileDef;
779 struct IfcAsymmetricIShapeProfileDef;
780 struct IfcPlacement;
781 struct IfcAxis1Placement;
782 struct IfcAxis2Placement2D;
783 struct IfcAxis2Placement3D;
784 struct IfcBSplineCurve;
785 struct IfcElement;
786 struct IfcBuildingElement;
787 struct IfcBeam;
788 struct IfcBuildingElementType;
789 struct IfcBeamType;
790 struct IfcBezierCurve;
791 typedef NotImplemented IfcSurfaceTexture; // (not currently used by Assimp)
792 typedef NotImplemented IfcBlobTexture; // (not currently used by Assimp)
793 struct IfcCsgPrimitive3D;
794 struct IfcBlock;
795 struct IfcBoilerType;
796 struct IfcBooleanResult;
797 struct IfcBooleanClippingResult;
798 typedef NotImplemented IfcBoundaryCondition; // (not currently used by Assimp)
799 typedef NotImplemented IfcBoundaryEdgeCondition; // (not currently used by Assimp)
800 typedef NotImplemented IfcBoundaryFaceCondition; // (not currently used by Assimp)
801 typedef NotImplemented IfcBoundaryNodeCondition; // (not currently used by Assimp)
802 typedef NotImplemented IfcBoundaryNodeConditionWarping; // (not currently used by Assimp)
803 struct IfcSurface;
804 struct IfcBoundedSurface;
805 struct IfcBoundingBox;
806 struct IfcHalfSpaceSolid;
807 struct IfcBoxedHalfSpace;
808 struct IfcSpatialStructureElement;
809 struct IfcBuilding;
810 struct IfcBuildingElementComponent;
811 struct IfcBuildingElementPart;
812 struct IfcBuildingElementProxy;
813 struct IfcBuildingElementProxyType;
814 struct IfcBuildingStorey;
815 struct IfcCShapeProfileDef;
816 struct IfcFlowFittingType;
817 struct IfcCableCarrierFittingType;
818 struct IfcFlowSegmentType;
819 struct IfcCableCarrierSegmentType;
820 struct IfcCableSegmentType;
821 typedef NotImplemented IfcCalendarDate; // (not currently used by Assimp)
822 struct IfcPoint;
823 struct IfcCartesianPoint;
824 struct IfcCartesianTransformationOperator;
825 struct IfcCartesianTransformationOperator2D;
826 struct IfcCartesianTransformationOperator2DnonUniform;
827 struct IfcCartesianTransformationOperator3D;
828 struct IfcCartesianTransformationOperator3DnonUniform;
829 struct IfcCenterLineProfileDef;
830 struct IfcFeatureElement;
831 struct IfcFeatureElementSubtraction;
832 struct IfcEdgeFeature;
833 struct IfcChamferEdgeFeature;
834 struct IfcChillerType;
835 struct IfcConic;
836 struct IfcCircle;
837 struct IfcCircleProfileDef;
838 struct IfcCircleHollowProfileDef;
839 typedef NotImplemented IfcClassification; // (not currently used by Assimp)
840 typedef NotImplemented IfcClassificationItem; // (not currently used by Assimp)
841 typedef NotImplemented IfcClassificationItemRelationship; // (not currently used by Assimp)
842 typedef NotImplemented IfcClassificationNotation; // (not currently used by Assimp)
843 typedef NotImplemented IfcClassificationNotationFacet; // (not currently used by Assimp)
844 typedef NotImplemented IfcExternalReference; // (not currently used by Assimp)
845 typedef NotImplemented IfcClassificationReference; // (not currently used by Assimp)
846 struct IfcTopologicalRepresentationItem;
847 struct IfcConnectedFaceSet;
848 struct IfcClosedShell;
849 struct IfcCoilType;
850 struct IfcColourSpecification;
851 struct IfcColourRgb;
852 struct IfcColumn;
853 struct IfcColumnType;
854 struct IfcProperty;
855 struct IfcComplexProperty;
856 struct IfcCompositeCurveSegment;
857 struct IfcCompositeProfileDef;
858 struct IfcFlowMovingDeviceType;
859 struct IfcCompressorType;
860 struct IfcCondenserType;
861 struct IfcCondition;
862 struct IfcConditionCriterion;
863 typedef NotImplemented IfcConnectionGeometry; // (not currently used by Assimp)
864 typedef NotImplemented IfcConnectionCurveGeometry; // (not currently used by Assimp)
865 typedef NotImplemented IfcConnectionPointGeometry; // (not currently used by Assimp)
866 typedef NotImplemented IfcConnectionPointEccentricity; // (not currently used by Assimp)
867 typedef NotImplemented IfcConnectionPortGeometry; // (not currently used by Assimp)
868 typedef NotImplemented IfcConnectionSurfaceGeometry; // (not currently used by Assimp)
869 typedef NotImplemented IfcConstraint; // (not currently used by Assimp)
870 typedef NotImplemented IfcConstraintAggregationRelationship; // (not currently used by Assimp)
871 typedef NotImplemented IfcConstraintClassificationRelationship; // (not currently used by Assimp)
872 typedef NotImplemented IfcConstraintRelationship; // (not currently used by Assimp)
873 struct IfcResource;
874 struct IfcConstructionResource;
875 struct IfcConstructionEquipmentResource;
876 struct IfcConstructionMaterialResource;
877 struct IfcConstructionProductResource;
878 struct IfcNamedUnit;
879 struct IfcContextDependentUnit;
880 struct IfcControllerType;
881 struct IfcConversionBasedUnit;
882 struct IfcCooledBeamType;
883 struct IfcCoolingTowerType;
884 typedef NotImplemented IfcCoordinatedUniversalTimeOffset; // (not currently used by Assimp)
885 struct IfcCostItem;
886 struct IfcCostSchedule;
887 typedef NotImplemented IfcCostValue; // (not currently used by Assimp)
888 struct IfcCovering;
889 struct IfcCoveringType;
890 struct IfcCraneRailAShapeProfileDef;
891 struct IfcCraneRailFShapeProfileDef;
892 struct IfcCrewResource;
893 struct IfcSolidModel;
894 struct IfcCsgSolid;
895 typedef NotImplemented IfcCurrencyRelationship; // (not currently used by Assimp)
896 struct IfcCurtainWall;
897 struct IfcCurtainWallType;
898 struct IfcCurveBoundedPlane;
899 struct IfcPresentationStyle;
900 typedef NotImplemented IfcCurveStyle; // (not currently used by Assimp)
901 typedef NotImplemented IfcCurveStyleFont; // (not currently used by Assimp)
902 typedef NotImplemented IfcCurveStyleFontAndScaling; // (not currently used by Assimp)
903 typedef NotImplemented IfcCurveStyleFontPattern; // (not currently used by Assimp)
904 struct IfcDamperType;
905 typedef NotImplemented IfcDateAndTime; // (not currently used by Assimp)
906 struct IfcDefinedSymbol;
907 struct IfcDerivedProfileDef;
908 typedef NotImplemented IfcDerivedUnit; // (not currently used by Assimp)
909 typedef NotImplemented IfcDerivedUnitElement; // (not currently used by Assimp)
910 struct IfcDiameterDimension;
911 typedef NotImplemented IfcDraughtingCalloutRelationship; // (not currently used by Assimp)
912 typedef NotImplemented IfcDimensionCalloutRelationship; // (not currently used by Assimp)
913 struct IfcDimensionCurve;
914 struct IfcTerminatorSymbol;
915 struct IfcDimensionCurveTerminator;
916 typedef NotImplemented IfcDimensionPair; // (not currently used by Assimp)
917 typedef NotImplemented IfcDimensionalExponents; // (not currently used by Assimp)
918 struct IfcDirection;
919 struct IfcElementComponent;
920 struct IfcDiscreteAccessory;
921 struct IfcElementComponentType;
922 struct IfcDiscreteAccessoryType;
923 struct IfcDistributionElement;
924 struct IfcDistributionFlowElement;
925 struct IfcDistributionChamberElement;
926 struct IfcDistributionChamberElementType;
927 struct IfcDistributionControlElement;
928 struct IfcPort;
929 struct IfcDistributionPort;
930 typedef NotImplemented IfcDocumentElectronicFormat; // (not currently used by Assimp)
931 typedef NotImplemented IfcDocumentInformation; // (not currently used by Assimp)
932 typedef NotImplemented IfcDocumentInformationRelationship; // (not currently used by Assimp)
933 typedef NotImplemented IfcDocumentReference; // (not currently used by Assimp)
934 struct IfcDoor;
935 struct IfcPropertyDefinition;
936 struct IfcPropertySetDefinition;
937 typedef NotImplemented IfcDoorLiningProperties; // (not currently used by Assimp)
938 typedef NotImplemented IfcDoorPanelProperties; // (not currently used by Assimp)
939 struct IfcDoorStyle;
940 typedef NotImplemented IfcPreDefinedItem; // (not currently used by Assimp)
941 typedef NotImplemented IfcPreDefinedColour; // (not currently used by Assimp)
942 typedef NotImplemented IfcDraughtingPreDefinedColour; // (not currently used by Assimp)
943 typedef NotImplemented IfcPreDefinedCurveFont; // (not currently used by Assimp)
944 typedef NotImplemented IfcDraughtingPreDefinedCurveFont; // (not currently used by Assimp)
945 typedef NotImplemented IfcPreDefinedTextFont; // (not currently used by Assimp)
946 typedef NotImplemented IfcDraughtingPreDefinedTextFont; // (not currently used by Assimp)
947 struct IfcDuctFittingType;
948 struct IfcDuctSegmentType;
949 struct IfcFlowTreatmentDeviceType;
950 struct IfcDuctSilencerType;
951 struct IfcEdge;
952 struct IfcEdgeCurve;
953 struct IfcLoop;
954 struct IfcEdgeLoop;
955 struct IfcElectricApplianceType;
956 struct IfcFlowController;
957 struct IfcElectricDistributionPoint;
958 struct IfcFlowStorageDeviceType;
959 struct IfcElectricFlowStorageDeviceType;
960 struct IfcElectricGeneratorType;
961 struct IfcElectricHeaterType;
962 struct IfcElectricMotorType;
963 struct IfcElectricTimeControlType;
964 typedef NotImplemented IfcEnergyProperties; // (not currently used by Assimp)
965 typedef NotImplemented IfcElectricalBaseProperties; // (not currently used by Assimp)
966 struct IfcSystem;
967 struct IfcElectricalCircuit;
968 struct IfcElectricalElement;
969 struct IfcElementAssembly;
970 struct IfcElementQuantity;
971 struct IfcElementarySurface;
972 struct IfcEllipse;
973 struct IfcEllipseProfileDef;
974 struct IfcEnergyConversionDevice;
975 typedef NotImplemented IfcEnvironmentalImpactValue; // (not currently used by Assimp)
976 struct IfcEquipmentElement;
977 struct IfcEquipmentStandard;
978 struct IfcEvaporativeCoolerType;
979 struct IfcEvaporatorType;
980 typedef NotImplemented IfcMaterialProperties; // (not currently used by Assimp)
981 typedef NotImplemented IfcExtendedMaterialProperties; // (not currently used by Assimp)
982 typedef NotImplemented IfcExternallyDefinedHatchStyle; // (not currently used by Assimp)
983 typedef NotImplemented IfcExternallyDefinedSurfaceStyle; // (not currently used by Assimp)
984 typedef NotImplemented IfcExternallyDefinedSymbol; // (not currently used by Assimp)
985 typedef NotImplemented IfcExternallyDefinedTextFont; // (not currently used by Assimp)
986 struct IfcSweptAreaSolid;
987 struct IfcExtrudedAreaSolid;
988 struct IfcFace;
989 struct IfcFaceBasedSurfaceModel;
990 struct IfcFaceBound;
991 struct IfcFaceOuterBound;
992 struct IfcFaceSurface;
993 struct IfcManifoldSolidBrep;
994 struct IfcFacetedBrep;
995 struct IfcFacetedBrepWithVoids;
996 typedef NotImplemented IfcStructuralConnectionCondition; // (not currently used by Assimp)
997 typedef NotImplemented IfcFailureConnectionCondition; // (not currently used by Assimp)
998 struct IfcFanType;
999 struct IfcFastener;
1000 struct IfcFastenerType;
1001 struct IfcFeatureElementAddition;
1002 typedef NotImplemented IfcFillAreaStyle; // (not currently used by Assimp)
1003 struct IfcFillAreaStyleHatching;
1004 struct IfcFillAreaStyleTileSymbolWithStyle;
1005 struct IfcFillAreaStyleTiles;
1006 struct IfcFilterType;
1007 struct IfcFireSuppressionTerminalType;
1008 struct IfcFlowFitting;
1009 struct IfcFlowInstrumentType;
1010 struct IfcFlowMeterType;
1011 struct IfcFlowMovingDevice;
1012 struct IfcFlowSegment;
1013 struct IfcFlowStorageDevice;
1014 struct IfcFlowTerminal;
1015 struct IfcFlowTreatmentDevice;
1016 typedef NotImplemented IfcFluidFlowProperties; // (not currently used by Assimp)
1017 struct IfcFooting;
1018 typedef NotImplemented IfcFuelProperties; // (not currently used by Assimp)
1019 struct IfcFurnishingElement;
1020 struct IfcFurnishingElementType;
1021 struct IfcFurnitureStandard;
1022 struct IfcFurnitureType;
1023 struct IfcGasTerminalType;
1024 typedef NotImplemented IfcGeneralMaterialProperties; // (not currently used by Assimp)
1025 typedef NotImplemented IfcProfileProperties; // (not currently used by Assimp)
1026 typedef NotImplemented IfcGeneralProfileProperties; // (not currently used by Assimp)
1027 struct IfcGeometricSet;
1028 struct IfcGeometricCurveSet;
1029 struct IfcRepresentationContext;
1030 struct IfcGeometricRepresentationContext;
1031 struct IfcGeometricRepresentationSubContext;
1032 struct IfcGrid;
1033 typedef NotImplemented IfcGridAxis; // (not currently used by Assimp)
1034 struct IfcObjectPlacement;
1035 struct IfcGridPlacement;
1036 struct IfcHeatExchangerType;
1037 struct IfcHumidifierType;
1038 typedef NotImplemented IfcHygroscopicMaterialProperties; // (not currently used by Assimp)
1039 typedef NotImplemented IfcImageTexture; // (not currently used by Assimp)
1040 struct IfcInventory;
1041 typedef NotImplemented IfcTimeSeries; // (not currently used by Assimp)
1042 typedef NotImplemented IfcIrregularTimeSeries; // (not currently used by Assimp)
1043 typedef NotImplemented IfcIrregularTimeSeriesValue; // (not currently used by Assimp)
1044 struct IfcJunctionBoxType;
1045 struct IfcLShapeProfileDef;
1046 struct IfcLaborResource;
1047 struct IfcLampType;
1048 typedef NotImplemented IfcLibraryInformation; // (not currently used by Assimp)
1049 typedef NotImplemented IfcLibraryReference; // (not currently used by Assimp)
1050 typedef NotImplemented IfcLightDistributionData; // (not currently used by Assimp)
1051 struct IfcLightFixtureType;
1052 typedef NotImplemented IfcLightIntensityDistribution; // (not currently used by Assimp)
1053 struct IfcLightSource;
1054 struct IfcLightSourceAmbient;
1055 struct IfcLightSourceDirectional;
1056 struct IfcLightSourceGoniometric;
1057 struct IfcLightSourcePositional;
1058 struct IfcLightSourceSpot;
1059 struct IfcLine;
1060 struct IfcLinearDimension;
1061 struct IfcLocalPlacement;
1062 typedef NotImplemented IfcLocalTime; // (not currently used by Assimp)
1063 struct IfcMappedItem;
1064 typedef NotImplemented IfcMaterial; // (not currently used by Assimp)
1065 typedef NotImplemented IfcMaterialClassificationRelationship; // (not currently used by Assimp)
1066 struct IfcProductRepresentation;
1067 struct IfcMaterialDefinitionRepresentation;
1068 typedef NotImplemented IfcMaterialLayer; // (not currently used by Assimp)
1069 typedef NotImplemented IfcMaterialLayerSet; // (not currently used by Assimp)
1070 typedef NotImplemented IfcMaterialLayerSetUsage; // (not currently used by Assimp)
1071 typedef NotImplemented IfcMaterialList; // (not currently used by Assimp)
1072 struct IfcMeasureWithUnit;
1073 typedef NotImplemented IfcMechanicalMaterialProperties; // (not currently used by Assimp)
1074 typedef NotImplemented IfcMechanicalConcreteMaterialProperties; // (not currently used by Assimp)
1075 struct IfcMechanicalFastener;
1076 struct IfcMechanicalFastenerType;
1077 typedef NotImplemented IfcMechanicalSteelMaterialProperties; // (not currently used by Assimp)
1078 struct IfcMember;
1079 struct IfcMemberType;
1080 typedef NotImplemented IfcMetric; // (not currently used by Assimp)
1081 typedef NotImplemented IfcMonetaryUnit; // (not currently used by Assimp)
1082 struct IfcMotorConnectionType;
1083 struct IfcProcess;
1084 struct IfcTask;
1085 struct IfcMove;
1086 typedef NotImplemented IfcObjective; // (not currently used by Assimp)
1087 struct IfcOccupant;
1088 struct IfcOffsetCurve2D;
1089 struct IfcOffsetCurve3D;
1090 struct IfcOneDirectionRepeatFactor;
1091 struct IfcOpenShell;
1092 struct IfcOpeningElement;
1093 typedef NotImplemented IfcOpticalMaterialProperties; // (not currently used by Assimp)
1094 struct IfcOrderAction;
1095 typedef NotImplemented IfcOrganization; // (not currently used by Assimp)
1096 typedef NotImplemented IfcOrganizationRelationship; // (not currently used by Assimp)
1097 struct IfcOrientedEdge;
1098 struct IfcOutletType;
1099 typedef NotImplemented IfcOwnerHistory; // (not currently used by Assimp)
1100 struct IfcPath;
1101 struct IfcPerformanceHistory;
1102 typedef NotImplemented IfcPermeableCoveringProperties; // (not currently used by Assimp)
1103 struct IfcPermit;
1104 typedef NotImplemented IfcPerson; // (not currently used by Assimp)
1105 typedef NotImplemented IfcPersonAndOrganization; // (not currently used by Assimp)
1106 typedef NotImplemented IfcPhysicalQuantity; // (not currently used by Assimp)
1107 typedef NotImplemented IfcPhysicalComplexQuantity; // (not currently used by Assimp)
1108 typedef NotImplemented IfcPhysicalSimpleQuantity; // (not currently used by Assimp)
1109 struct IfcPile;
1110 struct IfcPipeFittingType;
1111 struct IfcPipeSegmentType;
1112 typedef NotImplemented IfcPixelTexture; // (not currently used by Assimp)
1113 struct IfcPlanarExtent;
1114 struct IfcPlanarBox;
1115 struct IfcPlane;
1116 struct IfcPlate;
1117 struct IfcPlateType;
1118 struct IfcPointOnCurve;
1119 struct IfcPointOnSurface;
1120 struct IfcPolyLoop;
1121 struct IfcPolygonalBoundedHalfSpace;
1122 struct IfcPolyline;
1123 typedef NotImplemented IfcPostalAddress; // (not currently used by Assimp)
1124 typedef NotImplemented IfcPreDefinedSymbol; // (not currently used by Assimp)
1125 typedef NotImplemented IfcPreDefinedDimensionSymbol; // (not currently used by Assimp)
1126 typedef NotImplemented IfcPreDefinedPointMarkerSymbol; // (not currently used by Assimp)
1127 typedef NotImplemented IfcPreDefinedTerminatorSymbol; // (not currently used by Assimp)
1128 typedef NotImplemented IfcPresentationLayerAssignment; // (not currently used by Assimp)
1129 typedef NotImplemented IfcPresentationLayerWithStyle; // (not currently used by Assimp)
1130 struct IfcPresentationStyleAssignment;
1131 struct IfcProcedure;
1132 struct IfcProductDefinitionShape;
1133 typedef NotImplemented IfcProductsOfCombustionProperties; // (not currently used by Assimp)
1134 struct IfcProject;
1135 struct IfcProjectOrder;
1136 struct IfcProjectOrderRecord;
1137 struct IfcProjectionCurve;
1138 struct IfcProjectionElement;
1139 struct IfcSimpleProperty;
1140 struct IfcPropertyBoundedValue;
1141 typedef NotImplemented IfcPropertyConstraintRelationship; // (not currently used by Assimp)
1142 typedef NotImplemented IfcPropertyDependencyRelationship; // (not currently used by Assimp)
1143 struct IfcPropertyEnumeratedValue;
1144 typedef NotImplemented IfcPropertyEnumeration; // (not currently used by Assimp)
1145 struct IfcPropertyListValue;
1146 struct IfcPropertyReferenceValue;
1147 struct IfcPropertySet;
1148 struct IfcPropertySingleValue;
1149 struct IfcPropertyTableValue;
1150 struct IfcProtectiveDeviceType;
1151 struct IfcProxy;
1152 struct IfcPumpType;
1153 typedef NotImplemented IfcQuantityArea; // (not currently used by Assimp)
1154 typedef NotImplemented IfcQuantityCount; // (not currently used by Assimp)
1155 typedef NotImplemented IfcQuantityLength; // (not currently used by Assimp)
1156 typedef NotImplemented IfcQuantityTime; // (not currently used by Assimp)
1157 typedef NotImplemented IfcQuantityVolume; // (not currently used by Assimp)
1158 typedef NotImplemented IfcQuantityWeight; // (not currently used by Assimp)
1159 struct IfcRadiusDimension;
1160 struct IfcRailing;
1161 struct IfcRailingType;
1162 struct IfcRamp;
1163 struct IfcRampFlight;
1164 struct IfcRampFlightType;
1165 struct IfcRationalBezierCurve;
1166 struct IfcRectangleProfileDef;
1167 struct IfcRectangleHollowProfileDef;
1168 struct IfcRectangularPyramid;
1169 struct IfcRectangularTrimmedSurface;
1170 typedef NotImplemented IfcReferencesValueDocument; // (not currently used by Assimp)
1171 typedef NotImplemented IfcRegularTimeSeries; // (not currently used by Assimp)
1172 typedef NotImplemented IfcReinforcementBarProperties; // (not currently used by Assimp)
1173 typedef NotImplemented IfcReinforcementDefinitionProperties; // (not currently used by Assimp)
1174 struct IfcReinforcingElement;
1175 struct IfcReinforcingBar;
1176 struct IfcReinforcingMesh;
1177 struct IfcRelationship;
1178 struct IfcRelDecomposes;
1179 struct IfcRelAggregates;
1180 typedef NotImplemented IfcRelAssigns; // (not currently used by Assimp)
1181 typedef NotImplemented IfcRelAssignsToControl; // (not currently used by Assimp)
1182 typedef NotImplemented IfcRelAssignsTasks; // (not currently used by Assimp)
1183 typedef NotImplemented IfcRelAssignsToActor; // (not currently used by Assimp)
1184 typedef NotImplemented IfcRelAssignsToGroup; // (not currently used by Assimp)
1185 typedef NotImplemented IfcRelAssignsToProcess; // (not currently used by Assimp)
1186 typedef NotImplemented IfcRelAssignsToProduct; // (not currently used by Assimp)
1187 typedef NotImplemented IfcRelAssignsToProjectOrder; // (not currently used by Assimp)
1188 typedef NotImplemented IfcRelAssignsToResource; // (not currently used by Assimp)
1189 typedef NotImplemented IfcRelAssociates; // (not currently used by Assimp)
1190 typedef NotImplemented IfcRelAssociatesAppliedValue; // (not currently used by Assimp)
1191 typedef NotImplemented IfcRelAssociatesApproval; // (not currently used by Assimp)
1192 typedef NotImplemented IfcRelAssociatesClassification; // (not currently used by Assimp)
1193 typedef NotImplemented IfcRelAssociatesConstraint; // (not currently used by Assimp)
1194 typedef NotImplemented IfcRelAssociatesDocument; // (not currently used by Assimp)
1195 typedef NotImplemented IfcRelAssociatesLibrary; // (not currently used by Assimp)
1196 typedef NotImplemented IfcRelAssociatesMaterial; // (not currently used by Assimp)
1197 typedef NotImplemented IfcRelAssociatesProfileProperties; // (not currently used by Assimp)
1198 struct IfcRelConnects;
1199 typedef NotImplemented IfcRelConnectsElements; // (not currently used by Assimp)
1200 typedef NotImplemented IfcRelConnectsPathElements; // (not currently used by Assimp)
1201 typedef NotImplemented IfcRelConnectsPortToElement; // (not currently used by Assimp)
1202 typedef NotImplemented IfcRelConnectsPorts; // (not currently used by Assimp)
1203 typedef NotImplemented IfcRelConnectsStructuralActivity; // (not currently used by Assimp)
1204 typedef NotImplemented IfcRelConnectsStructuralElement; // (not currently used by Assimp)
1205 typedef NotImplemented IfcRelConnectsStructuralMember; // (not currently used by Assimp)
1206 typedef NotImplemented IfcRelConnectsWithEccentricity; // (not currently used by Assimp)
1207 typedef NotImplemented IfcRelConnectsWithRealizingElements; // (not currently used by Assimp)
1208 struct IfcRelContainedInSpatialStructure;
1209 typedef NotImplemented IfcRelCoversBldgElements; // (not currently used by Assimp)
1210 typedef NotImplemented IfcRelCoversSpaces; // (not currently used by Assimp)
1211 struct IfcRelDefines;
1212 struct IfcRelDefinesByProperties;
1213 typedef NotImplemented IfcRelDefinesByType; // (not currently used by Assimp)
1214 struct IfcRelFillsElement;
1215 typedef NotImplemented IfcRelFlowControlElements; // (not currently used by Assimp)
1216 typedef NotImplemented IfcRelInteractionRequirements; // (not currently used by Assimp)
1217 typedef NotImplemented IfcRelNests; // (not currently used by Assimp)
1218 typedef NotImplemented IfcRelOccupiesSpaces; // (not currently used by Assimp)
1219 struct IfcRelOverridesProperties;
1220 typedef NotImplemented IfcRelProjectsElement; // (not currently used by Assimp)
1221 typedef NotImplemented IfcRelReferencedInSpatialStructure; // (not currently used by Assimp)
1222 typedef NotImplemented IfcRelSchedulesCostItems; // (not currently used by Assimp)
1223 typedef NotImplemented IfcRelSequence; // (not currently used by Assimp)
1224 typedef NotImplemented IfcRelServicesBuildings; // (not currently used by Assimp)
1225 typedef NotImplemented IfcRelSpaceBoundary; // (not currently used by Assimp)
1226 struct IfcRelVoidsElement;
1227 typedef NotImplemented IfcRelaxation; // (not currently used by Assimp)
1228 struct IfcRepresentation;
1229 struct IfcRepresentationMap;
1230 struct IfcRevolvedAreaSolid;
1231 typedef NotImplemented IfcRibPlateProfileProperties; // (not currently used by Assimp)
1232 struct IfcRightCircularCone;
1233 struct IfcRightCircularCylinder;
1234 struct IfcRoof;
1235 struct IfcRoundedEdgeFeature;
1236 struct IfcRoundedRectangleProfileDef;
1237 struct IfcSIUnit;
1238 struct IfcSanitaryTerminalType;
1239 struct IfcScheduleTimeControl;
1240 typedef NotImplemented IfcSectionProperties; // (not currently used by Assimp)
1241 typedef NotImplemented IfcSectionReinforcementProperties; // (not currently used by Assimp)
1242 struct IfcSectionedSpine;
1243 struct IfcSensorType;
1244 struct IfcServiceLife;
1245 typedef NotImplemented IfcServiceLifeFactor; // (not currently used by Assimp)
1246 typedef NotImplemented IfcShapeAspect; // (not currently used by Assimp)
1247 struct IfcShapeModel;
1248 struct IfcShapeRepresentation;
1249 struct IfcShellBasedSurfaceModel;
1250 struct IfcSite;
1251 struct IfcSlab;
1252 struct IfcSlabType;
1253 typedef NotImplemented IfcSlippageConnectionCondition; // (not currently used by Assimp)
1254 typedef NotImplemented IfcSoundProperties; // (not currently used by Assimp)
1255 typedef NotImplemented IfcSoundValue; // (not currently used by Assimp)
1256 struct IfcSpace;
1257 struct IfcSpaceHeaterType;
1258 struct IfcSpaceProgram;
1259 typedef NotImplemented IfcSpaceThermalLoadProperties; // (not currently used by Assimp)
1260 struct IfcSpatialStructureElementType;
1261 struct IfcSpaceType;
1262 struct IfcSphere;
1263 struct IfcStackTerminalType;
1264 struct IfcStair;
1265 struct IfcStairFlight;
1266 struct IfcStairFlightType;
1267 struct IfcStructuralActivity;
1268 struct IfcStructuralAction;
1269 struct IfcStructuralAnalysisModel;
1270 struct IfcStructuralItem;
1271 struct IfcStructuralConnection;
1272 struct IfcStructuralCurveConnection;
1273 struct IfcStructuralMember;
1274 struct IfcStructuralCurveMember;
1275 struct IfcStructuralCurveMemberVarying;
1276 struct IfcStructuralLinearAction;
1277 struct IfcStructuralLinearActionVarying;
1278 typedef NotImplemented IfcStructuralLoad; // (not currently used by Assimp)
1279 struct IfcStructuralLoadGroup;
1280 typedef NotImplemented IfcStructuralLoadStatic; // (not currently used by Assimp)
1281 typedef NotImplemented IfcStructuralLoadLinearForce; // (not currently used by Assimp)
1282 typedef NotImplemented IfcStructuralLoadPlanarForce; // (not currently used by Assimp)
1283 typedef NotImplemented IfcStructuralLoadSingleDisplacement; // (not currently used by Assimp)
1284 typedef NotImplemented IfcStructuralLoadSingleDisplacementDistortion; // (not currently used by Assimp)
1285 typedef NotImplemented IfcStructuralLoadSingleForce; // (not currently used by Assimp)
1286 typedef NotImplemented IfcStructuralLoadSingleForceWarping; // (not currently used by Assimp)
1287 typedef NotImplemented IfcStructuralLoadTemperature; // (not currently used by Assimp)
1288 struct IfcStructuralPlanarAction;
1289 struct IfcStructuralPlanarActionVarying;
1290 struct IfcStructuralPointAction;
1291 struct IfcStructuralPointConnection;
1292 struct IfcStructuralReaction;
1293 struct IfcStructuralPointReaction;
1294 typedef NotImplemented IfcStructuralProfileProperties; // (not currently used by Assimp)
1295 struct IfcStructuralResultGroup;
1296 typedef NotImplemented IfcStructuralSteelProfileProperties; // (not currently used by Assimp)
1297 struct IfcStructuralSurfaceConnection;
1298 struct IfcStructuralSurfaceMember;
1299 struct IfcStructuralSurfaceMemberVarying;
1300 struct IfcStructuredDimensionCallout;
1301 struct IfcStyleModel;
1302 struct IfcStyledRepresentation;
1303 struct IfcSubContractResource;
1304 struct IfcSubedge;
1305 struct IfcSurfaceCurveSweptAreaSolid;
1306 struct IfcSweptSurface;
1307 struct IfcSurfaceOfLinearExtrusion;
1308 struct IfcSurfaceOfRevolution;
1309 struct IfcSurfaceStyle;
1310 typedef NotImplemented IfcSurfaceStyleLighting; // (not currently used by Assimp)
1311 typedef NotImplemented IfcSurfaceStyleRefraction; // (not currently used by Assimp)
1312 struct IfcSurfaceStyleShading;
1313 struct IfcSurfaceStyleRendering;
1314 struct IfcSurfaceStyleWithTextures;
1315 struct IfcSweptDiskSolid;
1316 struct IfcSwitchingDeviceType;
1317 typedef NotImplemented IfcSymbolStyle; // (not currently used by Assimp)
1318 struct IfcSystemFurnitureElementType;
1319 struct IfcTShapeProfileDef;
1320 typedef NotImplemented IfcTable; // (not currently used by Assimp)
1321 typedef NotImplemented IfcTableRow; // (not currently used by Assimp)
1322 struct IfcTankType;
1323 typedef NotImplemented IfcTelecomAddress; // (not currently used by Assimp)
1324 struct IfcTendon;
1325 struct IfcTendonAnchor;
1326 struct IfcTextLiteral;
1327 struct IfcTextLiteralWithExtent;
1328 typedef NotImplemented IfcTextStyle; // (not currently used by Assimp)
1329 typedef NotImplemented IfcTextStyleFontModel; // (not currently used by Assimp)
1330 typedef NotImplemented IfcTextStyleForDefinedFont; // (not currently used by Assimp)
1331 typedef NotImplemented IfcTextStyleTextModel; // (not currently used by Assimp)
1332 typedef NotImplemented IfcTextStyleWithBoxCharacteristics; // (not currently used by Assimp)
1333 typedef NotImplemented IfcTextureCoordinate; // (not currently used by Assimp)
1334 typedef NotImplemented IfcTextureCoordinateGenerator; // (not currently used by Assimp)
1335 typedef NotImplemented IfcTextureMap; // (not currently used by Assimp)
1336 typedef NotImplemented IfcTextureVertex; // (not currently used by Assimp)
1337 typedef NotImplemented IfcThermalMaterialProperties; // (not currently used by Assimp)
1338 typedef NotImplemented IfcTimeSeriesReferenceRelationship; // (not currently used by Assimp)
1339 struct IfcTimeSeriesSchedule;
1340 typedef NotImplemented IfcTimeSeriesValue; // (not currently used by Assimp)
1341 struct IfcTopologyRepresentation;
1342 struct IfcTransformerType;
1343 struct IfcTransportElement;
1344 struct IfcTransportElementType;
1345 struct IfcTrapeziumProfileDef;
1346 struct IfcTrimmedCurve;
1347 struct IfcTubeBundleType;
1348 struct IfcTwoDirectionRepeatFactor;
1349 struct IfcUShapeProfileDef;
1350 struct IfcUnitAssignment;
1351 struct IfcUnitaryEquipmentType;
1352 struct IfcValveType;
1353 struct IfcVector;
1354 struct IfcVertex;
1355 typedef NotImplemented IfcVertexBasedTextureMap; // (not currently used by Assimp)
1356 struct IfcVertexLoop;
1357 struct IfcVertexPoint;
1358 struct IfcVibrationIsolatorType;
1359 struct IfcVirtualElement;
1360 typedef NotImplemented IfcVirtualGridIntersection; // (not currently used by Assimp)
1361 struct IfcWall;
1362 struct IfcWallStandardCase;
1363 struct IfcWallType;
1364 struct IfcWasteTerminalType;
1365 typedef NotImplemented IfcWaterProperties; // (not currently used by Assimp)
1366 struct IfcWindow;
1367 typedef NotImplemented IfcWindowLiningProperties; // (not currently used by Assimp)
1368 typedef NotImplemented IfcWindowPanelProperties; // (not currently used by Assimp)
1369 struct IfcWindowStyle;
1370 struct IfcWorkControl;
1371 struct IfcWorkPlan;
1372 struct IfcWorkSchedule;
1373 struct IfcZShapeProfileDef;
1374 struct IfcZone;
1375
1376
1377
1378 // C++ wrapper for IfcRepresentationItem
1379 struct IfcRepresentationItem : ObjectHelper<IfcRepresentationItem,0> { IfcRepresentationItem() : Object("IfcRepresentationItem") {}
1380
1381 };
1382
1383 // C++ wrapper for IfcGeometricRepresentationItem
1384 struct IfcGeometricRepresentationItem : IfcRepresentationItem, ObjectHelper<IfcGeometricRepresentationItem,0> { IfcGeometricRepresentationItem() : Object("IfcGeometricRepresentationItem") {}
1385
1386 };
1387
1388 // C++ wrapper for IfcCurve
1389 struct IfcCurve : IfcGeometricRepresentationItem, ObjectHelper<IfcCurve,0> { IfcCurve() : Object("IfcCurve") {}
1390
1391 };
1392
1393 // C++ wrapper for IfcBoundedCurve
1394 struct IfcBoundedCurve : IfcCurve, ObjectHelper<IfcBoundedCurve,0> { IfcBoundedCurve() : Object("IfcBoundedCurve") {}
1395
1396 };
1397
1398 // C++ wrapper for IfcCompositeCurve
1399 struct IfcCompositeCurve : IfcBoundedCurve, ObjectHelper<IfcCompositeCurve,2> { IfcCompositeCurve() : Object("IfcCompositeCurve") {}
1400 ListOf< Lazy< IfcCompositeCurveSegment >, 1, 0 > Segments;
1401 LOGICAL::Out SelfIntersect;
1402 };
1403
1404 // C++ wrapper for Ifc2DCompositeCurve
1405 struct Ifc2DCompositeCurve : IfcCompositeCurve, ObjectHelper<Ifc2DCompositeCurve,0> { Ifc2DCompositeCurve() : Object("Ifc2DCompositeCurve") {}
1406
1407 };
1408
1409 // C++ wrapper for IfcRoot
1410 struct IfcRoot : ObjectHelper<IfcRoot,4> { IfcRoot() : Object("IfcRoot") {}
1411 IfcGloballyUniqueId::Out GlobalId;
1412 Lazy< NotImplemented > OwnerHistory;
1413 Maybe< IfcLabel::Out > Name;
1414 Maybe< IfcText::Out > Description;
1415 };
1416
1417 // C++ wrapper for IfcObjectDefinition
1418 struct IfcObjectDefinition : IfcRoot, ObjectHelper<IfcObjectDefinition,0> { IfcObjectDefinition() : Object("IfcObjectDefinition") {}
1419
1420 };
1421
1422 // C++ wrapper for IfcObject
1423 struct IfcObject : IfcObjectDefinition, ObjectHelper<IfcObject,1> { IfcObject() : Object("IfcObject") {}
1424 Maybe< IfcLabel::Out > ObjectType;
1425 };
1426
1427 // C++ wrapper for IfcControl
1428 struct IfcControl : IfcObject, ObjectHelper<IfcControl,0> { IfcControl() : Object("IfcControl") {}
1429
1430 };
1431
1432 // C++ wrapper for IfcActionRequest
1433 struct IfcActionRequest : IfcControl, ObjectHelper<IfcActionRequest,1> { IfcActionRequest() : Object("IfcActionRequest") {}
1434 IfcIdentifier::Out RequestID;
1435 };
1436
1437 // C++ wrapper for IfcActor
1438 struct IfcActor : IfcObject, ObjectHelper<IfcActor,1> { IfcActor() : Object("IfcActor") {}
1439 IfcActorSelect::Out TheActor;
1440 };
1441
1442 // C++ wrapper for IfcTypeObject
1443 struct IfcTypeObject : IfcObjectDefinition, ObjectHelper<IfcTypeObject,2> { IfcTypeObject() : Object("IfcTypeObject") {}
1444 Maybe< IfcLabel::Out > ApplicableOccurrence;
1445 Maybe< ListOf< Lazy< IfcPropertySetDefinition >, 1, 0 > > HasPropertySets;
1446 };
1447
1448 // C++ wrapper for IfcTypeProduct
1449 struct IfcTypeProduct : IfcTypeObject, ObjectHelper<IfcTypeProduct,2> { IfcTypeProduct() : Object("IfcTypeProduct") {}
1450 Maybe< ListOf< Lazy< IfcRepresentationMap >, 1, 0 > > RepresentationMaps;
1451 Maybe< IfcLabel::Out > Tag;
1452 };
1453
1454 // C++ wrapper for IfcElementType
1455 struct IfcElementType : IfcTypeProduct, ObjectHelper<IfcElementType,1> { IfcElementType() : Object("IfcElementType") {}
1456 Maybe< IfcLabel::Out > ElementType;
1457 };
1458
1459 // C++ wrapper for IfcDistributionElementType
1460 struct IfcDistributionElementType : IfcElementType, ObjectHelper<IfcDistributionElementType,0> { IfcDistributionElementType() : Object("IfcDistributionElementType") {}
1461
1462 };
1463
1464 // C++ wrapper for IfcDistributionControlElementType
1465 struct IfcDistributionControlElementType : IfcDistributionElementType, ObjectHelper<IfcDistributionControlElementType,0> { IfcDistributionControlElementType() : Object("IfcDistributionControlElementType") {}
1466
1467 };
1468
1469 // C++ wrapper for IfcActuatorType
1470 struct IfcActuatorType : IfcDistributionControlElementType, ObjectHelper<IfcActuatorType,1> { IfcActuatorType() : Object("IfcActuatorType") {}
1471 IfcActuatorTypeEnum::Out PredefinedType;
1472 };
1473
1474 // C++ wrapper for IfcDistributionFlowElementType
1475 struct IfcDistributionFlowElementType : IfcDistributionElementType, ObjectHelper<IfcDistributionFlowElementType,0> { IfcDistributionFlowElementType() : Object("IfcDistributionFlowElementType") {}
1476
1477 };
1478
1479 // C++ wrapper for IfcFlowControllerType
1480 struct IfcFlowControllerType : IfcDistributionFlowElementType, ObjectHelper<IfcFlowControllerType,0> { IfcFlowControllerType() : Object("IfcFlowControllerType") {}
1481
1482 };
1483
1484 // C++ wrapper for IfcAirTerminalBoxType
1485 struct IfcAirTerminalBoxType : IfcFlowControllerType, ObjectHelper<IfcAirTerminalBoxType,1> { IfcAirTerminalBoxType() : Object("IfcAirTerminalBoxType") {}
1486 IfcAirTerminalBoxTypeEnum::Out PredefinedType;
1487 };
1488
1489 // C++ wrapper for IfcFlowTerminalType
1490 struct IfcFlowTerminalType : IfcDistributionFlowElementType, ObjectHelper<IfcFlowTerminalType,0> { IfcFlowTerminalType() : Object("IfcFlowTerminalType") {}
1491
1492 };
1493
1494 // C++ wrapper for IfcAirTerminalType
1495 struct IfcAirTerminalType : IfcFlowTerminalType, ObjectHelper<IfcAirTerminalType,1> { IfcAirTerminalType() : Object("IfcAirTerminalType") {}
1496 IfcAirTerminalTypeEnum::Out PredefinedType;
1497 };
1498
1499 // C++ wrapper for IfcEnergyConversionDeviceType
1500 struct IfcEnergyConversionDeviceType : IfcDistributionFlowElementType, ObjectHelper<IfcEnergyConversionDeviceType,0> { IfcEnergyConversionDeviceType() : Object("IfcEnergyConversionDeviceType") {}
1501
1502 };
1503
1504 // C++ wrapper for IfcAirToAirHeatRecoveryType
1505 struct IfcAirToAirHeatRecoveryType : IfcEnergyConversionDeviceType, ObjectHelper<IfcAirToAirHeatRecoveryType,1> { IfcAirToAirHeatRecoveryType() : Object("IfcAirToAirHeatRecoveryType") {}
1506 IfcAirToAirHeatRecoveryTypeEnum::Out PredefinedType;
1507 };
1508
1509 // C++ wrapper for IfcAlarmType
1510 struct IfcAlarmType : IfcDistributionControlElementType, ObjectHelper<IfcAlarmType,1> { IfcAlarmType() : Object("IfcAlarmType") {}
1511 IfcAlarmTypeEnum::Out PredefinedType;
1512 };
1513
1514 // C++ wrapper for IfcDraughtingCallout
1515 struct IfcDraughtingCallout : IfcGeometricRepresentationItem, ObjectHelper<IfcDraughtingCallout,1> { IfcDraughtingCallout() : Object("IfcDraughtingCallout") {}
1516 ListOf< IfcDraughtingCalloutElement, 1, 0 >::Out Contents;
1517 };
1518
1519 // C++ wrapper for IfcDimensionCurveDirectedCallout
1520 struct IfcDimensionCurveDirectedCallout : IfcDraughtingCallout, ObjectHelper<IfcDimensionCurveDirectedCallout,0> { IfcDimensionCurveDirectedCallout() : Object("IfcDimensionCurveDirectedCallout") {}
1521
1522 };
1523
1524 // C++ wrapper for IfcAngularDimension
1525 struct IfcAngularDimension : IfcDimensionCurveDirectedCallout, ObjectHelper<IfcAngularDimension,0> { IfcAngularDimension() : Object("IfcAngularDimension") {}
1526
1527 };
1528
1529 // C++ wrapper for IfcProduct
1530 struct IfcProduct : IfcObject, ObjectHelper<IfcProduct,2> { IfcProduct() : Object("IfcProduct") {}
1531 Maybe< Lazy< IfcObjectPlacement > > ObjectPlacement;
1532 Maybe< Lazy< IfcProductRepresentation > > Representation;
1533 };
1534
1535 // C++ wrapper for IfcAnnotation
1536 struct IfcAnnotation : IfcProduct, ObjectHelper<IfcAnnotation,0> { IfcAnnotation() : Object("IfcAnnotation") {}
1537
1538 };
1539
1540 // C++ wrapper for IfcStyledItem
1541 struct IfcStyledItem : IfcRepresentationItem, ObjectHelper<IfcStyledItem,3> { IfcStyledItem() : Object("IfcStyledItem") {}
1542 Maybe< Lazy< IfcRepresentationItem > > Item;
1543 ListOf< Lazy< IfcPresentationStyleAssignment >, 1, 0 > Styles;
1544 Maybe< IfcLabel::Out > Name;
1545 };
1546
1547 // C++ wrapper for IfcAnnotationOccurrence
1548 struct IfcAnnotationOccurrence : IfcStyledItem, ObjectHelper<IfcAnnotationOccurrence,0> { IfcAnnotationOccurrence() : Object("IfcAnnotationOccurrence") {}
1549
1550 };
1551
1552 // C++ wrapper for IfcAnnotationCurveOccurrence
1553 struct IfcAnnotationCurveOccurrence : IfcAnnotationOccurrence, ObjectHelper<IfcAnnotationCurveOccurrence,0> { IfcAnnotationCurveOccurrence() : Object("IfcAnnotationCurveOccurrence") {}
1554
1555 };
1556
1557 // C++ wrapper for IfcAnnotationFillArea
1558 struct IfcAnnotationFillArea : IfcGeometricRepresentationItem, ObjectHelper<IfcAnnotationFillArea,2> { IfcAnnotationFillArea() : Object("IfcAnnotationFillArea") {}
1559 Lazy< IfcCurve > OuterBoundary;
1560 Maybe< ListOf< Lazy< IfcCurve >, 1, 0 > > InnerBoundaries;
1561 };
1562
1563 // C++ wrapper for IfcAnnotationFillAreaOccurrence
1564 struct IfcAnnotationFillAreaOccurrence : IfcAnnotationOccurrence, ObjectHelper<IfcAnnotationFillAreaOccurrence,2> { IfcAnnotationFillAreaOccurrence() : Object("IfcAnnotationFillAreaOccurrence") {}
1565 Maybe< Lazy< IfcPoint > > FillStyleTarget;
1566 Maybe< IfcGlobalOrLocalEnum::Out > GlobalOrLocal;
1567 };
1568
1569 // C++ wrapper for IfcAnnotationSurface
1570 struct IfcAnnotationSurface : IfcGeometricRepresentationItem, ObjectHelper<IfcAnnotationSurface,2> { IfcAnnotationSurface() : Object("IfcAnnotationSurface") {}
1571 Lazy< IfcGeometricRepresentationItem > Item;
1572 Maybe< Lazy< NotImplemented > > TextureCoordinates;
1573 };
1574
1575 // C++ wrapper for IfcAnnotationSurfaceOccurrence
1576 struct IfcAnnotationSurfaceOccurrence : IfcAnnotationOccurrence, ObjectHelper<IfcAnnotationSurfaceOccurrence,0> { IfcAnnotationSurfaceOccurrence() : Object("IfcAnnotationSurfaceOccurrence") {}
1577
1578 };
1579
1580 // C++ wrapper for IfcAnnotationSymbolOccurrence
1581 struct IfcAnnotationSymbolOccurrence : IfcAnnotationOccurrence, ObjectHelper<IfcAnnotationSymbolOccurrence,0> { IfcAnnotationSymbolOccurrence() : Object("IfcAnnotationSymbolOccurrence") {}
1582
1583 };
1584
1585 // C++ wrapper for IfcAnnotationTextOccurrence
1586 struct IfcAnnotationTextOccurrence : IfcAnnotationOccurrence, ObjectHelper<IfcAnnotationTextOccurrence,0> { IfcAnnotationTextOccurrence() : Object("IfcAnnotationTextOccurrence") {}
1587
1588 };
1589
1590 // C++ wrapper for IfcProfileDef
1591 struct IfcProfileDef : ObjectHelper<IfcProfileDef,2> { IfcProfileDef() : Object("IfcProfileDef") {}
1592 IfcProfileTypeEnum::Out ProfileType;
1593 Maybe< IfcLabel::Out > ProfileName;
1594 };
1595
1596 // C++ wrapper for IfcArbitraryClosedProfileDef
1597 struct IfcArbitraryClosedProfileDef : IfcProfileDef, ObjectHelper<IfcArbitraryClosedProfileDef,1> { IfcArbitraryClosedProfileDef() : Object("IfcArbitraryClosedProfileDef") {}
1598 Lazy< IfcCurve > OuterCurve;
1599 };
1600
1601 // C++ wrapper for IfcArbitraryOpenProfileDef
1602 struct IfcArbitraryOpenProfileDef : IfcProfileDef, ObjectHelper<IfcArbitraryOpenProfileDef,1> { IfcArbitraryOpenProfileDef() : Object("IfcArbitraryOpenProfileDef") {}
1603 Lazy< IfcBoundedCurve > Curve;
1604 };
1605
1606 // C++ wrapper for IfcArbitraryProfileDefWithVoids
1607 struct IfcArbitraryProfileDefWithVoids : IfcArbitraryClosedProfileDef, ObjectHelper<IfcArbitraryProfileDefWithVoids,1> { IfcArbitraryProfileDefWithVoids() : Object("IfcArbitraryProfileDefWithVoids") {}
1608 ListOf< Lazy< IfcCurve >, 1, 0 > InnerCurves;
1609 };
1610
1611 // C++ wrapper for IfcGroup
1612 struct IfcGroup : IfcObject, ObjectHelper<IfcGroup,0> { IfcGroup() : Object("IfcGroup") {}
1613
1614 };
1615
1616 // C++ wrapper for IfcAsset
1617 struct IfcAsset : IfcGroup, ObjectHelper<IfcAsset,9> { IfcAsset() : Object("IfcAsset") {}
1618 IfcIdentifier::Out AssetID;
1619 Lazy< NotImplemented > OriginalValue;
1620 Lazy< NotImplemented > CurrentValue;
1621 Lazy< NotImplemented > TotalReplacementCost;
1622 IfcActorSelect::Out Owner;
1623 IfcActorSelect::Out User;
1624 Lazy< NotImplemented > ResponsiblePerson;
1625 Lazy< NotImplemented > IncorporationDate;
1626 Lazy< NotImplemented > DepreciatedValue;
1627 };
1628
1629 // C++ wrapper for IfcParameterizedProfileDef
1630 struct IfcParameterizedProfileDef : IfcProfileDef, ObjectHelper<IfcParameterizedProfileDef,1> { IfcParameterizedProfileDef() : Object("IfcParameterizedProfileDef") {}
1631 Lazy< IfcAxis2Placement2D > Position;
1632 };
1633
1634 // C++ wrapper for IfcIShapeProfileDef
1635 struct IfcIShapeProfileDef : IfcParameterizedProfileDef, ObjectHelper<IfcIShapeProfileDef,5> { IfcIShapeProfileDef() : Object("IfcIShapeProfileDef") {}
1636 IfcPositiveLengthMeasure::Out OverallWidth;
1637 IfcPositiveLengthMeasure::Out OverallDepth;
1638 IfcPositiveLengthMeasure::Out WebThickness;
1639 IfcPositiveLengthMeasure::Out FlangeThickness;
1640 Maybe< IfcPositiveLengthMeasure::Out > FilletRadius;
1641 };
1642
1643 // C++ wrapper for IfcAsymmetricIShapeProfileDef
1644 struct IfcAsymmetricIShapeProfileDef : IfcIShapeProfileDef, ObjectHelper<IfcAsymmetricIShapeProfileDef,4> { IfcAsymmetricIShapeProfileDef() : Object("IfcAsymmetricIShapeProfileDef") {}
1645 IfcPositiveLengthMeasure::Out TopFlangeWidth;
1646 Maybe< IfcPositiveLengthMeasure::Out > TopFlangeThickness;
1647 Maybe< IfcPositiveLengthMeasure::Out > TopFlangeFilletRadius;
1648 Maybe< IfcPositiveLengthMeasure::Out > CentreOfGravityInY;
1649 };
1650
1651 // C++ wrapper for IfcPlacement
1652 struct IfcPlacement : IfcGeometricRepresentationItem, ObjectHelper<IfcPlacement,1> { IfcPlacement() : Object("IfcPlacement") {}
1653 Lazy< IfcCartesianPoint > Location;
1654 };
1655
1656 // C++ wrapper for IfcAxis1Placement
1657 struct IfcAxis1Placement : IfcPlacement, ObjectHelper<IfcAxis1Placement,1> { IfcAxis1Placement() : Object("IfcAxis1Placement") {}
1658 Maybe< Lazy< IfcDirection > > Axis;
1659 };
1660
1661 // C++ wrapper for IfcAxis2Placement2D
1662 struct IfcAxis2Placement2D : IfcPlacement, ObjectHelper<IfcAxis2Placement2D,1> { IfcAxis2Placement2D() : Object("IfcAxis2Placement2D") {}
1663 Maybe< Lazy< IfcDirection > > RefDirection;
1664 };
1665
1666 // C++ wrapper for IfcAxis2Placement3D
1667 struct IfcAxis2Placement3D : IfcPlacement, ObjectHelper<IfcAxis2Placement3D,2> { IfcAxis2Placement3D() : Object("IfcAxis2Placement3D") {}
1668 Maybe< Lazy< IfcDirection > > Axis;
1669 Maybe< Lazy< IfcDirection > > RefDirection;
1670 };
1671
1672 // C++ wrapper for IfcBSplineCurve
1673 struct IfcBSplineCurve : IfcBoundedCurve, ObjectHelper<IfcBSplineCurve,5> { IfcBSplineCurve() : Object("IfcBSplineCurve") {}
1674 INTEGER::Out Degree;
1675 ListOf< Lazy< IfcCartesianPoint >, 2, 0 > ControlPointsList;
1676 IfcBSplineCurveForm::Out CurveForm;
1677 LOGICAL::Out ClosedCurve;
1678 LOGICAL::Out SelfIntersect;
1679 };
1680
1681 // C++ wrapper for IfcElement
1682 struct IfcElement : IfcProduct, ObjectHelper<IfcElement,1> { IfcElement() : Object("IfcElement") {}
1683 Maybe< IfcIdentifier::Out > Tag;
1684 };
1685
1686 // C++ wrapper for IfcBuildingElement
1687 struct IfcBuildingElement : IfcElement, ObjectHelper<IfcBuildingElement,0> { IfcBuildingElement() : Object("IfcBuildingElement") {}
1688
1689 };
1690
1691 // C++ wrapper for IfcBeam
1692 struct IfcBeam : IfcBuildingElement, ObjectHelper<IfcBeam,0> { IfcBeam() : Object("IfcBeam") {}
1693
1694 };
1695
1696 // C++ wrapper for IfcBuildingElementType
1697 struct IfcBuildingElementType : IfcElementType, ObjectHelper<IfcBuildingElementType,0> { IfcBuildingElementType() : Object("IfcBuildingElementType") {}
1698
1699 };
1700
1701 // C++ wrapper for IfcBeamType
1702 struct IfcBeamType : IfcBuildingElementType, ObjectHelper<IfcBeamType,1> { IfcBeamType() : Object("IfcBeamType") {}
1703 IfcBeamTypeEnum::Out PredefinedType;
1704 };
1705
1706 // C++ wrapper for IfcBezierCurve
1707 struct IfcBezierCurve : IfcBSplineCurve, ObjectHelper<IfcBezierCurve,0> { IfcBezierCurve() : Object("IfcBezierCurve") {}
1708
1709 };
1710
1711 // C++ wrapper for IfcCsgPrimitive3D
1712 struct IfcCsgPrimitive3D : IfcGeometricRepresentationItem, ObjectHelper<IfcCsgPrimitive3D,1> { IfcCsgPrimitive3D() : Object("IfcCsgPrimitive3D") {}
1713 Lazy< IfcAxis2Placement3D > Position;
1714 };
1715
1716 // C++ wrapper for IfcBlock
1717 struct IfcBlock : IfcCsgPrimitive3D, ObjectHelper<IfcBlock,3> { IfcBlock() : Object("IfcBlock") {}
1718 IfcPositiveLengthMeasure::Out XLength;
1719 IfcPositiveLengthMeasure::Out YLength;
1720 IfcPositiveLengthMeasure::Out ZLength;
1721 };
1722
1723 // C++ wrapper for IfcBoilerType
1724 struct IfcBoilerType : IfcEnergyConversionDeviceType, ObjectHelper<IfcBoilerType,1> { IfcBoilerType() : Object("IfcBoilerType") {}
1725 IfcBoilerTypeEnum::Out PredefinedType;
1726 };
1727
1728 // C++ wrapper for IfcBooleanResult
1729 struct IfcBooleanResult : IfcGeometricRepresentationItem, ObjectHelper<IfcBooleanResult,3> { IfcBooleanResult() : Object("IfcBooleanResult") {}
1730 IfcBooleanOperator::Out Operator;
1731 IfcBooleanOperand::Out FirstOperand;
1732 IfcBooleanOperand::Out SecondOperand;
1733 };
1734
1735 // C++ wrapper for IfcBooleanClippingResult
1736 struct IfcBooleanClippingResult : IfcBooleanResult, ObjectHelper<IfcBooleanClippingResult,0> { IfcBooleanClippingResult() : Object("IfcBooleanClippingResult") {}
1737
1738 };
1739
1740 // C++ wrapper for IfcSurface
1741 struct IfcSurface : IfcGeometricRepresentationItem, ObjectHelper<IfcSurface,0> { IfcSurface() : Object("IfcSurface") {}
1742
1743 };
1744
1745 // C++ wrapper for IfcBoundedSurface
1746 struct IfcBoundedSurface : IfcSurface, ObjectHelper<IfcBoundedSurface,0> { IfcBoundedSurface() : Object("IfcBoundedSurface") {}
1747
1748 };
1749
1750 // C++ wrapper for IfcBoundingBox
1751 struct IfcBoundingBox : IfcGeometricRepresentationItem, ObjectHelper<IfcBoundingBox,4> { IfcBoundingBox() : Object("IfcBoundingBox") {}
1752 Lazy< IfcCartesianPoint > Corner;
1753 IfcPositiveLengthMeasure::Out XDim;
1754 IfcPositiveLengthMeasure::Out YDim;
1755 IfcPositiveLengthMeasure::Out ZDim;
1756 };
1757
1758 // C++ wrapper for IfcHalfSpaceSolid
1759 struct IfcHalfSpaceSolid : IfcGeometricRepresentationItem, ObjectHelper<IfcHalfSpaceSolid,2> { IfcHalfSpaceSolid() : Object("IfcHalfSpaceSolid") {}
1760 Lazy< IfcSurface > BaseSurface;
1761 BOOLEAN::Out AgreementFlag;
1762 };
1763
1764 // C++ wrapper for IfcBoxedHalfSpace
1765 struct IfcBoxedHalfSpace : IfcHalfSpaceSolid, ObjectHelper<IfcBoxedHalfSpace,1> { IfcBoxedHalfSpace() : Object("IfcBoxedHalfSpace") {}
1766 Lazy< IfcBoundingBox > Enclosure;
1767 };
1768
1769 // C++ wrapper for IfcSpatialStructureElement
1770 struct IfcSpatialStructureElement : IfcProduct, ObjectHelper<IfcSpatialStructureElement,2> { IfcSpatialStructureElement() : Object("IfcSpatialStructureElement") {}
1771 Maybe< IfcLabel::Out > LongName;
1772 IfcElementCompositionEnum::Out CompositionType;
1773 };
1774
1775 // C++ wrapper for IfcBuilding
1776 struct IfcBuilding : IfcSpatialStructureElement, ObjectHelper<IfcBuilding,3> { IfcBuilding() : Object("IfcBuilding") {}
1777 Maybe< IfcLengthMeasure::Out > ElevationOfRefHeight;
1778 Maybe< IfcLengthMeasure::Out > ElevationOfTerrain;
1779 Maybe< Lazy< NotImplemented > > BuildingAddress;
1780 };
1781
1782 // C++ wrapper for IfcBuildingElementComponent
1783 struct IfcBuildingElementComponent : IfcBuildingElement, ObjectHelper<IfcBuildingElementComponent,0> { IfcBuildingElementComponent() : Object("IfcBuildingElementComponent") {}
1784
1785 };
1786
1787 // C++ wrapper for IfcBuildingElementPart
1788 struct IfcBuildingElementPart : IfcBuildingElementComponent, ObjectHelper<IfcBuildingElementPart,0> { IfcBuildingElementPart() : Object("IfcBuildingElementPart") {}
1789
1790 };
1791
1792 // C++ wrapper for IfcBuildingElementProxy
1793 struct IfcBuildingElementProxy : IfcBuildingElement, ObjectHelper<IfcBuildingElementProxy,1> { IfcBuildingElementProxy() : Object("IfcBuildingElementProxy") {}
1794 Maybe< IfcElementCompositionEnum::Out > CompositionType;
1795 };
1796
1797 // C++ wrapper for IfcBuildingElementProxyType
1798 struct IfcBuildingElementProxyType : IfcBuildingElementType, ObjectHelper<IfcBuildingElementProxyType,1> { IfcBuildingElementProxyType() : Object("IfcBuildingElementProxyType") {}
1799 IfcBuildingElementProxyTypeEnum::Out PredefinedType;
1800 };
1801
1802 // C++ wrapper for IfcBuildingStorey
1803 struct IfcBuildingStorey : IfcSpatialStructureElement, ObjectHelper<IfcBuildingStorey,1> { IfcBuildingStorey() : Object("IfcBuildingStorey") {}
1804 Maybe< IfcLengthMeasure::Out > Elevation;
1805 };
1806
1807 // C++ wrapper for IfcCShapeProfileDef
1808 struct IfcCShapeProfileDef : IfcParameterizedProfileDef, ObjectHelper<IfcCShapeProfileDef,6> { IfcCShapeProfileDef() : Object("IfcCShapeProfileDef") {}
1809 IfcPositiveLengthMeasure::Out Depth;
1810 IfcPositiveLengthMeasure::Out Width;
1811 IfcPositiveLengthMeasure::Out WallThickness;
1812 IfcPositiveLengthMeasure::Out Girth;
1813 Maybe< IfcPositiveLengthMeasure::Out > InternalFilletRadius;
1814 Maybe< IfcPositiveLengthMeasure::Out > CentreOfGravityInX;
1815 };
1816
1817 // C++ wrapper for IfcFlowFittingType
1818 struct IfcFlowFittingType : IfcDistributionFlowElementType, ObjectHelper<IfcFlowFittingType,0> { IfcFlowFittingType() : Object("IfcFlowFittingType") {}
1819
1820 };
1821
1822 // C++ wrapper for IfcCableCarrierFittingType
1823 struct IfcCableCarrierFittingType : IfcFlowFittingType, ObjectHelper<IfcCableCarrierFittingType,1> { IfcCableCarrierFittingType() : Object("IfcCableCarrierFittingType") {}
1824 IfcCableCarrierFittingTypeEnum::Out PredefinedType;
1825 };
1826
1827 // C++ wrapper for IfcFlowSegmentType
1828 struct IfcFlowSegmentType : IfcDistributionFlowElementType, ObjectHelper<IfcFlowSegmentType,0> { IfcFlowSegmentType() : Object("IfcFlowSegmentType") {}
1829
1830 };
1831
1832 // C++ wrapper for IfcCableCarrierSegmentType
1833 struct IfcCableCarrierSegmentType : IfcFlowSegmentType, ObjectHelper<IfcCableCarrierSegmentType,1> { IfcCableCarrierSegmentType() : Object("IfcCableCarrierSegmentType") {}
1834 IfcCableCarrierSegmentTypeEnum::Out PredefinedType;
1835 };
1836
1837 // C++ wrapper for IfcCableSegmentType
1838 struct IfcCableSegmentType : IfcFlowSegmentType, ObjectHelper<IfcCableSegmentType,1> { IfcCableSegmentType() : Object("IfcCableSegmentType") {}
1839 IfcCableSegmentTypeEnum::Out PredefinedType;
1840 };
1841
1842 // C++ wrapper for IfcPoint
1843 struct IfcPoint : IfcGeometricRepresentationItem, ObjectHelper<IfcPoint,0> { IfcPoint() : Object("IfcPoint") {}
1844
1845 };
1846
1847 // C++ wrapper for IfcCartesianPoint
1848 struct IfcCartesianPoint : IfcPoint, ObjectHelper<IfcCartesianPoint,1> { IfcCartesianPoint() : Object("IfcCartesianPoint") {}
1849 ListOf< IfcLengthMeasure, 1, 3 >::Out Coordinates;
1850 };
1851
1852 // C++ wrapper for IfcCartesianTransformationOperator
1853 struct IfcCartesianTransformationOperator : IfcGeometricRepresentationItem, ObjectHelper<IfcCartesianTransformationOperator,4> { IfcCartesianTransformationOperator() : Object("IfcCartesianTransformationOperator") {}
1854 Maybe< Lazy< IfcDirection > > Axis1;
1855 Maybe< Lazy< IfcDirection > > Axis2;
1856 Lazy< IfcCartesianPoint > LocalOrigin;
1857 Maybe< REAL::Out > Scale;
1858 };
1859
1860 // C++ wrapper for IfcCartesianTransformationOperator2D
1861 struct IfcCartesianTransformationOperator2D : IfcCartesianTransformationOperator, ObjectHelper<IfcCartesianTransformationOperator2D,0> { IfcCartesianTransformationOperator2D() : Object("IfcCartesianTransformationOperator2D") {}
1862
1863 };
1864
1865 // C++ wrapper for IfcCartesianTransformationOperator2DnonUniform
1866 struct IfcCartesianTransformationOperator2DnonUniform : IfcCartesianTransformationOperator2D, ObjectHelper<IfcCartesianTransformationOperator2DnonUniform,1> { IfcCartesianTransformationOperator2DnonUniform() : Object("IfcCartesianTransformationOperator2DnonUniform") {}
1867 Maybe< REAL::Out > Scale2;
1868 };
1869
1870 // C++ wrapper for IfcCartesianTransformationOperator3D
1871 struct IfcCartesianTransformationOperator3D : IfcCartesianTransformationOperator, ObjectHelper<IfcCartesianTransformationOperator3D,1> { IfcCartesianTransformationOperator3D() : Object("IfcCartesianTransformationOperator3D") {}
1872 Maybe< Lazy< IfcDirection > > Axis3;
1873 };
1874
1875 // C++ wrapper for IfcCartesianTransformationOperator3DnonUniform
1876 struct IfcCartesianTransformationOperator3DnonUniform : IfcCartesianTransformationOperator3D, ObjectHelper<IfcCartesianTransformationOperator3DnonUniform,2> { IfcCartesianTransformationOperator3DnonUniform() : Object("IfcCartesianTransformationOperator3DnonUniform") {}
1877 Maybe< REAL::Out > Scale2;
1878 Maybe< REAL::Out > Scale3;
1879 };
1880
1881 // C++ wrapper for IfcCenterLineProfileDef
1882 struct IfcCenterLineProfileDef : IfcArbitraryOpenProfileDef, ObjectHelper<IfcCenterLineProfileDef,1> { IfcCenterLineProfileDef() : Object("IfcCenterLineProfileDef") {}
1883 IfcPositiveLengthMeasure::Out Thickness;
1884 };
1885
1886 // C++ wrapper for IfcFeatureElement
1887 struct IfcFeatureElement : IfcElement, ObjectHelper<IfcFeatureElement,0> { IfcFeatureElement() : Object("IfcFeatureElement") {}
1888
1889 };
1890
1891 // C++ wrapper for IfcFeatureElementSubtraction
1892 struct IfcFeatureElementSubtraction : IfcFeatureElement, ObjectHelper<IfcFeatureElementSubtraction,0> { IfcFeatureElementSubtraction() : Object("IfcFeatureElementSubtraction") {}
1893
1894 };
1895
1896 // C++ wrapper for IfcEdgeFeature
1897 struct IfcEdgeFeature : IfcFeatureElementSubtraction, ObjectHelper<IfcEdgeFeature,1> { IfcEdgeFeature() : Object("IfcEdgeFeature") {}
1898 Maybe< IfcPositiveLengthMeasure::Out > FeatureLength;
1899 };
1900
1901 // C++ wrapper for IfcChamferEdgeFeature
1902 struct IfcChamferEdgeFeature : IfcEdgeFeature, ObjectHelper<IfcChamferEdgeFeature,2> { IfcChamferEdgeFeature() : Object("IfcChamferEdgeFeature") {}
1903 Maybe< IfcPositiveLengthMeasure::Out > Width;
1904 Maybe< IfcPositiveLengthMeasure::Out > Height;
1905 };
1906
1907 // C++ wrapper for IfcChillerType
1908 struct IfcChillerType : IfcEnergyConversionDeviceType, ObjectHelper<IfcChillerType,1> { IfcChillerType() : Object("IfcChillerType") {}
1909 IfcChillerTypeEnum::Out PredefinedType;
1910 };
1911
1912 // C++ wrapper for IfcConic
1913 struct IfcConic : IfcCurve, ObjectHelper<IfcConic,1> { IfcConic() : Object("IfcConic") {}
1914 IfcAxis2Placement::Out Position;
1915 };
1916
1917 // C++ wrapper for IfcCircle
1918 struct IfcCircle : IfcConic, ObjectHelper<IfcCircle,1> { IfcCircle() : Object("IfcCircle") {}
1919 IfcPositiveLengthMeasure::Out Radius;
1920 };
1921
1922 // C++ wrapper for IfcCircleProfileDef
1923 struct IfcCircleProfileDef : IfcParameterizedProfileDef, ObjectHelper<IfcCircleProfileDef,1> { IfcCircleProfileDef() : Object("IfcCircleProfileDef") {}
1924 IfcPositiveLengthMeasure::Out Radius;
1925 };
1926
1927 // C++ wrapper for IfcCircleHollowProfileDef
1928 struct IfcCircleHollowProfileDef : IfcCircleProfileDef, ObjectHelper<IfcCircleHollowProfileDef,1> { IfcCircleHollowProfileDef() : Object("IfcCircleHollowProfileDef") {}
1929 IfcPositiveLengthMeasure::Out WallThickness;
1930 };
1931
1932 // C++ wrapper for IfcTopologicalRepresentationItem
1933 struct IfcTopologicalRepresentationItem : IfcRepresentationItem, ObjectHelper<IfcTopologicalRepresentationItem,0> { IfcTopologicalRepresentationItem() : Object("IfcTopologicalRepresentationItem") {}
1934
1935 };
1936
1937 // C++ wrapper for IfcConnectedFaceSet
1938 struct IfcConnectedFaceSet : IfcTopologicalRepresentationItem, ObjectHelper<IfcConnectedFaceSet,1> { IfcConnectedFaceSet() : Object("IfcConnectedFaceSet") {}
1939 ListOf< Lazy< IfcFace >, 1, 0 > CfsFaces;
1940 };
1941
1942 // C++ wrapper for IfcClosedShell
1943 struct IfcClosedShell : IfcConnectedFaceSet, ObjectHelper<IfcClosedShell,0> { IfcClosedShell() : Object("IfcClosedShell") {}
1944
1945 };
1946
1947 // C++ wrapper for IfcCoilType
1948 struct IfcCoilType : IfcEnergyConversionDeviceType, ObjectHelper<IfcCoilType,1> { IfcCoilType() : Object("IfcCoilType") {}
1949 IfcCoilTypeEnum::Out PredefinedType;
1950 };
1951
1952 // C++ wrapper for IfcColourSpecification
1953 struct IfcColourSpecification : ObjectHelper<IfcColourSpecification,1> { IfcColourSpecification() : Object("IfcColourSpecification") {}
1954 Maybe< IfcLabel::Out > Name;
1955 };
1956
1957 // C++ wrapper for IfcColourRgb
1958 struct IfcColourRgb : IfcColourSpecification, ObjectHelper<IfcColourRgb,3> { IfcColourRgb() : Object("IfcColourRgb") {}
1959 IfcNormalisedRatioMeasure::Out Red;
1960 IfcNormalisedRatioMeasure::Out Green;
1961 IfcNormalisedRatioMeasure::Out Blue;
1962 };
1963
1964 // C++ wrapper for IfcColumn
1965 struct IfcColumn : IfcBuildingElement, ObjectHelper<IfcColumn,0> { IfcColumn() : Object("IfcColumn") {}
1966
1967 };
1968
1969 // C++ wrapper for IfcColumnType
1970 struct IfcColumnType : IfcBuildingElementType, ObjectHelper<IfcColumnType,1> { IfcColumnType() : Object("IfcColumnType") {}
1971 IfcColumnTypeEnum::Out PredefinedType;
1972 };
1973
1974 // C++ wrapper for IfcProperty
1975 struct IfcProperty : ObjectHelper<IfcProperty,2> { IfcProperty() : Object("IfcProperty") {}
1976 IfcIdentifier::Out Name;
1977 Maybe< IfcText::Out > Description;
1978 };
1979
1980 // C++ wrapper for IfcComplexProperty
1981 struct IfcComplexProperty : IfcProperty, ObjectHelper<IfcComplexProperty,2> { IfcComplexProperty() : Object("IfcComplexProperty") {}
1982 IfcIdentifier::Out UsageName;
1983 ListOf< Lazy< IfcProperty >, 1, 0 > HasProperties;
1984 };
1985
1986 // C++ wrapper for IfcCompositeCurveSegment
1987 struct IfcCompositeCurveSegment : IfcGeometricRepresentationItem, ObjectHelper<IfcCompositeCurveSegment,3> { IfcCompositeCurveSegment() : Object("IfcCompositeCurveSegment") {}
1988 IfcTransitionCode::Out Transition;
1989 BOOLEAN::Out SameSense;
1990 Lazy< IfcCurve > ParentCurve;
1991 };
1992
1993 // C++ wrapper for IfcCompositeProfileDef
1994 struct IfcCompositeProfileDef : IfcProfileDef, ObjectHelper<IfcCompositeProfileDef,2> { IfcCompositeProfileDef() : Object("IfcCompositeProfileDef") {}
1995 ListOf< Lazy< IfcProfileDef >, 2, 0 > Profiles;
1996 Maybe< IfcLabel::Out > Label;
1997 };
1998
1999 // C++ wrapper for IfcFlowMovingDeviceType
2000 struct IfcFlowMovingDeviceType : IfcDistributionFlowElementType, ObjectHelper<IfcFlowMovingDeviceType,0> { IfcFlowMovingDeviceType() : Object("IfcFlowMovingDeviceType") {}
2001
2002 };
2003
2004 // C++ wrapper for IfcCompressorType
2005 struct IfcCompressorType : IfcFlowMovingDeviceType, ObjectHelper<IfcCompressorType,1> { IfcCompressorType() : Object("IfcCompressorType") {}
2006 IfcCompressorTypeEnum::Out PredefinedType;
2007 };
2008
2009 // C++ wrapper for IfcCondenserType
2010 struct IfcCondenserType : IfcEnergyConversionDeviceType, ObjectHelper<IfcCondenserType,1> { IfcCondenserType() : Object("IfcCondenserType") {}
2011 IfcCondenserTypeEnum::Out PredefinedType;
2012 };
2013
2014 // C++ wrapper for IfcCondition
2015 struct IfcCondition : IfcGroup, ObjectHelper<IfcCondition,0> { IfcCondition() : Object("IfcCondition") {}
2016
2017 };
2018
2019 // C++ wrapper for IfcConditionCriterion
2020 struct IfcConditionCriterion : IfcControl, ObjectHelper<IfcConditionCriterion,2> { IfcConditionCriterion() : Object("IfcConditionCriterion") {}
2021 IfcConditionCriterionSelect::Out Criterion;
2022 IfcDateTimeSelect::Out CriterionDateTime;
2023 };
2024
2025 // C++ wrapper for IfcResource
2026 struct IfcResource : IfcObject, ObjectHelper<IfcResource,0> { IfcResource() : Object("IfcResource") {}
2027
2028 };
2029
2030 // C++ wrapper for IfcConstructionResource
2031 struct IfcConstructionResource : IfcResource, ObjectHelper<IfcConstructionResource,4> { IfcConstructionResource() : Object("IfcConstructionResource") {}
2032 Maybe< IfcIdentifier::Out > ResourceIdentifier;
2033 Maybe< IfcLabel::Out > ResourceGroup;
2034 Maybe< IfcResourceConsumptionEnum::Out > ResourceConsumption;
2035 Maybe< Lazy< IfcMeasureWithUnit > > BaseQuantity;
2036 };
2037
2038 // C++ wrapper for IfcConstructionEquipmentResource
2039 struct IfcConstructionEquipmentResource : IfcConstructionResource, ObjectHelper<IfcConstructionEquipmentResource,0> { IfcConstructionEquipmentResource() : Object("IfcConstructionEquipmentResource") {}
2040
2041 };
2042
2043 // C++ wrapper for IfcConstructionMaterialResource
2044 struct IfcConstructionMaterialResource : IfcConstructionResource, ObjectHelper<IfcConstructionMaterialResource,2> { IfcConstructionMaterialResource() : Object("IfcConstructionMaterialResource") {}
2045 Maybe< ListOf< IfcActorSelect, 1, 0 >::Out > Suppliers;
2046 Maybe< IfcRatioMeasure::Out > UsageRatio;
2047 };
2048
2049 // C++ wrapper for IfcConstructionProductResource
2050 struct IfcConstructionProductResource : IfcConstructionResource, ObjectHelper<IfcConstructionProductResource,0> { IfcConstructionProductResource() : Object("IfcConstructionProductResource") {}
2051
2052 };
2053
2054 // C++ wrapper for IfcNamedUnit
2055 struct IfcNamedUnit : ObjectHelper<IfcNamedUnit,2> { IfcNamedUnit() : Object("IfcNamedUnit") {}
2056 Lazy< NotImplemented > Dimensions;
2057 IfcUnitEnum::Out UnitType;
2058 };
2059
2060 // C++ wrapper for IfcContextDependentUnit
2061 struct IfcContextDependentUnit : IfcNamedUnit, ObjectHelper<IfcContextDependentUnit,1> { IfcContextDependentUnit() : Object("IfcContextDependentUnit") {}
2062 IfcLabel::Out Name;
2063 };
2064
2065 // C++ wrapper for IfcControllerType
2066 struct IfcControllerType : IfcDistributionControlElementType, ObjectHelper<IfcControllerType,1> { IfcControllerType() : Object("IfcControllerType") {}
2067 IfcControllerTypeEnum::Out PredefinedType;
2068 };
2069
2070 // C++ wrapper for IfcConversionBasedUnit
2071 struct IfcConversionBasedUnit : IfcNamedUnit, ObjectHelper<IfcConversionBasedUnit,2> { IfcConversionBasedUnit() : Object("IfcConversionBasedUnit") {}
2072 IfcLabel::Out Name;
2073 Lazy< IfcMeasureWithUnit > ConversionFactor;
2074 };
2075
2076 // C++ wrapper for IfcCooledBeamType
2077 struct IfcCooledBeamType : IfcEnergyConversionDeviceType, ObjectHelper<IfcCooledBeamType,1> { IfcCooledBeamType() : Object("IfcCooledBeamType") {}
2078 IfcCooledBeamTypeEnum::Out PredefinedType;
2079 };
2080
2081 // C++ wrapper for IfcCoolingTowerType
2082 struct IfcCoolingTowerType : IfcEnergyConversionDeviceType, ObjectHelper<IfcCoolingTowerType,1> { IfcCoolingTowerType() : Object("IfcCoolingTowerType") {}
2083 IfcCoolingTowerTypeEnum::Out PredefinedType;
2084 };
2085
2086 // C++ wrapper for IfcCostItem
2087 struct IfcCostItem : IfcControl, ObjectHelper<IfcCostItem,0> { IfcCostItem() : Object("IfcCostItem") {}
2088
2089 };
2090
2091 // C++ wrapper for IfcCostSchedule
2092 struct IfcCostSchedule : IfcControl, ObjectHelper<IfcCostSchedule,8> { IfcCostSchedule() : Object("IfcCostSchedule") {}
2093 Maybe< IfcActorSelect::Out > SubmittedBy;
2094 Maybe< IfcActorSelect::Out > PreparedBy;
2095 Maybe< IfcDateTimeSelect::Out > SubmittedOn;
2096 Maybe< IfcLabel::Out > Status;
2097 Maybe< ListOf< IfcActorSelect, 1, 0 >::Out > TargetUsers;
2098 Maybe< IfcDateTimeSelect::Out > UpdateDate;
2099 IfcIdentifier::Out ID;
2100 IfcCostScheduleTypeEnum::Out PredefinedType;
2101 };
2102
2103 // C++ wrapper for IfcCovering
2104 struct IfcCovering : IfcBuildingElement, ObjectHelper<IfcCovering,1> { IfcCovering() : Object("IfcCovering") {}
2105 Maybe< IfcCoveringTypeEnum::Out > PredefinedType;
2106 };
2107
2108 // C++ wrapper for IfcCoveringType
2109 struct IfcCoveringType : IfcBuildingElementType, ObjectHelper<IfcCoveringType,1> { IfcCoveringType() : Object("IfcCoveringType") {}
2110 IfcCoveringTypeEnum::Out PredefinedType;
2111 };
2112
2113 // C++ wrapper for IfcCraneRailAShapeProfileDef
2114 struct IfcCraneRailAShapeProfileDef : IfcParameterizedProfileDef, ObjectHelper<IfcCraneRailAShapeProfileDef,12> { IfcCraneRailAShapeProfileDef() : Object("IfcCraneRailAShapeProfileDef") {}
2115 IfcPositiveLengthMeasure::Out OverallHeight;
2116 IfcPositiveLengthMeasure::Out BaseWidth2;
2117 Maybe< IfcPositiveLengthMeasure::Out > Radius;
2118 IfcPositiveLengthMeasure::Out HeadWidth;
2119 IfcPositiveLengthMeasure::Out HeadDepth2;
2120 IfcPositiveLengthMeasure::Out HeadDepth3;
2121 IfcPositiveLengthMeasure::Out WebThickness;
2122 IfcPositiveLengthMeasure::Out BaseWidth4;
2123 IfcPositiveLengthMeasure::Out BaseDepth1;
2124 IfcPositiveLengthMeasure::Out BaseDepth2;
2125 IfcPositiveLengthMeasure::Out BaseDepth3;
2126 Maybe< IfcPositiveLengthMeasure::Out > CentreOfGravityInY;
2127 };
2128
2129 // C++ wrapper for IfcCraneRailFShapeProfileDef
2130 struct IfcCraneRailFShapeProfileDef : IfcParameterizedProfileDef, ObjectHelper<IfcCraneRailFShapeProfileDef,9> { IfcCraneRailFShapeProfileDef() : Object("IfcCraneRailFShapeProfileDef") {}
2131 IfcPositiveLengthMeasure::Out OverallHeight;
2132 IfcPositiveLengthMeasure::Out HeadWidth;
2133 Maybe< IfcPositiveLengthMeasure::Out > Radius;
2134 IfcPositiveLengthMeasure::Out HeadDepth2;
2135 IfcPositiveLengthMeasure::Out HeadDepth3;
2136 IfcPositiveLengthMeasure::Out WebThickness;
2137 IfcPositiveLengthMeasure::Out BaseDepth1;
2138 IfcPositiveLengthMeasure::Out BaseDepth2;
2139 Maybe< IfcPositiveLengthMeasure::Out > CentreOfGravityInY;
2140 };
2141
2142 // C++ wrapper for IfcCrewResource
2143 struct IfcCrewResource : IfcConstructionResource, ObjectHelper<IfcCrewResource,0> { IfcCrewResource() : Object("IfcCrewResource") {}
2144
2145 };
2146
2147 // C++ wrapper for IfcSolidModel
2148 struct IfcSolidModel : IfcGeometricRepresentationItem, ObjectHelper<IfcSolidModel,0> { IfcSolidModel() : Object("IfcSolidModel") {}
2149
2150 };
2151
2152 // C++ wrapper for IfcCsgSolid
2153 struct IfcCsgSolid : IfcSolidModel, ObjectHelper<IfcCsgSolid,1> { IfcCsgSolid() : Object("IfcCsgSolid") {}
2154 IfcCsgSelect::Out TreeRootExpression;
2155 };
2156
2157 // C++ wrapper for IfcCurtainWall
2158 struct IfcCurtainWall : IfcBuildingElement, ObjectHelper<IfcCurtainWall,0> { IfcCurtainWall() : Object("IfcCurtainWall") {}
2159
2160 };
2161
2162 // C++ wrapper for IfcCurtainWallType
2163 struct IfcCurtainWallType : IfcBuildingElementType, ObjectHelper<IfcCurtainWallType,1> { IfcCurtainWallType() : Object("IfcCurtainWallType") {}
2164 IfcCurtainWallTypeEnum::Out PredefinedType;
2165 };
2166
2167 // C++ wrapper for IfcCurveBoundedPlane
2168 struct IfcCurveBoundedPlane : IfcBoundedSurface, ObjectHelper<IfcCurveBoundedPlane,3> { IfcCurveBoundedPlane() : Object("IfcCurveBoundedPlane") {}
2169 Lazy< IfcPlane > BasisSurface;
2170 Lazy< IfcCurve > OuterBoundary;
2171 ListOf< Lazy< IfcCurve >, 0, 0 > InnerBoundaries;
2172 };
2173
2174 // C++ wrapper for IfcPresentationStyle
2175 struct IfcPresentationStyle : ObjectHelper<IfcPresentationStyle,1> { IfcPresentationStyle() : Object("IfcPresentationStyle") {}
2176 Maybe< IfcLabel::Out > Name;
2177 };
2178
2179 // C++ wrapper for IfcDamperType
2180 struct IfcDamperType : IfcFlowControllerType, ObjectHelper<IfcDamperType,1> { IfcDamperType() : Object("IfcDamperType") {}
2181 IfcDamperTypeEnum::Out PredefinedType;
2182 };
2183
2184 // C++ wrapper for IfcDefinedSymbol
2185 struct IfcDefinedSymbol : IfcGeometricRepresentationItem, ObjectHelper<IfcDefinedSymbol,2> { IfcDefinedSymbol() : Object("IfcDefinedSymbol") {}
2186 IfcDefinedSymbolSelect::Out Definition;
2187 Lazy< IfcCartesianTransformationOperator2D > Target;
2188 };
2189
2190 // C++ wrapper for IfcDerivedProfileDef
2191 struct IfcDerivedProfileDef : IfcProfileDef, ObjectHelper<IfcDerivedProfileDef,3> { IfcDerivedProfileDef() : Object("IfcDerivedProfileDef") {}
2192 Lazy< IfcProfileDef > ParentProfile;
2193 Lazy< IfcCartesianTransformationOperator2D > Operator;
2194 Maybe< IfcLabel::Out > Label;
2195 };
2196
2197 // C++ wrapper for IfcDiameterDimension
2198 struct IfcDiameterDimension : IfcDimensionCurveDirectedCallout, ObjectHelper<IfcDiameterDimension,0> { IfcDiameterDimension() : Object("IfcDiameterDimension") {}
2199
2200 };
2201
2202 // C++ wrapper for IfcDimensionCurve
2203 struct IfcDimensionCurve : IfcAnnotationCurveOccurrence, ObjectHelper<IfcDimensionCurve,0> { IfcDimensionCurve() : Object("IfcDimensionCurve") {}
2204
2205 };
2206
2207 // C++ wrapper for IfcTerminatorSymbol
2208 struct IfcTerminatorSymbol : IfcAnnotationSymbolOccurrence, ObjectHelper<IfcTerminatorSymbol,1> { IfcTerminatorSymbol() : Object("IfcTerminatorSymbol") {}
2209 Lazy< IfcAnnotationCurveOccurrence > AnnotatedCurve;
2210 };
2211
2212 // C++ wrapper for IfcDimensionCurveTerminator
2213 struct IfcDimensionCurveTerminator : IfcTerminatorSymbol, ObjectHelper<IfcDimensionCurveTerminator,1> { IfcDimensionCurveTerminator() : Object("IfcDimensionCurveTerminator") {}
2214 IfcDimensionExtentUsage::Out Role;
2215 };
2216
2217 // C++ wrapper for IfcDirection
2218 struct IfcDirection : IfcGeometricRepresentationItem, ObjectHelper<IfcDirection,1> { IfcDirection() : Object("IfcDirection") {}
2219 ListOf< REAL, 2, 3 >::Out DirectionRatios;
2220 };
2221
2222 // C++ wrapper for IfcElementComponent
2223 struct IfcElementComponent : IfcElement, ObjectHelper<IfcElementComponent,0> { IfcElementComponent() : Object("IfcElementComponent") {}
2224
2225 };
2226
2227 // C++ wrapper for IfcDiscreteAccessory
2228 struct IfcDiscreteAccessory : IfcElementComponent, ObjectHelper<IfcDiscreteAccessory,0> { IfcDiscreteAccessory() : Object("IfcDiscreteAccessory") {}
2229
2230 };
2231
2232 // C++ wrapper for IfcElementComponentType
2233 struct IfcElementComponentType : IfcElementType, ObjectHelper<IfcElementComponentType,0> { IfcElementComponentType() : Object("IfcElementComponentType") {}
2234
2235 };
2236
2237 // C++ wrapper for IfcDiscreteAccessoryType
2238 struct IfcDiscreteAccessoryType : IfcElementComponentType, ObjectHelper<IfcDiscreteAccessoryType,0> { IfcDiscreteAccessoryType() : Object("IfcDiscreteAccessoryType") {}
2239
2240 };
2241
2242 // C++ wrapper for IfcDistributionElement
2243 struct IfcDistributionElement : IfcElement, ObjectHelper<IfcDistributionElement,0> { IfcDistributionElement() : Object("IfcDistributionElement") {}
2244
2245 };
2246
2247 // C++ wrapper for IfcDistributionFlowElement
2248 struct IfcDistributionFlowElement : IfcDistributionElement, ObjectHelper<IfcDistributionFlowElement,0> { IfcDistributionFlowElement() : Object("IfcDistributionFlowElement") {}
2249
2250 };
2251
2252 // C++ wrapper for IfcDistributionChamberElement
2253 struct IfcDistributionChamberElement : IfcDistributionFlowElement, ObjectHelper<IfcDistributionChamberElement,0> { IfcDistributionChamberElement() : Object("IfcDistributionChamberElement") {}
2254
2255 };
2256
2257 // C++ wrapper for IfcDistributionChamberElementType
2258 struct IfcDistributionChamberElementType : IfcDistributionFlowElementType, ObjectHelper<IfcDistributionChamberElementType,1> { IfcDistributionChamberElementType() : Object("IfcDistributionChamberElementType") {}
2259 IfcDistributionChamberElementTypeEnum::Out PredefinedType;
2260 };
2261
2262 // C++ wrapper for IfcDistributionControlElement
2263 struct IfcDistributionControlElement : IfcDistributionElement, ObjectHelper<IfcDistributionControlElement,1> { IfcDistributionControlElement() : Object("IfcDistributionControlElement") {}
2264 Maybe< IfcIdentifier::Out > ControlElementId;
2265 };
2266
2267 // C++ wrapper for IfcPort
2268 struct IfcPort : IfcProduct, ObjectHelper<IfcPort,0> { IfcPort() : Object("IfcPort") {}
2269
2270 };
2271
2272 // C++ wrapper for IfcDistributionPort
2273 struct IfcDistributionPort : IfcPort, ObjectHelper<IfcDistributionPort,1> { IfcDistributionPort() : Object("IfcDistributionPort") {}
2274 Maybe< IfcFlowDirectionEnum::Out > FlowDirection;
2275 };
2276
2277 // C++ wrapper for IfcDoor
2278 struct IfcDoor : IfcBuildingElement, ObjectHelper<IfcDoor,2> { IfcDoor() : Object("IfcDoor") {}
2279 Maybe< IfcPositiveLengthMeasure::Out > OverallHeight;
2280 Maybe< IfcPositiveLengthMeasure::Out > OverallWidth;
2281 };
2282
2283 // C++ wrapper for IfcPropertyDefinition
2284 struct IfcPropertyDefinition : IfcRoot, ObjectHelper<IfcPropertyDefinition,0> { IfcPropertyDefinition() : Object("IfcPropertyDefinition") {}
2285
2286 };
2287
2288 // C++ wrapper for IfcPropertySetDefinition
2289 struct IfcPropertySetDefinition : IfcPropertyDefinition, ObjectHelper<IfcPropertySetDefinition,0> { IfcPropertySetDefinition() : Object("IfcPropertySetDefinition") {}
2290
2291 };
2292
2293 // C++ wrapper for IfcDoorStyle
2294 struct IfcDoorStyle : IfcTypeProduct, ObjectHelper<IfcDoorStyle,4> { IfcDoorStyle() : Object("IfcDoorStyle") {}
2295 IfcDoorStyleOperationEnum::Out OperationType;
2296 IfcDoorStyleConstructionEnum::Out ConstructionType;
2297 BOOLEAN::Out ParameterTakesPrecedence;
2298 BOOLEAN::Out Sizeable;
2299 };
2300
2301 // C++ wrapper for IfcDuctFittingType
2302 struct IfcDuctFittingType : IfcFlowFittingType, ObjectHelper<IfcDuctFittingType,1> { IfcDuctFittingType() : Object("IfcDuctFittingType") {}
2303 IfcDuctFittingTypeEnum::Out PredefinedType;
2304 };
2305
2306 // C++ wrapper for IfcDuctSegmentType
2307 struct IfcDuctSegmentType : IfcFlowSegmentType, ObjectHelper<IfcDuctSegmentType,1> { IfcDuctSegmentType() : Object("IfcDuctSegmentType") {}
2308 IfcDuctSegmentTypeEnum::Out PredefinedType;
2309 };
2310
2311 // C++ wrapper for IfcFlowTreatmentDeviceType
2312 struct IfcFlowTreatmentDeviceType : IfcDistributionFlowElementType, ObjectHelper<IfcFlowTreatmentDeviceType,0> { IfcFlowTreatmentDeviceType() : Object("IfcFlowTreatmentDeviceType") {}
2313
2314 };
2315
2316 // C++ wrapper for IfcDuctSilencerType
2317 struct IfcDuctSilencerType : IfcFlowTreatmentDeviceType, ObjectHelper<IfcDuctSilencerType,1> { IfcDuctSilencerType() : Object("IfcDuctSilencerType") {}
2318 IfcDuctSilencerTypeEnum::Out PredefinedType;
2319 };
2320
2321 // C++ wrapper for IfcEdge
2322 struct IfcEdge : IfcTopologicalRepresentationItem, ObjectHelper<IfcEdge,2> { IfcEdge() : Object("IfcEdge") {}
2323 Lazy< IfcVertex > EdgeStart;
2324 Lazy< IfcVertex > EdgeEnd;
2325 };
2326
2327 // C++ wrapper for IfcEdgeCurve
2328 struct IfcEdgeCurve : IfcEdge, ObjectHelper<IfcEdgeCurve,2> { IfcEdgeCurve() : Object("IfcEdgeCurve") {}
2329 Lazy< IfcCurve > EdgeGeometry;
2330 BOOLEAN::Out SameSense;
2331 };
2332
2333 // C++ wrapper for IfcLoop
2334 struct IfcLoop : IfcTopologicalRepresentationItem, ObjectHelper<IfcLoop,0> { IfcLoop() : Object("IfcLoop") {}
2335
2336 };
2337
2338 // C++ wrapper for IfcEdgeLoop
2339 struct IfcEdgeLoop : IfcLoop, ObjectHelper<IfcEdgeLoop,1> { IfcEdgeLoop() : Object("IfcEdgeLoop") {}
2340 ListOf< Lazy< IfcOrientedEdge >, 1, 0 > EdgeList;
2341 };
2342
2343 // C++ wrapper for IfcElectricApplianceType
2344 struct IfcElectricApplianceType : IfcFlowTerminalType, ObjectHelper<IfcElectricApplianceType,1> { IfcElectricApplianceType() : Object("IfcElectricApplianceType") {}
2345 IfcElectricApplianceTypeEnum::Out PredefinedType;
2346 };
2347
2348 // C++ wrapper for IfcFlowController
2349 struct IfcFlowController : IfcDistributionFlowElement, ObjectHelper<IfcFlowController,0> { IfcFlowController() : Object("IfcFlowController") {}
2350
2351 };
2352
2353 // C++ wrapper for IfcElectricDistributionPoint
2354 struct IfcElectricDistributionPoint : IfcFlowController, ObjectHelper<IfcElectricDistributionPoint,2> { IfcElectricDistributionPoint() : Object("IfcElectricDistributionPoint") {}
2355 IfcElectricDistributionPointFunctionEnum::Out DistributionPointFunction;
2356 Maybe< IfcLabel::Out > UserDefinedFunction;
2357 };
2358
2359 // C++ wrapper for IfcFlowStorageDeviceType
2360 struct IfcFlowStorageDeviceType : IfcDistributionFlowElementType, ObjectHelper<IfcFlowStorageDeviceType,0> { IfcFlowStorageDeviceType() : Object("IfcFlowStorageDeviceType") {}
2361
2362 };
2363
2364 // C++ wrapper for IfcElectricFlowStorageDeviceType
2365 struct IfcElectricFlowStorageDeviceType : IfcFlowStorageDeviceType, ObjectHelper<IfcElectricFlowStorageDeviceType,1> { IfcElectricFlowStorageDeviceType() : Object("IfcElectricFlowStorageDeviceType") {}
2366 IfcElectricFlowStorageDeviceTypeEnum::Out PredefinedType;
2367 };
2368
2369 // C++ wrapper for IfcElectricGeneratorType
2370 struct IfcElectricGeneratorType : IfcEnergyConversionDeviceType, ObjectHelper<