diff options
author | Sean Harmer <sean.harmer@kdab.com> | 2017-05-24 12:09:44 +0100 |
---|---|---|
committer | Sean Harmer <sean.harmer@kdab.com> | 2017-05-24 12:10:02 +0100 |
commit | 77d294db076dac19e8b549b445ffede9f7260c84 (patch) | |
tree | 828ee7a6862ec5c0bd24f97cb540625a2c647376 /src/3rdparty/patches | |
parent | 59f8fec8a41606b3185fe3a4e276978e3e1ed5ef (diff) | |
parent | 939b9b4b7591e8a421cf048a0a84ed3e75d81d21 (diff) |
Merge branch 'dev' into wip/animationwip/animation
Change-Id: I6e770609c90a7745d08fa4e2f424e865678c5d6f
Diffstat (limited to 'src/3rdparty/patches')
10 files changed, 141 insertions, 11903 deletions
diff --git a/src/3rdparty/patches/0001-Fix-ambiguous-if-else-in-assimp.patch b/src/3rdparty/patches/0001-Fix-ambiguous-if-else-in-assimp.patch deleted file mode 100644 index 893336d5e..000000000 --- a/src/3rdparty/patches/0001-Fix-ambiguous-if-else-in-assimp.patch +++ /dev/null @@ -1,31 +0,0 @@ -From 3647801a7673f1e843bd64a0ac38d60dd4ae7495 Mon Sep 17 00:00:00 2001 -From: Sean Harmer <sean.harmer@kdab.com> -Date: Sun, 13 Sep 2015 19:17:45 +0100 -Subject: [PATCH] Fix ambiguous if else in assimp - -Change-Id: I17516fc8f34dad7a99f536dc4b3cba47e7779d4b ---- - src/3rdparty/assimp/contrib/clipper/clipper.cpp | 2 ++ - 1 file changed, 2 insertions(+) - -diff --git a/src/3rdparty/assimp/contrib/clipper/clipper.cpp b/src/3rdparty/assimp/contrib/clipper/clipper.cpp -index 2b209da..b2316cc 100644 ---- a/src/3rdparty/assimp/contrib/clipper/clipper.cpp -+++ b/src/3rdparty/assimp/contrib/clipper/clipper.cpp -@@ -2124,11 +2124,13 @@ void Clipper::AddOutPt(TEdge *e, const IntPoint &pt) - { - //check for 'rounding' artefacts ... - if (outRec->sides == esNeither && pt.Y == op->pt.Y) -+ { - if (ToFront) - { - if (pt.X == op->pt.X +1) return; //ie wrong side of bottomPt - } - else if (pt.X == op->pt.X -1) return; //ie wrong side of bottomPt -+ } - - outRec->sides = (EdgeSide)(outRec->sides | e->side); - if (outRec->sides == esBoth) --- -2.5.1 - diff --git a/src/3rdparty/patches/0001-assimp-Fix-type-warnings.patch b/src/3rdparty/patches/0001-assimp-Fix-type-warnings.patch new file mode 100644 index 000000000..1d97a64b4 --- /dev/null +++ b/src/3rdparty/patches/0001-assimp-Fix-type-warnings.patch @@ -0,0 +1,48 @@ +diff -ur assimpGIT/code/AssxmlExporter.cpp assimp/code/AssxmlExporter.cpp +--- assimpGIT/code/AssxmlExporter.cpp 2016-12-08 14:13:07.000000000 -0500 ++++ assimp/code/AssxmlExporter.cpp 2016-12-08 09:23:22.000000000 -0500 +@@ -72,7 +72,7 @@ + return -1; + } + +- static const size_t Size = 4096; ++ static const int Size = 4096; + char sz[ Size ]; + size_t len( strlen( format ) ); + ::memset( sz, '\0', Size ); +diff -ur assimpGIT/code/glTFAssetWriter.inl assimp/code/glTFAssetWriter.inl +--- assimpGIT/code/glTFAssetWriter.inl 2016-12-08 14:13:07.000000000 -0500 ++++ assimp/code/glTFAssetWriter.inl 2016-12-08 10:14:27.000000000 -0500 +@@ -56,7 +56,7 @@ + inline Value& MakeValue(Value& val, float(&r)[N], MemoryPoolAllocator<>& al) { + val.SetArray(); + val.Reserve(N, al); +- for (int i = 0; i < N; ++i) { ++ for (decltype(N) i = 0; i < N; ++i) { + val.PushBack(r[i], al); + } + return val; +diff -ur assimpGIT/contrib/openddlparser/code/OpenDDLExport.cpp assimp/contrib/openddlparser/code/OpenDDLExport.cpp +--- assimpGIT/contrib/openddlparser/code/OpenDDLExport.cpp 2016-12-08 14:13:07.000000000 -0500 ++++ assimp/contrib/openddlparser/code/OpenDDLExport.cpp 2016-12-08 09:23:22.000000000 -0500 +@@ -280,7 +280,7 @@ + statement += "["; + char buffer[ 256 ]; + ::memset( buffer, '\0', 256 * sizeof( char ) ); +- sprintf( buffer, "%d", numItems ); ++ sprintf( buffer, "%d", int(numItems) ); + statement += buffer; + statement += "]"; + } +diff -ur assimpGIT/contrib/openddlparser/include/openddlparser/OpenDDLParserUtils.h assimp/contrib/openddlparser/include/openddlparser/OpenDDLParserUtils.h +--- assimpGIT/contrib/openddlparser/include/openddlparser/OpenDDLParserUtils.h 2016-12-08 14:13:07.000000000 -0500 ++++ assimp/contrib/openddlparser/include/openddlparser/OpenDDLParserUtils.h 2016-12-08 09:23:22.000000000 -0500 +@@ -84,7 +84,7 @@ + template<class T> + inline + bool isNumeric( const T in ) { +- return ( chartype_table[ in ] == 1 ); ++ return ( chartype_table[ static_cast<int>( in ) ] == 1 ); + } + + template<class T> diff --git a/src/3rdparty/patches/0002-assimp-Add-license-header.patch b/src/3rdparty/patches/0002-assimp-Add-license-header.patch new file mode 100644 index 000000000..a8385601e --- /dev/null +++ b/src/3rdparty/patches/0002-assimp-Add-license-header.patch @@ -0,0 +1,39 @@ +--- assimpGIT/code/Version.cpp 2016-12-08 14:13:07.000000000 -0500 ++++ assimp/code/Version.cpp 2016-12-08 14:10:08.000000000 -0500 +@@ -1,3 +1,36 @@ ++/* ++--------------------------------------------------------------------------- ++Open Asset Import Library (assimp) ++--------------------------------------------------------------------------- ++Copyright (c) 2006-2016, assimp team ++All rights reserved. ++Redistribution and use of this software in source and binary forms, ++with or without modification, are permitted provided that the following ++conditions are met: ++* Redistributions of source code must retain the above ++ copyright notice, this list of conditions and the ++ following disclaimer. ++* Redistributions in binary form must reproduce the above ++ copyright notice, this list of conditions and the ++ following disclaimer in the documentation and/or other ++ materials provided with the distribution. ++* Neither the name of the assimp team, nor the names of its ++ contributors may be used to endorse or promote products ++ derived from this software without specific prior ++ written permission of the assimp team. ++THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ++"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT ++LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR ++A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT ++OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, ++SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT ++LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, ++DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY ++THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT ++(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE ++OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. ++--------------------------------------------------------------------------- ++*/ + + // Actually just a dummy, used by the compiler to build the precompiled header. + diff --git a/src/3rdparty/patches/0002-assimp-Fix-building-with-mingw-older-than-4.9.patch b/src/3rdparty/patches/0002-assimp-Fix-building-with-mingw-older-than-4.9.patch deleted file mode 100644 index e4b97d444..000000000 --- a/src/3rdparty/patches/0002-assimp-Fix-building-with-mingw-older-than-4.9.patch +++ /dev/null @@ -1,10174 +0,0 @@ -From 98e76a717acd6474062c4d31ba3ffce84855d227 Mon Sep 17 00:00:00 2001 -From: Andy Nichols <andy.nichols@theqtcompany.com> -Date: Wed, 28 Oct 2015 12:12:23 +0100 -Subject: [PATCH] assimp: Fix building with mingw older than 4.9 - -On Windows when building with mingw versions older than 4.9 the assembly -of IFCReaderGen.o fails because it reaches the section limit. Normally -we would use the -mbig-objj flag to the assembler, but older versions of -GNU as don't have support for this. So to work around this -IFCReaderGen.cpp is split into two separate files, which keeps the -sections below the limit for each object file. - -Change-Id: If0cae29c10a50e3a5edf85fe21b8d2528971eb83 ---- - src/3rdparty/assimp/assimp.pri | 3 +- - src/3rdparty/assimp/code/IFCReaderGen.cpp | 5030 ---------------------------- - src/3rdparty/assimp/code/IFCReaderGen1.cpp | 3168 ++++++++++++++++++ - src/3rdparty/assimp/code/IFCReaderGen2.cpp | 1917 +++++++++++ - 4 files changed, 5087 insertions(+), 5031 deletions(-) - delete mode 100644 src/3rdparty/assimp/code/IFCReaderGen.cpp - create mode 100644 src/3rdparty/assimp/code/IFCReaderGen1.cpp - create mode 100644 src/3rdparty/assimp/code/IFCReaderGen2.cpp - -diff --git a/src/3rdparty/assimp/assimp.pri b/src/3rdparty/assimp/assimp.pri -index 0b63fd5..d171fbc 100644 ---- a/src/3rdparty/assimp/assimp.pri -+++ b/src/3rdparty/assimp/assimp.pri -@@ -352,7 +352,8 @@ SOURCES += code/3DSConverter.cpp \ - code/IFCLoader.cpp \ - code/IFCMaterial.cpp \ - code/IFCProfile.cpp \ -- code/IFCReaderGen.cpp \ -+ code/IFCReaderGen1.cpp \ -+ code/IFCReaderGen2.cpp \ - code/IFCUtil.cpp \ - code/Importer.cpp \ - code/ImporterRegistry.cpp \ -diff --git a/src/3rdparty/assimp/code/IFCReaderGen.cpp b/src/3rdparty/assimp/code/IFCReaderGen.cpp -deleted file mode 100644 -index c178051..0000000 ---- a/src/3rdparty/assimp/code/IFCReaderGen.cpp -+++ /dev/null -@@ -1,5030 +0,0 @@ --/* --Open Asset Import Library (ASSIMP) ------------------------------------------------------------------------ -- --Copyright (c) 2006-2010, ASSIMP Development Team --All rights reserved. -- --Redistribution and use of this software in source and binary forms, --with or without modification, are permitted provided that the --following conditions are met: -- --* Redistributions of source code must retain the above -- copyright notice, this list of conditions and the -- following disclaimer. -- --* Redistributions in binary form must reproduce the above -- copyright notice, this list of conditions and the -- following disclaimer in the documentation and/or other -- materials provided with the distribution. -- --* Neither the name of the ASSIMP team, nor the names of its -- contributors may be used to endorse or promote products -- derived from this software without specific prior -- written permission of the ASSIMP Development Team. -- --THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS --"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT --LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR --A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT --OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, --SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT --LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, --DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY --THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT --(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE --OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -- ------------------------------------------------------------------------ --*/ -- --/** MACHINE-GENERATED by scripts/ICFImporter/CppGenerator.py */ -- --#include "AssimpPCH.h" --#ifndef ASSIMP_BUILD_NO_IFC_IMPORTER -- --#include "IFCReaderGen.h" -- --namespace Assimp { --using namespace IFC; -- --namespace { -- -- typedef EXPRESS::ConversionSchema::SchemaEntry SchemaEntry; -- const SchemaEntry schema_raw[] = { -- SchemaEntry("ifcstairtypeenum",NULL ) --, SchemaEntry("ifcspacetypeenum",NULL ) --, SchemaEntry("ifcwalltypeenum",NULL ) --, SchemaEntry("ifcmonthinyearnumber",NULL ) --, SchemaEntry("ifcheatfluxdensitymeasure",NULL ) --, SchemaEntry("ifckinematicviscositymeasure",NULL ) --, SchemaEntry("ifcsequenceenum",NULL ) --, SchemaEntry("ifcairtoairheatrecoverytypeenum",NULL ) --, SchemaEntry("ifcactorselect",NULL ) --, SchemaEntry("ifctransformertypeenum",NULL ) --, SchemaEntry("ifcunitaryequipmenttypeenum",NULL ) --, SchemaEntry("ifcelectricflowstoragedevicetypeenum",NULL ) --, SchemaEntry("ifcenergysequenceenum",NULL ) --, SchemaEntry("ifcworkcontroltypeenum",NULL ) --, SchemaEntry("ifccurvaturemeasure",NULL ) --, SchemaEntry("ifcparametervalue",NULL ) --, SchemaEntry("ifcappliedvalueselect",NULL ) --, SchemaEntry("ifcwarpingconstantmeasure",NULL ) --, SchemaEntry("ifcarithmeticoperatorenum",NULL ) --, SchemaEntry("ifclinearforcemeasure",NULL ) --, SchemaEntry("ifcwindowpanelpositionenum",NULL ) --, SchemaEntry("ifcflowmetertypeenum",NULL ) --, SchemaEntry("ifcrampflighttypeenum",NULL ) --, SchemaEntry("ifcspecularhighlightselect",NULL ) --, SchemaEntry("ifcactiontypeenum",NULL ) --, SchemaEntry("ifcgeometricprojectionenum",NULL ) --, SchemaEntry("ifctimeseriesdatatypeenum",NULL ) --, SchemaEntry("ifcmagneticfluxmeasure",NULL ) --, SchemaEntry("ifcobjecttypeenum",NULL ) --, SchemaEntry("ifcdataoriginenum",NULL ) --, SchemaEntry("ifcmassdensitymeasure",NULL ) --, SchemaEntry("ifclightfixturetypeenum",NULL ) --, SchemaEntry("ifcservicelifetypeenum",NULL ) --, SchemaEntry("ifcelectricvoltagemeasure",NULL ) --, SchemaEntry("ifcheatingvaluemeasure",NULL ) --, SchemaEntry("ifcpresentabletext",NULL ) --, SchemaEntry("ifcaheadorbehind",NULL ) --, SchemaEntry("ifcsimplevalue",NULL ) --, SchemaEntry("ifcsensortypeenum",NULL ) --, SchemaEntry("ifcderivedunitenum",NULL ) --, SchemaEntry("ifcsizeselect",NULL ) --, SchemaEntry("ifctransportelementtypeenum",NULL ) --, SchemaEntry("ifcinventorytypeenum",NULL ) --, SchemaEntry("ifctextdecoration",NULL ) --, SchemaEntry("ifcdirectionsenseenum",NULL ) --, SchemaEntry("ifcductfittingtypeenum",NULL ) --, SchemaEntry("ifcdocumentstatusenum",NULL ) --, SchemaEntry("ifcslabtypeenum",NULL ) --, SchemaEntry("ifcdoorstyleconstructionenum",NULL ) --, SchemaEntry("ifcvolumemeasure",NULL ) --, SchemaEntry("ifcinductancemeasure",NULL ) --, SchemaEntry("ifccurtainwalltypeenum",NULL ) --, SchemaEntry("ifcsiunitname",NULL ) --, SchemaEntry("ifcspecularexponent",NULL ) --, SchemaEntry("ifcsoundpressuremeasure",NULL ) --, SchemaEntry("ifcanalysistheorytypeenum",NULL ) --, SchemaEntry("ifcgasterminaltypeenum",NULL ) --, SchemaEntry("ifcyearnumber",NULL ) --, SchemaEntry("ifcmodulusofelasticitymeasure",NULL ) --, SchemaEntry("ifcchangeactionenum",NULL ) --, SchemaEntry("ifcdampertypeenum",NULL ) --, SchemaEntry("ifcevaporatortypeenum",NULL ) --, SchemaEntry("ifcionconcentrationmeasure",NULL ) --, SchemaEntry("ifcductsegmenttypeenum",NULL ) --, SchemaEntry("ifcprotectivedevicetypeenum",NULL ) --, SchemaEntry("ifcabsorbeddosemeasure",NULL ) --, SchemaEntry("ifcmassperlengthmeasure",NULL ) --, SchemaEntry("ifctextfontname",NULL ) --, SchemaEntry("ifcorientationselect",NULL ) --, SchemaEntry("ifcilluminancemeasure",NULL ) --, SchemaEntry("ifcfiresuppressionterminaltypeenum",NULL ) --, SchemaEntry("ifcfontstyle",NULL ) --, SchemaEntry("ifcmomentofinertiameasure",NULL ) --, SchemaEntry("ifcmodulusofsubgradereactionmeasure",NULL ) --, SchemaEntry("ifccomplexnumber",NULL ) --, SchemaEntry("ifchumidifiertypeenum",NULL ) --, SchemaEntry("ifcpresentationstyleselect",NULL ) --, SchemaEntry("ifcthermaltransmittancemeasure",NULL ) --, SchemaEntry("ifcribplatedirectionenum",NULL ) --, SchemaEntry("ifcclassificationnotationselect",NULL ) --, SchemaEntry("ifcminuteinhour",NULL ) --, SchemaEntry("ifcinternalorexternalenum",NULL ) --, SchemaEntry("ifcrotationalfrequencymeasure",NULL ) --, SchemaEntry("ifcsanitaryterminaltypeenum",NULL ) --, SchemaEntry("ifcsymbolstyleselect",NULL ) --, SchemaEntry("ifcelementcompositionenum",NULL ) --, SchemaEntry("ifctextpath",NULL ) --, SchemaEntry("ifcpowermeasure",NULL ) --, SchemaEntry("ifcsurfacestyleelementselect",NULL ) --, SchemaEntry("ifcresourceconsumptionenum",NULL ) --, SchemaEntry("ifcelectriccapacitancemeasure",NULL ) --, SchemaEntry("ifclayersetdirectionenum",NULL ) --, SchemaEntry("ifcrailingtypeenum",NULL ) --, SchemaEntry("ifcobjectiveenum",NULL ) --, SchemaEntry("ifcdocumentselect",NULL ) --, SchemaEntry("ifcmodulusoflinearsubgradereactionmeasure",NULL ) --, SchemaEntry("ifcthermaladmittancemeasure",NULL ) --, SchemaEntry("ifctransitioncode",NULL ) --, SchemaEntry("ifcconnectiontypeenum",NULL ) --, SchemaEntry("ifcmonetarymeasure",NULL ) --, SchemaEntry("ifcstackterminaltypeenum",NULL ) --, SchemaEntry("ifccolour",NULL ) --, SchemaEntry("ifctext",NULL ) --, SchemaEntry("ifccontextdependentmeasure",NULL ) --, SchemaEntry("ifcthermalconductivitymeasure",NULL ) --, SchemaEntry("ifcprojectedortruelengthenum",NULL ) --, SchemaEntry("ifcpressuremeasure",NULL ) --, SchemaEntry("ifcmoisturediffusivitymeasure",NULL ) --, SchemaEntry("ifcbooleanoperator",NULL ) --, SchemaEntry("ifcpropertysourceenum",NULL ) --, SchemaEntry("ifctimestamp",NULL ) --, SchemaEntry("ifcmaterialselect",NULL ) --, SchemaEntry("ifcgloballyuniqueid",NULL ) --, SchemaEntry("ifcreflectancemethodenum",NULL ) --, SchemaEntry("ifcvaporpermeabilitymeasure",NULL ) --, SchemaEntry("ifctimeseriesscheduletypeenum",NULL ) --, SchemaEntry("ifclinearmomentmeasure",NULL ) --, SchemaEntry("ifcgeometricsetselect",NULL ) --, SchemaEntry("ifcsectionmodulusmeasure",NULL ) --, SchemaEntry("ifcbsplinecurveform",NULL ) --, SchemaEntry("ifcdimensionextentusage",NULL ) --, SchemaEntry("ifcthermalexpansioncoefficientmeasure",NULL ) --, SchemaEntry("ifchourinday",NULL ) --, SchemaEntry("ifclinearvelocitymeasure",NULL ) --, SchemaEntry("ifctorquemeasure",NULL ) --, SchemaEntry("ifctemperaturegradientmeasure",NULL ) --, SchemaEntry("ifcfillstyleselect",NULL ) --, SchemaEntry("ifcelectricchargemeasure",NULL ) --, SchemaEntry("ifcheatexchangertypeenum",NULL ) --, SchemaEntry("ifcelectriccurrentenum",NULL ) --, SchemaEntry("ifcdaylightsavinghour",NULL ) --, SchemaEntry("ifcshell",NULL ) --, SchemaEntry("ifcdoseequivalentmeasure",NULL ) --, SchemaEntry("ifcprojectordertypeenum",NULL ) --, SchemaEntry("ifcderivedmeasurevalue",NULL ) --, SchemaEntry("ifclightdistributioncurveenum",NULL ) --, SchemaEntry("ifcwarpingmomentmeasure",NULL ) --, SchemaEntry("ifcmembertypeenum",NULL ) --, SchemaEntry("ifcsoundpowermeasure",NULL ) --, SchemaEntry("ifctextalignment",NULL ) --, SchemaEntry("ifccurveoredgecurve",NULL ) --, SchemaEntry("ifcmassflowratemeasure",NULL ) --, SchemaEntry("ifcisothermalmoisturecapacitymeasure",NULL ) --, SchemaEntry("ifccsgselect",NULL ) --, SchemaEntry("ifccoolingtowertypeenum",NULL ) --, SchemaEntry("ifcmassmeasure",NULL ) --, SchemaEntry("ifcpileconstructionenum",NULL ) --, SchemaEntry("ifcdoorstyleoperationenum",NULL ) --, SchemaEntry("ifcflowdirectionenum",NULL ) --, SchemaEntry("ifcthermalloadsourceenum",NULL ) --, SchemaEntry("ifclengthmeasure",NULL ) --, SchemaEntry("ifcconstraintenum",NULL ) --, SchemaEntry("ifcaxis2placement",NULL ) --, SchemaEntry("ifcloadgrouptypeenum",NULL ) --, SchemaEntry("ifcvalue",NULL ) --, SchemaEntry("ifcreinforcingbarsurfaceenum",NULL ) --, SchemaEntry("ifcprojectorderrecordtypeenum",NULL ) --, SchemaEntry("ifcdatetimeselect",NULL ) --, SchemaEntry("ifcstructuralsurfacetypeenum",NULL ) --, SchemaEntry("ifcpermeablecoveringoperationenum",NULL ) --, SchemaEntry("ifcfontweight",NULL ) --, SchemaEntry("ifcphmeasure",NULL ) --, SchemaEntry("ifcdescriptivemeasure",NULL ) --, SchemaEntry("ifccurvestylefontselect",NULL ) --, SchemaEntry("ifcunit",NULL ) --, SchemaEntry("ifchatchlinedistanceselect",NULL ) --, SchemaEntry("ifctextstyleselect",NULL ) --, SchemaEntry("ifcmetricvalueselect",NULL ) --, SchemaEntry("ifcvectorordirection",NULL ) --, SchemaEntry("ifcassemblyplaceenum",NULL ) --, SchemaEntry("ifcairterminaltypeenum",NULL ) --, SchemaEntry("ifccoveringtypeenum",NULL ) --, SchemaEntry("ifcplanarforcemeasure",NULL ) --, SchemaEntry("ifcvalvetypeenum",NULL ) --, SchemaEntry("ifcalarmtypeenum",NULL ) --, SchemaEntry("ifcdynamicviscositymeasure",NULL ) --, SchemaEntry("ifccurrencyenum",NULL ) --, SchemaEntry("ifcmodulusofrotationalsubgradereactionmeasure",NULL ) --, SchemaEntry("ifccablecarrierfittingtypeenum",NULL ) --, SchemaEntry("ifcboolean",NULL ) --, SchemaEntry("ifcactionsourcetypeenum",NULL ) --, SchemaEntry("ifcstructuralactivityassignmentselect",NULL ) --, SchemaEntry("ifcdistributionchamberelementtypeenum",NULL ) --, SchemaEntry("ifcevaporativecoolertypeenum",NULL ) --, SchemaEntry("ifcmagneticfluxdensitymeasure",NULL ) --, SchemaEntry("ifclightdistributiondatasourceselect",NULL ) --, SchemaEntry("ifctubebundletypeenum",NULL ) --, SchemaEntry("ifcaccelerationmeasure",NULL ) --, SchemaEntry("ifcboilertypeenum",NULL ) --, SchemaEntry("ifcramptypeenum",NULL ) --, SchemaEntry("ifcluminousintensitydistributionmeasure",NULL ) --, SchemaEntry("ifctrimmingpreference",NULL ) --, SchemaEntry("ifcspecificheatcapacitymeasure",NULL ) --, SchemaEntry("ifcamountofsubstancemeasure",NULL ) --, SchemaEntry("ifcroleenum",NULL ) --, SchemaEntry("ifcdocumentconfidentialityenum",NULL ) --, SchemaEntry("ifcfrequencymeasure",NULL ) --, SchemaEntry("ifcsectiontypeenum",NULL ) --, SchemaEntry("ifcelementassemblytypeenum",NULL ) --, SchemaEntry("ifcfootingtypeenum",NULL ) --, SchemaEntry("ifclayereditem",NULL ) --, SchemaEntry("ifccablesegmenttypeenum",NULL ) --, SchemaEntry("ifcdefinedsymbolselect",NULL ) --, SchemaEntry("ifcbuildingelementproxytypeenum",NULL ) --, SchemaEntry("ifcelectricgeneratortypeenum",NULL ) --, SchemaEntry("ifcrotationalstiffnessmeasure",NULL ) --, SchemaEntry("ifcspaceheatertypeenum",NULL ) --, SchemaEntry("ifcareameasure",NULL ) --, SchemaEntry("ifclabel",NULL ) --, SchemaEntry("ifccostscheduletypeenum",NULL ) --, SchemaEntry("ifcswitchingdevicetypeenum",NULL ) --, SchemaEntry("ifcelectrictimecontroltypeenum",NULL ) --, SchemaEntry("ifcfiltertypeenum",NULL ) --, SchemaEntry("ifcpositivelengthmeasure",NULL ) --, SchemaEntry("ifcnullstyle",NULL ) --, SchemaEntry("ifcconditioncriterionselect",NULL ) --, SchemaEntry("ifcshearmodulusmeasure",NULL ) --, SchemaEntry("ifcnormalisedratiomeasure",NULL ) --, SchemaEntry("ifcdoorpaneloperationenum",NULL ) --, SchemaEntry("ifcpointorvertexpoint",NULL ) --, SchemaEntry("ifcrooftypeenum",NULL ) --, SchemaEntry("ifccountmeasure",NULL ) --, SchemaEntry("ifcelectricconductancemeasure",NULL ) --, SchemaEntry("ifcproceduretypeenum",NULL ) --, SchemaEntry("ifcflowinstrumenttypeenum",NULL ) --, SchemaEntry("ifcelectricmotortypeenum",NULL ) --, SchemaEntry("ifcsurfaceside",NULL ) --, SchemaEntry("ifcstructuralcurvetypeenum",NULL ) --, SchemaEntry("ifccondensertypeenum",NULL ) --, SchemaEntry("ifclinearstiffnessmeasure",NULL ) --, SchemaEntry("ifcunitenum",NULL ) --, SchemaEntry("ifcoccupanttypeenum",NULL ) --, SchemaEntry("ifcthermalloadtypeenum",NULL ) --, SchemaEntry("ifcreinforcingbarroleenum",NULL ) --, SchemaEntry("ifcbenchmarkenum",NULL ) --, SchemaEntry("ifcpositiveplaneanglemeasure",NULL ) --, SchemaEntry("ifctexttransformation",NULL ) --, SchemaEntry("ifcdraughtingcalloutelement",NULL ) --, SchemaEntry("ifcratiomeasure",NULL ) --, SchemaEntry("ifcsolidanglemeasure",NULL ) --, SchemaEntry("ifcpipesegmenttypeenum",NULL ) --, SchemaEntry("ifccablecarriersegmenttypeenum",NULL ) --, SchemaEntry("ifccolourorfactor",NULL ) --, SchemaEntry("ifcidentifier",NULL ) --, SchemaEntry("ifctendontypeenum",NULL ) --, SchemaEntry("ifccontrollertypeenum",NULL ) --, SchemaEntry("ifcradioactivitymeasure",NULL ) --, SchemaEntry("ifctimemeasure",NULL ) --, SchemaEntry("ifcpumptypeenum",NULL ) --, SchemaEntry("ifcelectricheatertypeenum",NULL ) --, SchemaEntry("ifcbeamtypeenum",NULL ) --, SchemaEntry("ifcstateenum",NULL ) --, SchemaEntry("ifcsiprefix",NULL ) --, SchemaEntry("ifcnumericmeasure",NULL ) --, SchemaEntry("ifcoutlettypeenum",NULL ) --, SchemaEntry("ifccompoundplaneanglemeasure",NULL ) --, SchemaEntry("ifcservicelifefactortypeenum",NULL ) --, SchemaEntry("ifclogicaloperatorenum",NULL ) --, SchemaEntry("ifcbooleanoperand",NULL ) --, SchemaEntry("ifcobjectreferenceselect",NULL ) --, SchemaEntry("ifccooledbeamtypeenum",NULL ) --, SchemaEntry("ifcductsilencertypeenum",NULL ) --, SchemaEntry("ifcsectionalareaintegralmeasure",NULL ) --, SchemaEntry("ifcfontvariant",NULL ) --, SchemaEntry("ifcvolumetricflowratemeasure",NULL ) --, SchemaEntry("ifcplatetypeenum",NULL ) --, SchemaEntry("ifcenvironmentalimpactcategoryenum",NULL ) --, SchemaEntry("ifcvibrationisolatortypeenum",NULL ) --, SchemaEntry("ifcthermodynamictemperaturemeasure",NULL ) --, SchemaEntry("ifcrotationalmassmeasure",NULL ) --, SchemaEntry("ifcsecondinminute",NULL ) --, SchemaEntry("ifcdayinmonthnumber",NULL ) --, SchemaEntry("ifcdimensioncount",NULL ) --, SchemaEntry("ifcwindowstyleoperationenum",NULL ) --, SchemaEntry("ifcthermalresistancemeasure",NULL ) --, SchemaEntry("ifcmeasurevalue",NULL ) --, SchemaEntry("ifcwindowpaneloperationenum",NULL ) --, SchemaEntry("ifcchillertypeenum",NULL ) --, SchemaEntry("ifcpositiveratiomeasure",NULL ) --, SchemaEntry("ifcinteger",NULL ) --, SchemaEntry("ifclogical",NULL ) --, SchemaEntry("ifcjunctionboxtypeenum",NULL ) --, SchemaEntry("ifcaddresstypeenum",NULL ) --, SchemaEntry("ifcwasteterminaltypeenum",NULL ) --, SchemaEntry("ifctrimmingselect",NULL ) --, SchemaEntry("ifclightemissionsourceenum",NULL ) --, SchemaEntry("ifcsoundscaleenum",NULL ) --, SchemaEntry("ifcluminousfluxmeasure",NULL ) --, SchemaEntry("ifcelectricresistancemeasure",NULL ) --, SchemaEntry("ifcintegercountratemeasure",NULL ) --, SchemaEntry("ifcphysicalorvirtualenum",NULL ) --, SchemaEntry("ifcmolecularweightmeasure",NULL ) --, SchemaEntry("ifcprofiletypeenum",NULL ) --, SchemaEntry("ifcboxalignment",NULL ) --, SchemaEntry("ifcglobalorlocalenum",NULL ) --, SchemaEntry("ifcspecularroughness",NULL ) --, SchemaEntry("ifclamptypeenum",NULL ) --, SchemaEntry("ifcpiletypeenum",NULL ) --, SchemaEntry("ifcelectriccurrentmeasure",NULL ) --, SchemaEntry("ifcfantypeenum",NULL ) --, SchemaEntry("ifcsurfaceorfacesurface",NULL ) --, SchemaEntry("ifcpipefittingtypeenum",NULL ) --, SchemaEntry("ifctanktypeenum",NULL ) --, SchemaEntry("ifccurvefontorscaledcurvefontselect",NULL ) --, SchemaEntry("ifcwindowstyleconstructionenum",NULL ) --, SchemaEntry("ifcairterminalboxtypeenum",NULL ) --, SchemaEntry("ifcstairflighttypeenum",NULL ) --, SchemaEntry("ifcluminousintensitymeasure",NULL ) --, SchemaEntry("ifcmotorconnectiontypeenum",NULL ) --, SchemaEntry("ifcplaneanglemeasure",NULL ) --, SchemaEntry("ifcactuatortypeenum",NULL ) --, SchemaEntry("ifccolumntypeenum",NULL ) --, SchemaEntry("ifctextfontselect",NULL ) --, SchemaEntry("ifcdoorpanelpositionenum",NULL ) --, SchemaEntry("ifccoiltypeenum",NULL ) --, SchemaEntry("ifcangularvelocitymeasure",NULL ) --, SchemaEntry("ifcanalysismodeltypeenum",NULL ) --, SchemaEntry("ifclibraryselect",NULL ) --, SchemaEntry("ifcforcemeasure",NULL ) --, SchemaEntry("ifcfillareastyletileshapeselect",NULL ) --, SchemaEntry("ifcelectricappliancetypeenum",NULL ) --, SchemaEntry("ifcsurfacetextureenum",NULL ) --, SchemaEntry("ifccharacterstyleselect",NULL ) --, SchemaEntry("ifcenergymeasure",NULL ) --, SchemaEntry("ifcreal",NULL ) --, SchemaEntry("ifccompressortypeenum",NULL ) --, SchemaEntry("ifcelectricdistributionpointfunctionenum",NULL ) --, SchemaEntry("ifcroot",&STEP::ObjectHelper<IfcRoot,4>::Construct ) --, SchemaEntry("ifcobjectdefinition",&STEP::ObjectHelper<IfcObjectDefinition,0>::Construct ) --, SchemaEntry("ifctypeobject",&STEP::ObjectHelper<IfcTypeObject,2>::Construct ) --, SchemaEntry("ifctypeproduct",&STEP::ObjectHelper<IfcTypeProduct,2>::Construct ) --, SchemaEntry("ifcelementtype",&STEP::ObjectHelper<IfcElementType,1>::Construct ) --, SchemaEntry("ifcdistributionelementtype",&STEP::ObjectHelper<IfcDistributionElementType,0>::Construct ) --, SchemaEntry("ifcdistributionflowelementtype",&STEP::ObjectHelper<IfcDistributionFlowElementType,0>::Construct ) --, SchemaEntry("ifcflowcontrollertype",&STEP::ObjectHelper<IfcFlowControllerType,0>::Construct ) --, SchemaEntry("ifcelectrictimecontroltype",&STEP::ObjectHelper<IfcElectricTimeControlType,1>::Construct ) --, SchemaEntry("ifcrepresentation",&STEP::ObjectHelper<IfcRepresentation,4>::Construct ) --, SchemaEntry("ifcshapemodel",&STEP::ObjectHelper<IfcShapeModel,0>::Construct ) --, SchemaEntry("ifctopologyrepresentation",&STEP::ObjectHelper<IfcTopologyRepresentation,0>::Construct ) --, SchemaEntry("ifcrelationship",&STEP::ObjectHelper<IfcRelationship,0>::Construct ) --, SchemaEntry("ifcrelconnects",&STEP::ObjectHelper<IfcRelConnects,0>::Construct ) --, SchemaEntry("ifcrelcoversspaces",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcflowfittingtype",&STEP::ObjectHelper<IfcFlowFittingType,0>::Construct ) --, SchemaEntry("ifccablecarrierfittingtype",&STEP::ObjectHelper<IfcCableCarrierFittingType,1>::Construct ) --, SchemaEntry("ifcstructuralconnectioncondition",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcslippageconnectioncondition",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcenergyconversiondevicetype",&STEP::ObjectHelper<IfcEnergyConversionDeviceType,0>::Construct ) --, SchemaEntry("ifccoiltype",&STEP::ObjectHelper<IfcCoilType,1>::Construct ) --, SchemaEntry("ifcobject",&STEP::ObjectHelper<IfcObject,1>::Construct ) --, SchemaEntry("ifccontrol",&STEP::ObjectHelper<IfcControl,0>::Construct ) --, SchemaEntry("ifcperformancehistory",&STEP::ObjectHelper<IfcPerformanceHistory,1>::Construct ) --, SchemaEntry("ifcrepresentationitem",&STEP::ObjectHelper<IfcRepresentationItem,0>::Construct ) --, SchemaEntry("ifcgeometricrepresentationitem",&STEP::ObjectHelper<IfcGeometricRepresentationItem,0>::Construct ) --, SchemaEntry("ifctextliteral",&STEP::ObjectHelper<IfcTextLiteral,3>::Construct ) --, SchemaEntry("ifctextliteralwithextent",&STEP::ObjectHelper<IfcTextLiteralWithExtent,2>::Construct ) --, SchemaEntry("ifcproductrepresentation",&STEP::ObjectHelper<IfcProductRepresentation,3>::Construct ) --, SchemaEntry("ifcproduct",&STEP::ObjectHelper<IfcProduct,2>::Construct ) --, SchemaEntry("ifcelement",&STEP::ObjectHelper<IfcElement,1>::Construct ) --, SchemaEntry("ifcdistributionelement",&STEP::ObjectHelper<IfcDistributionElement,0>::Construct ) --, SchemaEntry("ifcdistributionflowelement",&STEP::ObjectHelper<IfcDistributionFlowElement,0>::Construct ) --, SchemaEntry("ifccurve",&STEP::ObjectHelper<IfcCurve,0>::Construct ) --, SchemaEntry("ifcboundedcurve",&STEP::ObjectHelper<IfcBoundedCurve,0>::Construct ) --, SchemaEntry("ifccompositecurve",&STEP::ObjectHelper<IfcCompositeCurve,2>::Construct ) --, SchemaEntry("ifc2dcompositecurve",&STEP::ObjectHelper<Ifc2DCompositeCurve,0>::Construct ) --, SchemaEntry("ifcboundarycondition",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcboundaryfacecondition",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifccartesiantransformationoperator",&STEP::ObjectHelper<IfcCartesianTransformationOperator,4>::Construct ) --, SchemaEntry("ifccartesiantransformationoperator3d",&STEP::ObjectHelper<IfcCartesianTransformationOperator3D,1>::Construct ) --, SchemaEntry("ifcproperty",&STEP::ObjectHelper<IfcProperty,2>::Construct ) --, SchemaEntry("ifcsimpleproperty",&STEP::ObjectHelper<IfcSimpleProperty,0>::Construct ) --, SchemaEntry("ifcpropertyenumeratedvalue",&STEP::ObjectHelper<IfcPropertyEnumeratedValue,2>::Construct ) --, SchemaEntry("ifcpresentationlayerassignment",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcpresentationlayerwithstyle",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcbuildingelementtype",&STEP::ObjectHelper<IfcBuildingElementType,0>::Construct ) --, SchemaEntry("ifcstairflighttype",&STEP::ObjectHelper<IfcStairFlightType,1>::Construct ) --, SchemaEntry("ifcsurface",&STEP::ObjectHelper<IfcSurface,0>::Construct ) --, SchemaEntry("ifcelementarysurface",&STEP::ObjectHelper<IfcElementarySurface,1>::Construct ) --, SchemaEntry("ifcplane",&STEP::ObjectHelper<IfcPlane,0>::Construct ) --, SchemaEntry("ifcbooleanresult",&STEP::ObjectHelper<IfcBooleanResult,3>::Construct ) --, SchemaEntry("ifcbooleanclippingresult",&STEP::ObjectHelper<IfcBooleanClippingResult,0>::Construct ) --, SchemaEntry("ifcsolidmodel",&STEP::ObjectHelper<IfcSolidModel,0>::Construct ) --, SchemaEntry("ifcmanifoldsolidbrep",&STEP::ObjectHelper<IfcManifoldSolidBrep,1>::Construct ) --, SchemaEntry("ifcprofileproperties",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcgeneralprofileproperties",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcstructuralprofileproperties",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcflowterminaltype",&STEP::ObjectHelper<IfcFlowTerminalType,0>::Construct ) --, SchemaEntry("ifcstackterminaltype",&STEP::ObjectHelper<IfcStackTerminalType,1>::Construct ) --, SchemaEntry("ifcstructuralitem",&STEP::ObjectHelper<IfcStructuralItem,0>::Construct ) --, SchemaEntry("ifcstructuralconnection",&STEP::ObjectHelper<IfcStructuralConnection,1>::Construct ) --, SchemaEntry("ifcstructuralcurveconnection",&STEP::ObjectHelper<IfcStructuralCurveConnection,0>::Construct ) --, SchemaEntry("ifcjunctionboxtype",&STEP::ObjectHelper<IfcJunctionBoxType,1>::Construct ) --, SchemaEntry("ifcrelassociates",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcrelassociatesconstraint",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcpropertydefinition",&STEP::ObjectHelper<IfcPropertyDefinition,0>::Construct ) --, SchemaEntry("ifcpropertysetdefinition",&STEP::ObjectHelper<IfcPropertySetDefinition,0>::Construct ) --, SchemaEntry("ifcdoorpanelproperties",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcconstraintrelationship",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcspacethermalloadproperties",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifclibraryinformation",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcprocess",&STEP::ObjectHelper<IfcProcess,0>::Construct ) --, SchemaEntry("ifctask",&STEP::ObjectHelper<IfcTask,5>::Construct ) --, SchemaEntry("ifcappliedvalue",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcenvironmentalimpactvalue",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcrelfillselement",&STEP::ObjectHelper<IfcRelFillsElement,2>::Construct ) --, SchemaEntry("ifcprocedure",&STEP::ObjectHelper<IfcProcedure,3>::Construct ) --, SchemaEntry("ifcstructuralload",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcstructuralloadstatic",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcstructuralloadsingledisplacement",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcproxy",&STEP::ObjectHelper<IfcProxy,2>::Construct ) --, SchemaEntry("ifccurvestylefont",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcresource",&STEP::ObjectHelper<IfcResource,0>::Construct ) --, SchemaEntry("ifcconstructionresource",&STEP::ObjectHelper<IfcConstructionResource,4>::Construct ) --, SchemaEntry("ifcsubcontractresource",&STEP::ObjectHelper<IfcSubContractResource,2>::Construct ) --, SchemaEntry("ifccalendardate",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcdocumentelectronicformat",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcrelcontainedinspatialstructure",&STEP::ObjectHelper<IfcRelContainedInSpatialStructure,2>::Construct ) --, SchemaEntry("ifcmaterialproperties",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcproductsofcombustionproperties",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifctopologicalrepresentationitem",&STEP::ObjectHelper<IfcTopologicalRepresentationItem,0>::Construct ) --, SchemaEntry("ifcedge",&STEP::ObjectHelper<IfcEdge,2>::Construct ) --, SchemaEntry("ifcedgecurve",&STEP::ObjectHelper<IfcEdgeCurve,2>::Construct ) --, SchemaEntry("ifcplatetype",&STEP::ObjectHelper<IfcPlateType,1>::Construct ) --, SchemaEntry("ifcobjectplacement",&STEP::ObjectHelper<IfcObjectPlacement,0>::Construct ) --, SchemaEntry("ifcgridplacement",&STEP::ObjectHelper<IfcGridPlacement,2>::Construct ) --, SchemaEntry("ifcfiresuppressionterminaltype",&STEP::ObjectHelper<IfcFireSuppressionTerminalType,1>::Construct ) --, SchemaEntry("ifcmechanicalmaterialproperties",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcflowstoragedevice",&STEP::ObjectHelper<IfcFlowStorageDevice,0>::Construct ) --, SchemaEntry("ifcperson",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcsweptsurface",&STEP::ObjectHelper<IfcSweptSurface,2>::Construct ) --, SchemaEntry("ifcsurfaceofrevolution",&STEP::ObjectHelper<IfcSurfaceOfRevolution,1>::Construct ) --, SchemaEntry("ifcorientededge",&STEP::ObjectHelper<IfcOrientedEdge,2>::Construct ) --, SchemaEntry("ifcownerhistory",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcrelassigns",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcrelassignstoactor",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcdirection",&STEP::ObjectHelper<IfcDirection,1>::Construct ) --, SchemaEntry("ifcreinforcementbarproperties",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcprofiledef",&STEP::ObjectHelper<IfcProfileDef,2>::Construct ) --, SchemaEntry("ifcparameterizedprofiledef",&STEP::ObjectHelper<IfcParameterizedProfileDef,1>::Construct ) --, SchemaEntry("ifccshapeprofiledef",&STEP::ObjectHelper<IfcCShapeProfileDef,6>::Construct ) --, SchemaEntry("ifcfeatureelement",&STEP::ObjectHelper<IfcFeatureElement,0>::Construct ) --, SchemaEntry("ifcfeatureelementsubtraction",&STEP::ObjectHelper<IfcFeatureElementSubtraction,0>::Construct ) --, SchemaEntry("ifcedgefeature",&STEP::ObjectHelper<IfcEdgeFeature,1>::Construct ) --, SchemaEntry("ifcchamferedgefeature",&STEP::ObjectHelper<IfcChamferEdgeFeature,2>::Construct ) --, SchemaEntry("ifcbuildingelement",&STEP::ObjectHelper<IfcBuildingElement,0>::Construct ) --, SchemaEntry("ifccolumn",&STEP::ObjectHelper<IfcColumn,0>::Construct ) --, SchemaEntry("ifcpropertyreferencevalue",&STEP::ObjectHelper<IfcPropertyReferenceValue,2>::Construct ) --, SchemaEntry("ifcmaterialclassificationrelationship",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcelectricmotortype",&STEP::ObjectHelper<IfcElectricMotorType,1>::Construct ) --, SchemaEntry("ifcspatialstructureelementtype",&STEP::ObjectHelper<IfcSpatialStructureElementType,0>::Construct ) --, SchemaEntry("ifcspacetype",&STEP::ObjectHelper<IfcSpaceType,1>::Construct ) --, SchemaEntry("ifcexternalreference",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcexternallydefinedhatchstyle",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifccolumntype",&STEP::ObjectHelper<IfcColumnType,1>::Construct ) --, SchemaEntry("ifccranerailashapeprofiledef",&STEP::ObjectHelper<IfcCraneRailAShapeProfileDef,12>::Construct ) --, SchemaEntry("ifccondensertype",&STEP::ObjectHelper<IfcCondenserType,1>::Construct ) --, SchemaEntry("ifcrelconnectselements",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcrelconnectswithrealizingelements",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifccircleprofiledef",&STEP::ObjectHelper<IfcCircleProfileDef,1>::Construct ) --, SchemaEntry("ifccirclehollowprofiledef",&STEP::ObjectHelper<IfcCircleHollowProfileDef,1>::Construct ) --, SchemaEntry("ifcorganizationrelationship",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcplacement",&STEP::ObjectHelper<IfcPlacement,1>::Construct ) --, SchemaEntry("ifcaxis2placement3d",&STEP::ObjectHelper<IfcAxis2Placement3D,2>::Construct ) --, SchemaEntry("ifcpresentationstyle",&STEP::ObjectHelper<IfcPresentationStyle,1>::Construct ) --, SchemaEntry("ifccurvestyle",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcequipmentelement",&STEP::ObjectHelper<IfcEquipmentElement,0>::Construct ) --, SchemaEntry("ifccompositecurvesegment",&STEP::ObjectHelper<IfcCompositeCurveSegment,3>::Construct ) --, SchemaEntry("ifcrectangleprofiledef",&STEP::ObjectHelper<IfcRectangleProfileDef,2>::Construct ) --, SchemaEntry("ifcphysicalquantity",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcphysicalcomplexquantity",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcrelassociateslibrary",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcrelsequence",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcbuildingelementproxy",&STEP::ObjectHelper<IfcBuildingElementProxy,1>::Construct ) --, SchemaEntry("ifcdistributioncontrolelementtype",&STEP::ObjectHelper<IfcDistributionControlElementType,0>::Construct ) --, SchemaEntry("ifcflowinstrumenttype",&STEP::ObjectHelper<IfcFlowInstrumentType,1>::Construct ) --, SchemaEntry("ifcdraughtingcallout",&STEP::ObjectHelper<IfcDraughtingCallout,1>::Construct ) --, SchemaEntry("ifcdimensioncurvedirectedcallout",&STEP::ObjectHelper<IfcDimensionCurveDirectedCallout,0>::Construct ) --, SchemaEntry("ifclineardimension",&STEP::ObjectHelper<IfcLinearDimension,0>::Construct ) --, SchemaEntry("ifcelementassembly",&STEP::ObjectHelper<IfcElementAssembly,2>::Construct ) --, SchemaEntry("ifcdraughtingcalloutrelationship",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifccsgprimitive3d",&STEP::ObjectHelper<IfcCsgPrimitive3D,1>::Construct ) --, SchemaEntry("ifcrightcircularcone",&STEP::ObjectHelper<IfcRightCircularCone,2>::Construct ) --, SchemaEntry("ifcexternallydefinedsurfacestyle",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcprojectorder",&STEP::ObjectHelper<IfcProjectOrder,3>::Construct ) --, SchemaEntry("ifcpropertyconstraintrelationship",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifclshapeprofiledef",&STEP::ObjectHelper<IfcLShapeProfileDef,8>::Construct ) --, SchemaEntry("ifcangulardimension",&STEP::ObjectHelper<IfcAngularDimension,0>::Construct ) --, SchemaEntry("ifctextstylefordefinedfont",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifclocalplacement",&STEP::ObjectHelper<IfcLocalPlacement,2>::Construct ) --, SchemaEntry("ifcsweptareasolid",&STEP::ObjectHelper<IfcSweptAreaSolid,2>::Construct ) --, SchemaEntry("ifcrevolvedareasolid",&STEP::ObjectHelper<IfcRevolvedAreaSolid,2>::Construct ) --, SchemaEntry("ifcstructuralsurfaceconnection",&STEP::ObjectHelper<IfcStructuralSurfaceConnection,0>::Construct ) --, SchemaEntry("ifcradiusdimension",&STEP::ObjectHelper<IfcRadiusDimension,0>::Construct ) --, SchemaEntry("ifcsweptdisksolid",&STEP::ObjectHelper<IfcSweptDiskSolid,5>::Construct ) --, SchemaEntry("ifchalfspacesolid",&STEP::ObjectHelper<IfcHalfSpaceSolid,2>::Construct ) --, SchemaEntry("ifcpolygonalboundedhalfspace",&STEP::ObjectHelper<IfcPolygonalBoundedHalfSpace,2>::Construct ) --, SchemaEntry("ifctimeseriesschedule",&STEP::ObjectHelper<IfcTimeSeriesSchedule,3>::Construct ) --, SchemaEntry("ifcdimensioncalloutrelationship",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifccooledbeamtype",&STEP::ObjectHelper<IfcCooledBeamType,1>::Construct ) --, SchemaEntry("ifcproject",&STEP::ObjectHelper<IfcProject,4>::Construct ) --, SchemaEntry("ifcapprovalrelationship",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcevaporatortype",&STEP::ObjectHelper<IfcEvaporatorType,1>::Construct ) --, SchemaEntry("ifclaborresource",&STEP::ObjectHelper<IfcLaborResource,1>::Construct ) --, SchemaEntry("ifcstructuralloadsingledisplacementdistortion",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcpropertyboundedvalue",&STEP::ObjectHelper<IfcPropertyBoundedValue,3>::Construct ) --, SchemaEntry("ifcrampflighttype",&STEP::ObjectHelper<IfcRampFlightType,1>::Construct ) --, SchemaEntry("ifcmember",&STEP::ObjectHelper<IfcMember,0>::Construct ) --, SchemaEntry("ifcstructuralloadplanarforce",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifctubebundletype",&STEP::ObjectHelper<IfcTubeBundleType,1>::Construct ) --, SchemaEntry("ifcvalvetype",&STEP::ObjectHelper<IfcValveType,1>::Construct ) --, SchemaEntry("ifcexternallydefinedtextfont",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifctrimmedcurve",&STEP::ObjectHelper<IfcTrimmedCurve,5>::Construct ) --, SchemaEntry("ifcreldefines",&STEP::ObjectHelper<IfcRelDefines,1>::Construct ) --, SchemaEntry("ifcreldefinesbyproperties",&STEP::ObjectHelper<IfcRelDefinesByProperties,1>::Construct ) --, SchemaEntry("ifcrelassignstocontrol",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcactor",&STEP::ObjectHelper<IfcActor,1>::Construct ) --, SchemaEntry("ifcoccupant",&STEP::ObjectHelper<IfcOccupant,1>::Construct ) --, SchemaEntry("ifchumidifiertype",&STEP::ObjectHelper<IfcHumidifierType,1>::Construct ) --, SchemaEntry("ifcarbitraryopenprofiledef",&STEP::ObjectHelper<IfcArbitraryOpenProfileDef,1>::Construct ) --, SchemaEntry("ifcrelassignstoprojectorder",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcpermit",&STEP::ObjectHelper<IfcPermit,1>::Construct ) --, SchemaEntry("ifcoffsetcurve3d",&STEP::ObjectHelper<IfcOffsetCurve3D,4>::Construct ) --, SchemaEntry("ifclightsource",&STEP::ObjectHelper<IfcLightSource,4>::Construct ) --, SchemaEntry("ifclightsourcepositional",&STEP::ObjectHelper<IfcLightSourcePositional,5>::Construct ) --, SchemaEntry("ifcsurfacetexture",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcblobtexture",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifccompositeprofiledef",&STEP::ObjectHelper<IfcCompositeProfileDef,2>::Construct ) --, SchemaEntry("ifcdocumentinformation",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcsurfacestylelighting",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcphysicalsimplequantity",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcquantityarea",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifctimeseries",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcclassificationnotation",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcramp",&STEP::ObjectHelper<IfcRamp,1>::Construct ) --, SchemaEntry("ifcpredefineditem",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcpredefinedcurvefont",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcpredefinedcolour",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifccurrencyrelationship",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcflowmovingdevice",&STEP::ObjectHelper<IfcFlowMovingDevice,0>::Construct ) --, SchemaEntry("ifcspaceheatertype",&STEP::ObjectHelper<IfcSpaceHeaterType,1>::Construct ) --, SchemaEntry("ifclamptype",&STEP::ObjectHelper<IfcLampType,1>::Construct ) --, SchemaEntry("ifcbuildingelementcomponent",&STEP::ObjectHelper<IfcBuildingElementComponent,0>::Construct ) --, SchemaEntry("ifcreinforcingelement",&STEP::ObjectHelper<IfcReinforcingElement,1>::Construct ) --, SchemaEntry("ifcreinforcingbar",&STEP::ObjectHelper<IfcReinforcingBar,5>::Construct ) --, SchemaEntry("ifcelectricheatertype",&STEP::ObjectHelper<IfcElectricHeaterType,1>::Construct ) --, SchemaEntry("ifctshapeprofiledef",&STEP::ObjectHelper<IfcTShapeProfileDef,10>::Construct ) --, SchemaEntry("ifcconstraint",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcobjective",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcstructuralactivity",&STEP::ObjectHelper<IfcStructuralActivity,2>::Construct ) --, SchemaEntry("ifcstructuralaction",&STEP::ObjectHelper<IfcStructuralAction,2>::Construct ) --, SchemaEntry("ifctexturecoordinate",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifctexturemap",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcmonetaryunit",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcquantitytime",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifctablerow",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifclightdistributiondata",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcductfittingtype",&STEP::ObjectHelper<IfcDuctFittingType,1>::Construct ) --, SchemaEntry("ifccartesiantransformationoperator2d",&STEP::ObjectHelper<IfcCartesianTransformationOperator2D,0>::Construct ) --, SchemaEntry("ifccartesiantransformationoperator2dnonuniform",&STEP::ObjectHelper<IfcCartesianTransformationOperator2DnonUniform,1>::Construct ) --, SchemaEntry("ifcclassificationnotationfacet",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcrelassociatesapproval",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcdraughtingpredefinedcurvefont",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcstructuralloadsingleforce",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcstructuralloadsingleforcewarping",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifccurvestylefontandscaling",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcvirtualelement",&STEP::ObjectHelper<IfcVirtualElement,0>::Construct ) --, SchemaEntry("ifcrightcircularcylinder",&STEP::ObjectHelper<IfcRightCircularCylinder,2>::Construct ) --, SchemaEntry("ifcoutlettype",&STEP::ObjectHelper<IfcOutletType,1>::Construct ) --, SchemaEntry("ifcreldecomposes",&STEP::ObjectHelper<IfcRelDecomposes,2>::Construct ) --, SchemaEntry("ifcrelnests",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifccovering",&STEP::ObjectHelper<IfcCovering,1>::Construct ) --, SchemaEntry("ifcexternallydefinedsymbol",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcirregulartimeseries",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcpolyline",&STEP::ObjectHelper<IfcPolyline,1>::Construct ) --, SchemaEntry("ifcpath",&STEP::ObjectHelper<IfcPath,1>::Construct ) --, SchemaEntry("ifcelementcomponent",&STEP::ObjectHelper<IfcElementComponent,0>::Construct ) --, SchemaEntry("ifcfastener",&STEP::ObjectHelper<IfcFastener,0>::Construct ) --, SchemaEntry("ifcmappeditem",&STEP::ObjectHelper<IfcMappedItem,2>::Construct ) --, SchemaEntry("ifcmetric",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcdocumentreference",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcsectionproperties",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcrectangularpyramid",&STEP::ObjectHelper<IfcRectangularPyramid,3>::Construct ) --, SchemaEntry("ifcrelreferencedinspatialstructure",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifccrewresource",&STEP::ObjectHelper<IfcCrewResource,0>::Construct ) --, SchemaEntry("ifcnamedunit",&STEP::ObjectHelper<IfcNamedUnit,2>::Construct ) --, SchemaEntry("ifccontextdependentunit",&STEP::ObjectHelper<IfcContextDependentUnit,1>::Construct ) --, SchemaEntry("ifcunitaryequipmenttype",&STEP::ObjectHelper<IfcUnitaryEquipmentType,1>::Construct ) --, SchemaEntry("ifcroof",&STEP::ObjectHelper<IfcRoof,1>::Construct ) --, SchemaEntry("ifcrelassignstasks",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcstructuralmember",&STEP::ObjectHelper<IfcStructuralMember,0>::Construct ) --, SchemaEntry("ifcrelconnectsports",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcstylemodel",&STEP::ObjectHelper<IfcStyleModel,0>::Construct ) --, SchemaEntry("ifcstyledrepresentation",&STEP::ObjectHelper<IfcStyledRepresentation,0>::Construct ) --, SchemaEntry("ifcspatialstructureelement",&STEP::ObjectHelper<IfcSpatialStructureElement,2>::Construct ) --, SchemaEntry("ifcbuilding",&STEP::ObjectHelper<IfcBuilding,3>::Construct ) --, SchemaEntry("ifcconnectedfaceset",&STEP::ObjectHelper<IfcConnectedFaceSet,1>::Construct ) --, SchemaEntry("ifcopenshell",&STEP::ObjectHelper<IfcOpenShell,0>::Construct ) --, SchemaEntry("ifcfacetedbrep",&STEP::ObjectHelper<IfcFacetedBrep,0>::Construct ) --, SchemaEntry("ifclocaltime",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcmechanicalconcretematerialproperties",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcconic",&STEP::ObjectHelper<IfcConic,1>::Construct ) --, SchemaEntry("ifccoveringtype",&STEP::ObjectHelper<IfcCoveringType,1>::Construct ) --, SchemaEntry("ifcroundedrectangleprofiledef",&STEP::ObjectHelper<IfcRoundedRectangleProfileDef,1>::Construct ) --, SchemaEntry("ifcairterminaltype",&STEP::ObjectHelper<IfcAirTerminalType,1>::Construct ) --, SchemaEntry("ifcflowmovingdevicetype",&STEP::ObjectHelper<IfcFlowMovingDeviceType,0>::Construct ) --, SchemaEntry("ifccompressortype",&STEP::ObjectHelper<IfcCompressorType,1>::Construct ) --, SchemaEntry("ifcwindowpanelproperties",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcpredefinedsymbol",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcpredefinedterminatorsymbol",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcishapeprofiledef",&STEP::ObjectHelper<IfcIShapeProfileDef,5>::Construct ) --, SchemaEntry("ifcasymmetricishapeprofiledef",&STEP::ObjectHelper<IfcAsymmetricIShapeProfileDef,4>::Construct ) --, SchemaEntry("ifccontrollertype",&STEP::ObjectHelper<IfcControllerType,1>::Construct ) --, SchemaEntry("ifcrailing",&STEP::ObjectHelper<IfcRailing,1>::Construct ) --, SchemaEntry("ifcgroup",&STEP::ObjectHelper<IfcGroup,0>::Construct ) --, SchemaEntry("ifcasset",&STEP::ObjectHelper<IfcAsset,9>::Construct ) --, SchemaEntry("ifcmaterialdefinitionrepresentation",&STEP::ObjectHelper<IfcMaterialDefinitionRepresentation,1>::Construct ) --, SchemaEntry("ifccurvestylefontpattern",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcapprovalpropertyrelationship",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcrailingtype",&STEP::ObjectHelper<IfcRailingType,1>::Construct ) --, SchemaEntry("ifcwall",&STEP::ObjectHelper<IfcWall,0>::Construct ) --, SchemaEntry("ifcclassificationitem",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcstructuralpointconnection",&STEP::ObjectHelper<IfcStructuralPointConnection,0>::Construct ) --, SchemaEntry("ifcconnectiongeometry",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcconnectionpointgeometry",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifctimeseriesvalue",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcpropertylistvalue",&STEP::ObjectHelper<IfcPropertyListValue,2>::Construct ) --, SchemaEntry("ifcfurniturestandard",&STEP::ObjectHelper<IfcFurnitureStandard,0>::Construct ) --, SchemaEntry("ifcrelschedulescostitems",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcelectricgeneratortype",&STEP::ObjectHelper<IfcElectricGeneratorType,1>::Construct ) --, SchemaEntry("ifcdoor",&STEP::ObjectHelper<IfcDoor,2>::Construct ) --, SchemaEntry("ifcstyleditem",&STEP::ObjectHelper<IfcStyledItem,3>::Construct ) --, SchemaEntry("ifcannotationoccurrence",&STEP::ObjectHelper<IfcAnnotationOccurrence,0>::Construct ) --, SchemaEntry("ifcannotationsymboloccurrence",&STEP::ObjectHelper<IfcAnnotationSymbolOccurrence,0>::Construct ) --, SchemaEntry("ifcarbitraryclosedprofiledef",&STEP::ObjectHelper<IfcArbitraryClosedProfileDef,1>::Construct ) --, SchemaEntry("ifcarbitraryprofiledefwithvoids",&STEP::ObjectHelper<IfcArbitraryProfileDefWithVoids,1>::Construct ) --, SchemaEntry("ifcline",&STEP::ObjectHelper<IfcLine,2>::Construct ) --, SchemaEntry("ifcmateriallayerset",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcflowsegmenttype",&STEP::ObjectHelper<IfcFlowSegmentType,0>::Construct ) --, SchemaEntry("ifcairterminalboxtype",&STEP::ObjectHelper<IfcAirTerminalBoxType,1>::Construct ) --, SchemaEntry("ifcrelconnectsstructuralmember",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcpropertysinglevalue",&STEP::ObjectHelper<IfcPropertySingleValue,2>::Construct ) --, SchemaEntry("ifcalarmtype",&STEP::ObjectHelper<IfcAlarmType,1>::Construct ) --, SchemaEntry("ifcellipseprofiledef",&STEP::ObjectHelper<IfcEllipseProfileDef,2>::Construct ) --, SchemaEntry("ifcstair",&STEP::ObjectHelper<IfcStair,1>::Construct ) --, SchemaEntry("ifcpredefinedtextfont",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifctextstylefontmodel",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcsurfacestyleshading",&STEP::ObjectHelper<IfcSurfaceStyleShading,1>::Construct ) --, SchemaEntry("ifcpumptype",&STEP::ObjectHelper<IfcPumpType,1>::Construct ) --, SchemaEntry("ifcdefinedsymbol",&STEP::ObjectHelper<IfcDefinedSymbol,2>::Construct ) --, SchemaEntry("ifcclassificationitemrelationship",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcgeneralmaterialproperties",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcelementcomponenttype",&STEP::ObjectHelper<IfcElementComponentType,0>::Construct ) --, SchemaEntry("ifcfastenertype",&STEP::ObjectHelper<IfcFastenerType,0>::Construct ) --, SchemaEntry("ifcmechanicalfastenertype",&STEP::ObjectHelper<IfcMechanicalFastenerType,0>::Construct ) --, SchemaEntry("ifcpermeablecoveringproperties",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcflowfitting",&STEP::ObjectHelper<IfcFlowFitting,0>::Construct ) --, SchemaEntry("ifcapproval",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcshapeaspect",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcconstraintclassificationrelationship",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifclightsourcedirectional",&STEP::ObjectHelper<IfcLightSourceDirectional,1>::Construct ) --, SchemaEntry("ifcsurfacestyle",&STEP::ObjectHelper<IfcSurfaceStyle,2>::Construct ) --, SchemaEntry("ifcrelconnectsstructuralactivity",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcrelassociatesprofileproperties",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcannotationsurface",&STEP::ObjectHelper<IfcAnnotationSurface,2>::Construct ) --, SchemaEntry("ifcfuelproperties",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcflowcontroller",&STEP::ObjectHelper<IfcFlowController,0>::Construct ) --, SchemaEntry("ifcfailureconnectioncondition",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcbuildingstorey",&STEP::ObjectHelper<IfcBuildingStorey,1>::Construct ) --, SchemaEntry("ifcworkcontrol",&STEP::ObjectHelper<IfcWorkControl,10>::Construct ) --, SchemaEntry("ifcworkschedule",&STEP::ObjectHelper<IfcWorkSchedule,0>::Construct ) --, SchemaEntry("ifctable",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcductsegmenttype",&STEP::ObjectHelper<IfcDuctSegmentType,1>::Construct ) --, SchemaEntry("ifcstructuralsteelprofileproperties",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcdraughtingpredefinedtextfont",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcface",&STEP::ObjectHelper<IfcFace,1>::Construct ) --, SchemaEntry("ifcstructuralsurfacemember",&STEP::ObjectHelper<IfcStructuralSurfaceMember,2>::Construct ) --, SchemaEntry("ifcstructuralsurfacemembervarying",&STEP::ObjectHelper<IfcStructuralSurfaceMemberVarying,2>::Construct ) --, SchemaEntry("ifcfacesurface",&STEP::ObjectHelper<IfcFaceSurface,2>::Construct ) --, SchemaEntry("ifcclassification",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcmateriallist",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifccostschedule",&STEP::ObjectHelper<IfcCostSchedule,8>::Construct ) --, SchemaEntry("ifccoordinateduniversaltimeoffset",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcplanarextent",&STEP::ObjectHelper<IfcPlanarExtent,2>::Construct ) --, SchemaEntry("ifcplanarbox",&STEP::ObjectHelper<IfcPlanarBox,1>::Construct ) --, SchemaEntry("ifcfillareastyle",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcsectionreinforcementproperties",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifccolourspecification",&STEP::ObjectHelper<IfcColourSpecification,1>::Construct ) --, SchemaEntry("ifcvector",&STEP::ObjectHelper<IfcVector,2>::Construct ) --, SchemaEntry("ifcbeam",&STEP::ObjectHelper<IfcBeam,0>::Construct ) --, SchemaEntry("ifccolourrgb",&STEP::ObjectHelper<IfcColourRgb,3>::Construct ) --, SchemaEntry("ifcstructuralplanaraction",&STEP::ObjectHelper<IfcStructuralPlanarAction,1>::Construct ) --, SchemaEntry("ifcstructuralplanaractionvarying",&STEP::ObjectHelper<IfcStructuralPlanarActionVarying,2>::Construct ) --, SchemaEntry("ifcsite",&STEP::ObjectHelper<IfcSite,5>::Construct ) --, SchemaEntry("ifcdiscreteaccessorytype",&STEP::ObjectHelper<IfcDiscreteAccessoryType,0>::Construct ) --, SchemaEntry("ifcvibrationisolatortype",&STEP::ObjectHelper<IfcVibrationIsolatorType,1>::Construct ) --, SchemaEntry("ifcevaporativecoolertype",&STEP::ObjectHelper<IfcEvaporativeCoolerType,1>::Construct ) --, SchemaEntry("ifcdistributionchamberelementtype",&STEP::ObjectHelper<IfcDistributionChamberElementType,1>::Construct ) --, SchemaEntry("ifcfeatureelementaddition",&STEP::ObjectHelper<IfcFeatureElementAddition,0>::Construct ) --, SchemaEntry("ifcrelassignstoresource",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcstructureddimensioncallout",&STEP::ObjectHelper<IfcStructuredDimensionCallout,0>::Construct ) --, SchemaEntry("ifccoolingtowertype",&STEP::ObjectHelper<IfcCoolingTowerType,1>::Construct ) --, SchemaEntry("ifccenterlineprofiledef",&STEP::ObjectHelper<IfcCenterLineProfileDef,1>::Construct ) --, SchemaEntry("ifctexturevertex",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcorganization",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcwindowstyle",&STEP::ObjectHelper<IfcWindowStyle,4>::Construct ) --, SchemaEntry("ifclightsourcegoniometric",&STEP::ObjectHelper<IfcLightSourceGoniometric,6>::Construct ) --, SchemaEntry("ifcribplateprofileproperties",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifctransformertype",&STEP::ObjectHelper<IfcTransformerType,1>::Construct ) --, SchemaEntry("ifcmembertype",&STEP::ObjectHelper<IfcMemberType,1>::Construct ) --, SchemaEntry("ifcsurfaceoflinearextrusion",&STEP::ObjectHelper<IfcSurfaceOfLinearExtrusion,2>::Construct ) --, SchemaEntry("ifcmotorconnectiontype",&STEP::ObjectHelper<IfcMotorConnectionType,1>::Construct ) --, SchemaEntry("ifcflowtreatmentdevicetype",&STEP::ObjectHelper<IfcFlowTreatmentDeviceType,0>::Construct ) --, SchemaEntry("ifcductsilencertype",&STEP::ObjectHelper<IfcDuctSilencerType,1>::Construct ) --, SchemaEntry("ifcwindowliningproperties",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcfurnishingelementtype",&STEP::ObjectHelper<IfcFurnishingElementType,0>::Construct ) --, SchemaEntry("ifcsystemfurnitureelementtype",&STEP::ObjectHelper<IfcSystemFurnitureElementType,0>::Construct ) --, SchemaEntry("ifcconnectionpointeccentricity",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcwasteterminaltype",&STEP::ObjectHelper<IfcWasteTerminalType,1>::Construct ) --, SchemaEntry("ifcbsplinecurve",&STEP::ObjectHelper<IfcBSplineCurve,5>::Construct ) --, SchemaEntry("ifcbeziercurve",&STEP::ObjectHelper<IfcBezierCurve,0>::Construct ) --, SchemaEntry("ifcdocumentinformationrelationship",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcactuatortype",&STEP::ObjectHelper<IfcActuatorType,1>::Construct ) --, SchemaEntry("ifcdistributioncontrolelement",&STEP::ObjectHelper<IfcDistributionControlElement,1>::Construct ) --, SchemaEntry("ifcannotation",&STEP::ObjectHelper<IfcAnnotation,0>::Construct ) --, SchemaEntry("ifcrelassociatesdocument",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcdoorliningproperties",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcshellbasedsurfacemodel",&STEP::ObjectHelper<IfcShellBasedSurfaceModel,1>::Construct ) --, SchemaEntry("ifcactionrequest",&STEP::ObjectHelper<IfcActionRequest,1>::Construct ) --, SchemaEntry("ifcextrudedareasolid",&STEP::ObjectHelper<IfcExtrudedAreaSolid,2>::Construct ) --, SchemaEntry("ifcsystem",&STEP::ObjectHelper<IfcSystem,0>::Construct ) --, SchemaEntry("ifcfillareastylehatching",&STEP::ObjectHelper<IfcFillAreaStyleHatching,5>::Construct ) --, SchemaEntry("ifcrelvoidselement",&STEP::ObjectHelper<IfcRelVoidsElement,2>::Construct ) --, SchemaEntry("ifcrelconnectspathelements",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcrelspaceboundary",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcsurfacecurvesweptareasolid",&STEP::ObjectHelper<IfcSurfaceCurveSweptAreaSolid,4>::Construct ) --, SchemaEntry("ifccartesiantransformationoperator3dnonuniform",&STEP::ObjectHelper<IfcCartesianTransformationOperator3DnonUniform,2>::Construct ) --, SchemaEntry("ifcrelinteractionrequirements",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifccurtainwalltype",&STEP::ObjectHelper<IfcCurtainWallType,1>::Construct ) --, SchemaEntry("ifcquantitylength",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcequipmentstandard",&STEP::ObjectHelper<IfcEquipmentStandard,0>::Construct ) --, SchemaEntry("ifcflowstoragedevicetype",&STEP::ObjectHelper<IfcFlowStorageDeviceType,0>::Construct ) --, SchemaEntry("ifcvirtualgridintersection",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcdiameterdimension",&STEP::ObjectHelper<IfcDiameterDimension,0>::Construct ) --, SchemaEntry("ifcswitchingdevicetype",&STEP::ObjectHelper<IfcSwitchingDeviceType,1>::Construct ) --, SchemaEntry("ifcaddress",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifctelecomaddress",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcwindow",&STEP::ObjectHelper<IfcWindow,2>::Construct ) --, SchemaEntry("ifcmechanicalsteelmaterialproperties",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcflowtreatmentdevice",&STEP::ObjectHelper<IfcFlowTreatmentDevice,0>::Construct ) --, SchemaEntry("ifcrelservicesbuildings",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcchillertype",&STEP::ObjectHelper<IfcChillerType,1>::Construct ) --, SchemaEntry("ifcrelassignstoproduct",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcrectanglehollowprofiledef",&STEP::ObjectHelper<IfcRectangleHollowProfileDef,3>::Construct ) --, SchemaEntry("ifcenergyproperties",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcboxedhalfspace",&STEP::ObjectHelper<IfcBoxedHalfSpace,1>::Construct ) --, SchemaEntry("ifcaxis2placement2d",&STEP::ObjectHelper<IfcAxis2Placement2D,1>::Construct ) --, SchemaEntry("ifcspaceprogram",&STEP::ObjectHelper<IfcSpaceProgram,5>::Construct ) --, SchemaEntry("ifcpoint",&STEP::ObjectHelper<IfcPoint,0>::Construct ) --, SchemaEntry("ifccartesianpoint",&STEP::ObjectHelper<IfcCartesianPoint,1>::Construct ) --, SchemaEntry("ifcboundedsurface",&STEP::ObjectHelper<IfcBoundedSurface,0>::Construct ) --, SchemaEntry("ifcloop",&STEP::ObjectHelper<IfcLoop,0>::Construct ) --, SchemaEntry("ifcpolyloop",&STEP::ObjectHelper<IfcPolyLoop,1>::Construct ) --, SchemaEntry("ifcpredefinedpointmarkersymbol",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcterminatorsymbol",&STEP::ObjectHelper<IfcTerminatorSymbol,1>::Construct ) --, SchemaEntry("ifcdimensioncurveterminator",&STEP::ObjectHelper<IfcDimensionCurveTerminator,1>::Construct ) --, SchemaEntry("ifcrelprojectselement",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifctrapeziumprofiledef",&STEP::ObjectHelper<IfcTrapeziumProfileDef,4>::Construct ) --, SchemaEntry("ifcrepresentationcontext",&STEP::ObjectHelper<IfcRepresentationContext,2>::Construct ) --, SchemaEntry("ifcgeometricrepresentationcontext",&STEP::ObjectHelper<IfcGeometricRepresentationContext,4>::Construct ) --, SchemaEntry("ifctextstylewithboxcharacteristics",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifccurveboundedplane",&STEP::ObjectHelper<IfcCurveBoundedPlane,3>::Construct ) --, SchemaEntry("ifcquantitycount",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifctimeseriesreferencerelationship",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcstructuralloadtemperature",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcsiunit",&STEP::ObjectHelper<IfcSIUnit,2>::Construct ) --, SchemaEntry("ifcstructuralreaction",&STEP::ObjectHelper<IfcStructuralReaction,0>::Construct ) --, SchemaEntry("ifcstructuralpointreaction",&STEP::ObjectHelper<IfcStructuralPointReaction,0>::Construct ) --, SchemaEntry("ifcaxis1placement",&STEP::ObjectHelper<IfcAxis1Placement,1>::Construct ) --, SchemaEntry("ifcreinforcementdefinitionproperties",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcelectricappliancetype",&STEP::ObjectHelper<IfcElectricApplianceType,1>::Construct ) --, SchemaEntry("ifcsensortype",&STEP::ObjectHelper<IfcSensorType,1>::Construct ) --, SchemaEntry("ifcfurnishingelement",&STEP::ObjectHelper<IfcFurnishingElement,0>::Construct ) --, SchemaEntry("ifcprotectivedevicetype",&STEP::ObjectHelper<IfcProtectiveDeviceType,1>::Construct ) --, SchemaEntry("ifczshapeprofiledef",&STEP::ObjectHelper<IfcZShapeProfileDef,6>::Construct ) --, SchemaEntry("ifcscheduletimecontrol",&STEP::ObjectHelper<IfcScheduleTimeControl,18>::Construct ) --, SchemaEntry("ifcrepresentationmap",&STEP::ObjectHelper<IfcRepresentationMap,2>::Construct ) --, SchemaEntry("ifcclosedshell",&STEP::ObjectHelper<IfcClosedShell,0>::Construct ) --, SchemaEntry("ifcbuildingelementpart",&STEP::ObjectHelper<IfcBuildingElementPart,0>::Construct ) --, SchemaEntry("ifcdraughtingpredefinedcolour",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcpostaladdress",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcblock",&STEP::ObjectHelper<IfcBlock,3>::Construct ) --, SchemaEntry("ifclightfixturetype",&STEP::ObjectHelper<IfcLightFixtureType,1>::Construct ) --, SchemaEntry("ifcopeningelement",&STEP::ObjectHelper<IfcOpeningElement,0>::Construct ) --, SchemaEntry("ifclightsourcespot",&STEP::ObjectHelper<IfcLightSourceSpot,4>::Construct ) --, SchemaEntry("ifctendonanchor",&STEP::ObjectHelper<IfcTendonAnchor,0>::Construct ) --, SchemaEntry("ifcsurfacestylerefraction",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcelectricflowstoragedevicetype",&STEP::ObjectHelper<IfcElectricFlowStorageDeviceType,1>::Construct ) --, SchemaEntry("ifcfluidflowproperties",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcsphere",&STEP::ObjectHelper<IfcSphere,1>::Construct ) --, SchemaEntry("ifcrelassociatesappliedvalue",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcdampertype",&STEP::ObjectHelper<IfcDamperType,1>::Construct ) --, SchemaEntry("ifcprojectorderrecord",&STEP::ObjectHelper<IfcProjectOrderRecord,2>::Construct ) --, SchemaEntry("ifcdimensionalexponents",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcreldefinesbytype",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcdistributionchamberelement",&STEP::ObjectHelper<IfcDistributionChamberElement,0>::Construct ) --, SchemaEntry("ifcmechanicalfastener",&STEP::ObjectHelper<IfcMechanicalFastener,2>::Construct ) --, SchemaEntry("ifcquantityvolume",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcrectangulartrimmedsurface",&STEP::ObjectHelper<IfcRectangularTrimmedSurface,7>::Construct ) --, SchemaEntry("ifcdateandtime",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifczone",&STEP::ObjectHelper<IfcZone,0>::Construct ) --, SchemaEntry("ifcfantype",&STEP::ObjectHelper<IfcFanType,1>::Construct ) --, SchemaEntry("ifcgeometricset",&STEP::ObjectHelper<IfcGeometricSet,1>::Construct ) --, SchemaEntry("ifcfillareastyletiles",&STEP::ObjectHelper<IfcFillAreaStyleTiles,3>::Construct ) --, SchemaEntry("ifcpixeltexture",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifccablesegmenttype",&STEP::ObjectHelper<IfcCableSegmentType,1>::Construct ) --, SchemaEntry("ifcreloverridesproperties",&STEP::ObjectHelper<IfcRelOverridesProperties,1>::Construct ) --, SchemaEntry("ifcmeasurewithunit",&STEP::ObjectHelper<IfcMeasureWithUnit,2>::Construct ) --, SchemaEntry("ifcslabtype",&STEP::ObjectHelper<IfcSlabType,1>::Construct ) --, SchemaEntry("ifcservicelife",&STEP::ObjectHelper<IfcServiceLife,2>::Construct ) --, SchemaEntry("ifcfurnituretype",&STEP::ObjectHelper<IfcFurnitureType,1>::Construct ) --, SchemaEntry("ifccostitem",&STEP::ObjectHelper<IfcCostItem,0>::Construct ) --, SchemaEntry("ifcreinforcingmesh",&STEP::ObjectHelper<IfcReinforcingMesh,8>::Construct ) --, SchemaEntry("ifcextendedmaterialproperties",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcactorrole",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcfacetedbrepwithvoids",&STEP::ObjectHelper<IfcFacetedBrepWithVoids,1>::Construct ) --, SchemaEntry("ifcconstraintaggregationrelationship",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcgasterminaltype",&STEP::ObjectHelper<IfcGasTerminalType,1>::Construct ) --, SchemaEntry("ifcrelconnectswitheccentricity",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcpile",&STEP::ObjectHelper<IfcPile,2>::Construct ) --, SchemaEntry("ifcfillareastyletilesymbolwithstyle",&STEP::ObjectHelper<IfcFillAreaStyleTileSymbolWithStyle,1>::Construct ) --, SchemaEntry("ifcelectricalbaseproperties",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcconstructionmaterialresource",&STEP::ObjectHelper<IfcConstructionMaterialResource,2>::Construct ) --, SchemaEntry("ifcannotationcurveoccurrence",&STEP::ObjectHelper<IfcAnnotationCurveOccurrence,0>::Construct ) --, SchemaEntry("ifcdimensioncurve",&STEP::ObjectHelper<IfcDimensionCurve,0>::Construct ) --, SchemaEntry("ifcgeometriccurveset",&STEP::ObjectHelper<IfcGeometricCurveSet,0>::Construct ) --, SchemaEntry("ifcrelaggregates",&STEP::ObjectHelper<IfcRelAggregates,0>::Construct ) --, SchemaEntry("ifcfacebasedsurfacemodel",&STEP::ObjectHelper<IfcFaceBasedSurfaceModel,1>::Construct ) --, SchemaEntry("ifcenergyconversiondevice",&STEP::ObjectHelper<IfcEnergyConversionDevice,0>::Construct ) --, SchemaEntry("ifcrampflight",&STEP::ObjectHelper<IfcRampFlight,0>::Construct ) --, SchemaEntry("ifcpropertyenumeration",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcvertexloop",&STEP::ObjectHelper<IfcVertexLoop,1>::Construct ) --, SchemaEntry("ifcplate",&STEP::ObjectHelper<IfcPlate,0>::Construct ) --, SchemaEntry("ifcushapeprofiledef",&STEP::ObjectHelper<IfcUShapeProfileDef,8>::Construct ) --, SchemaEntry("ifchygroscopicmaterialproperties",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcfacebound",&STEP::ObjectHelper<IfcFaceBound,2>::Construct ) --, SchemaEntry("ifcfaceouterbound",&STEP::ObjectHelper<IfcFaceOuterBound,0>::Construct ) --, SchemaEntry("ifconedirectionrepeatfactor",&STEP::ObjectHelper<IfcOneDirectionRepeatFactor,1>::Construct ) --, SchemaEntry("ifcboilertype",&STEP::ObjectHelper<IfcBoilerType,1>::Construct ) --, SchemaEntry("ifcconstructionequipmentresource",&STEP::ObjectHelper<IfcConstructionEquipmentResource,0>::Construct ) --, SchemaEntry("ifccomplexproperty",&STEP::ObjectHelper<IfcComplexProperty,2>::Construct ) --, SchemaEntry("ifcfooting",&STEP::ObjectHelper<IfcFooting,1>::Construct ) --, SchemaEntry("ifcopticalmaterialproperties",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcconstructionproductresource",&STEP::ObjectHelper<IfcConstructionProductResource,0>::Construct ) --, SchemaEntry("ifcboundaryedgecondition",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcderivedprofiledef",&STEP::ObjectHelper<IfcDerivedProfileDef,3>::Construct ) --, SchemaEntry("ifcpropertytablevalue",&STEP::ObjectHelper<IfcPropertyTableValue,5>::Construct ) --, SchemaEntry("ifcrelassignstogroup",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcflowmetertype",&STEP::ObjectHelper<IfcFlowMeterType,1>::Construct ) --, SchemaEntry("ifcdoorstyle",&STEP::ObjectHelper<IfcDoorStyle,4>::Construct ) --, SchemaEntry("ifcrelconnectsporttoelement",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcrelassociatesclassification",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcunitassignment",&STEP::ObjectHelper<IfcUnitAssignment,1>::Construct ) --, SchemaEntry("ifcflowterminal",&STEP::ObjectHelper<IfcFlowTerminal,0>::Construct ) --, SchemaEntry("ifccranerailfshapeprofiledef",&STEP::ObjectHelper<IfcCraneRailFShapeProfileDef,9>::Construct ) --, SchemaEntry("ifcflowsegment",&STEP::ObjectHelper<IfcFlowSegment,0>::Construct ) --, SchemaEntry("ifcelementquantity",&STEP::ObjectHelper<IfcElementQuantity,2>::Construct ) --, SchemaEntry("ifcboundarynodecondition",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcboundarynodeconditionwarping",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifccurtainwall",&STEP::ObjectHelper<IfcCurtainWall,0>::Construct ) --, SchemaEntry("ifcdiscreteaccessory",&STEP::ObjectHelper<IfcDiscreteAccessory,0>::Construct ) --, SchemaEntry("ifcgrid",&STEP::ObjectHelper<IfcGrid,3>::Construct ) --, SchemaEntry("ifcsanitaryterminaltype",&STEP::ObjectHelper<IfcSanitaryTerminalType,1>::Construct ) --, SchemaEntry("ifcsoundproperties",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcsubedge",&STEP::ObjectHelper<IfcSubedge,1>::Construct ) --, SchemaEntry("ifctextstyletextmodel",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcfiltertype",&STEP::ObjectHelper<IfcFilterType,1>::Construct ) --, SchemaEntry("ifcsymbolstyle",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifctendon",&STEP::ObjectHelper<IfcTendon,8>::Construct ) --, SchemaEntry("ifcdimensionpair",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcstructuralloadgroup",&STEP::ObjectHelper<IfcStructuralLoadGroup,5>::Construct ) --, SchemaEntry("ifcpresentationstyleassignment",&STEP::ObjectHelper<IfcPresentationStyleAssignment,1>::Construct ) --, SchemaEntry("ifcregulartimeseries",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcstructuralcurvemember",&STEP::ObjectHelper<IfcStructuralCurveMember,1>::Construct ) --, SchemaEntry("ifclightsourceambient",&STEP::ObjectHelper<IfcLightSourceAmbient,0>::Construct ) --, SchemaEntry("ifccondition",&STEP::ObjectHelper<IfcCondition,0>::Construct ) --, SchemaEntry("ifcport",&STEP::ObjectHelper<IfcPort,0>::Construct ) --, SchemaEntry("ifcspace",&STEP::ObjectHelper<IfcSpace,2>::Construct ) --, SchemaEntry("ifcheatexchangertype",&STEP::ObjectHelper<IfcHeatExchangerType,1>::Construct ) --, SchemaEntry("ifctanktype",&STEP::ObjectHelper<IfcTankType,1>::Construct ) --, SchemaEntry("ifcinventory",&STEP::ObjectHelper<IfcInventory,6>::Construct ) --, SchemaEntry("ifctextstyle",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcappliedvaluerelationship",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcsoundvalue",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifctransportelementtype",&STEP::ObjectHelper<IfcTransportElementType,1>::Construct ) --, SchemaEntry("ifcairtoairheatrecoverytype",&STEP::ObjectHelper<IfcAirToAirHeatRecoveryType,1>::Construct ) --, SchemaEntry("ifcstairflight",&STEP::ObjectHelper<IfcStairFlight,4>::Construct ) --, SchemaEntry("ifcelectricalelement",&STEP::ObjectHelper<IfcElectricalElement,0>::Construct ) --, SchemaEntry("ifclightintensitydistribution",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcclassificationreference",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcsurfacestylewithtextures",&STEP::ObjectHelper<IfcSurfaceStyleWithTextures,1>::Construct ) --, SchemaEntry("ifcboundingbox",&STEP::ObjectHelper<IfcBoundingBox,4>::Construct ) --, SchemaEntry("ifcapplication",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcwalltype",&STEP::ObjectHelper<IfcWallType,1>::Construct ) --, SchemaEntry("ifcmove",&STEP::ObjectHelper<IfcMove,3>::Construct ) --, SchemaEntry("ifccircle",&STEP::ObjectHelper<IfcCircle,1>::Construct ) --, SchemaEntry("ifcoffsetcurve2d",&STEP::ObjectHelper<IfcOffsetCurve2D,3>::Construct ) --, SchemaEntry("ifcmateriallayersetusage",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcpointoncurve",&STEP::ObjectHelper<IfcPointOnCurve,2>::Construct ) --, SchemaEntry("ifcstructuralresultgroup",&STEP::ObjectHelper<IfcStructuralResultGroup,3>::Construct ) --, SchemaEntry("ifcsectionedspine",&STEP::ObjectHelper<IfcSectionedSpine,3>::Construct ) --, SchemaEntry("ifcslab",&STEP::ObjectHelper<IfcSlab,1>::Construct ) --, SchemaEntry("ifcconnectionportgeometry",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcquantityweight",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcrelassociatesmaterial",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcvertex",&STEP::ObjectHelper<IfcVertex,0>::Construct ) --, SchemaEntry("ifcvertexpoint",&STEP::ObjectHelper<IfcVertexPoint,1>::Construct ) --, SchemaEntry("ifcreferencesvaluedocument",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcpersonandorganization",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcrelflowcontrolelements",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcrelassignstoprocess",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcstructurallinearaction",&STEP::ObjectHelper<IfcStructuralLinearAction,1>::Construct ) --, SchemaEntry("ifcstructurallinearactionvarying",&STEP::ObjectHelper<IfcStructuralLinearActionVarying,2>::Construct ) --, SchemaEntry("ifcbuildingelementproxytype",&STEP::ObjectHelper<IfcBuildingElementProxyType,1>::Construct ) --, SchemaEntry("ifcprojectionelement",&STEP::ObjectHelper<IfcProjectionElement,0>::Construct ) --, SchemaEntry("ifcderivedunit",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcapprovalactorrelationship",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcconversionbasedunit",&STEP::ObjectHelper<IfcConversionBasedUnit,2>::Construct ) --, SchemaEntry("ifcmaterial",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcgeometricrepresentationsubcontext",&STEP::ObjectHelper<IfcGeometricRepresentationSubContext,4>::Construct ) --, SchemaEntry("ifcannotationsurfaceoccurrence",&STEP::ObjectHelper<IfcAnnotationSurfaceOccurrence,0>::Construct ) --, SchemaEntry("ifcpredefineddimensionsymbol",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcroundededgefeature",&STEP::ObjectHelper<IfcRoundedEdgeFeature,1>::Construct ) --, SchemaEntry("ifcrelcoversbldgelements",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcelectricdistributionpoint",&STEP::ObjectHelper<IfcElectricDistributionPoint,2>::Construct ) --, SchemaEntry("ifccablecarriersegmenttype",&STEP::ObjectHelper<IfcCableCarrierSegmentType,1>::Construct ) --, SchemaEntry("ifcstructuralloadlinearforce",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcgridaxis",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcirregulartimeseriesvalue",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcwallstandardcase",&STEP::ObjectHelper<IfcWallStandardCase,0>::Construct ) --, SchemaEntry("ifcreloccupiesspaces",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcderivedunitelement",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifccsgsolid",&STEP::ObjectHelper<IfcCsgSolid,1>::Construct ) --, SchemaEntry("ifcbeamtype",&STEP::ObjectHelper<IfcBeamType,1>::Construct ) --, SchemaEntry("ifcannotationfillarea",&STEP::ObjectHelper<IfcAnnotationFillArea,2>::Construct ) --, SchemaEntry("ifcrelaxation",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcstructuralcurvemembervarying",&STEP::ObjectHelper<IfcStructuralCurveMemberVarying,0>::Construct ) --, SchemaEntry("ifcpointonsurface",&STEP::ObjectHelper<IfcPointOnSurface,3>::Construct ) --, SchemaEntry("ifcpropertydependencyrelationship",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcvertexbasedtexturemap",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcorderaction",&STEP::ObjectHelper<IfcOrderAction,1>::Construct ) --, SchemaEntry("ifclibraryreference",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcedgeloop",&STEP::ObjectHelper<IfcEdgeLoop,1>::Construct ) --, SchemaEntry("ifcannotationfillareaoccurrence",&STEP::ObjectHelper<IfcAnnotationFillAreaOccurrence,2>::Construct ) --, SchemaEntry("ifcrelconnectsstructuralelement",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcworkplan",&STEP::ObjectHelper<IfcWorkPlan,0>::Construct ) --, SchemaEntry("ifcellipse",&STEP::ObjectHelper<IfcEllipse,2>::Construct ) --, SchemaEntry("ifcproductdefinitionshape",&STEP::ObjectHelper<IfcProductDefinitionShape,0>::Construct ) --, SchemaEntry("ifcprojectioncurve",&STEP::ObjectHelper<IfcProjectionCurve,0>::Construct ) --, SchemaEntry("ifcelectricalcircuit",&STEP::ObjectHelper<IfcElectricalCircuit,0>::Construct ) --, SchemaEntry("ifcrationalbeziercurve",&STEP::ObjectHelper<IfcRationalBezierCurve,1>::Construct ) --, SchemaEntry("ifcstructuralpointaction",&STEP::ObjectHelper<IfcStructuralPointAction,0>::Construct ) --, SchemaEntry("ifcservicelifefactor",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcthermalmaterialproperties",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifctexturecoordinategenerator",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcpipesegmenttype",&STEP::ObjectHelper<IfcPipeSegmentType,1>::Construct ) --, SchemaEntry("ifctwodirectionrepeatfactor",&STEP::ObjectHelper<IfcTwoDirectionRepeatFactor,1>::Construct ) --, SchemaEntry("ifcshaperepresentation",&STEP::ObjectHelper<IfcShapeRepresentation,0>::Construct ) --, SchemaEntry("ifcpropertyset",&STEP::ObjectHelper<IfcPropertySet,1>::Construct ) --, SchemaEntry("ifcsurfacestylerendering",&STEP::ObjectHelper<IfcSurfaceStyleRendering,8>::Construct ) --, SchemaEntry("ifcdistributionport",&STEP::ObjectHelper<IfcDistributionPort,1>::Construct ) --, SchemaEntry("ifcimagetexture",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcpipefittingtype",&STEP::ObjectHelper<IfcPipeFittingType,1>::Construct ) --, SchemaEntry("ifctransportelement",&STEP::ObjectHelper<IfcTransportElement,3>::Construct ) --, SchemaEntry("ifcannotationtextoccurrence",&STEP::ObjectHelper<IfcAnnotationTextOccurrence,0>::Construct ) --, SchemaEntry("ifcconnectionsurfacegeometry",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcstructuralanalysismodel",&STEP::ObjectHelper<IfcStructuralAnalysisModel,4>::Construct ) --, SchemaEntry("ifcconnectioncurvegeometry",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcconditioncriterion",&STEP::ObjectHelper<IfcConditionCriterion,2>::Construct ) --, SchemaEntry("ifcwaterproperties",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifcmateriallayer",&STEP::ObjectHelper<NotImplemented,0>::Construct ) --, SchemaEntry("ifccostvalue",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -- -- }; --} -- --// ----------------------------------------------------------------------------------------------------------- --void IFC::GetSchema(EXPRESS::ConversionSchema& out) --{ -- out = EXPRESS::ConversionSchema(schema_raw); --} -- --namespace STEP { -- --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<NotImplemented>(const STEP::DB& db, const LIST& params, NotImplemented* in) --{ -- return 0; --} -- -- -- --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcRoot>(const DB& db, const LIST& params, IfcRoot* in) --{ -- size_t base = 0; -- if (params.GetSize() < 4) { throw STEP::TypeError("expected 4 arguments to IfcRoot"); } do { // convert the 'GlobalId' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcRoot,4>::aux_is_derived[0]=true; break; } -- try { GenericConvert( in->GlobalId, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcRoot to be a `IfcGloballyUniqueId`")); } -- } while(0); -- do { // convert the 'OwnerHistory' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcRoot,4>::aux_is_derived[1]=true; break; } -- try { GenericConvert( in->OwnerHistory, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 1 to IfcRoot to be a `IfcOwnerHistory`")); } -- } while(0); -- do { // convert the 'Name' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcRoot,4>::aux_is_derived[2]=true; break; } -- if (dynamic_cast<const UNSET*>(&*arg)) break; -- try { GenericConvert( in->Name, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 2 to IfcRoot to be a `IfcLabel`")); } -- } while(0); -- do { // convert the 'Description' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcRoot,4>::aux_is_derived[3]=true; break; } -- if (dynamic_cast<const UNSET*>(&*arg)) break; -- try { GenericConvert( in->Description, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 3 to IfcRoot to be a `IfcText`")); } -- } while(0); -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcObjectDefinition>(const DB& db, const LIST& params, IfcObjectDefinition* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcRoot*>(in)); -- if (params.GetSize() < 4) { throw STEP::TypeError("expected 4 arguments to IfcObjectDefinition"); } return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcTypeObject>(const DB& db, const LIST& params, IfcTypeObject* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcObjectDefinition*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcTypeProduct>(const DB& db, const LIST& params, IfcTypeProduct* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcTypeObject*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcElementType>(const DB& db, const LIST& params, IfcElementType* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcTypeProduct*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcDistributionElementType>(const DB& db, const LIST& params, IfcDistributionElementType* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcElementType*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcDistributionFlowElementType>(const DB& db, const LIST& params, IfcDistributionFlowElementType* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcDistributionElementType*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcFlowControllerType>(const DB& db, const LIST& params, IfcFlowControllerType* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcDistributionFlowElementType*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcElectricTimeControlType>(const DB& db, const LIST& params, IfcElectricTimeControlType* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcFlowControllerType*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcRepresentation>(const DB& db, const LIST& params, IfcRepresentation* in) --{ -- size_t base = 0; -- if (params.GetSize() < 4) { throw STEP::TypeError("expected 4 arguments to IfcRepresentation"); } do { // convert the 'ContextOfItems' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcRepresentation,4>::aux_is_derived[0]=true; break; } -- try { GenericConvert( in->ContextOfItems, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcRepresentation to be a `IfcRepresentationContext`")); } -- } while(0); -- do { // convert the 'RepresentationIdentifier' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcRepresentation,4>::aux_is_derived[1]=true; break; } -- if (dynamic_cast<const UNSET*>(&*arg)) break; -- try { GenericConvert( in->RepresentationIdentifier, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 1 to IfcRepresentation to be a `IfcLabel`")); } -- } while(0); -- do { // convert the 'RepresentationType' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcRepresentation,4>::aux_is_derived[2]=true; break; } -- if (dynamic_cast<const UNSET*>(&*arg)) break; -- try { GenericConvert( in->RepresentationType, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 2 to IfcRepresentation to be a `IfcLabel`")); } -- } while(0); -- do { // convert the 'Items' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcRepresentation,4>::aux_is_derived[3]=true; break; } -- try { GenericConvert( in->Items, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 3 to IfcRepresentation to be a `SET [1:?] OF IfcRepresentationItem`")); } -- } while(0); -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcShapeModel>(const DB& db, const LIST& params, IfcShapeModel* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcRepresentation*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcTopologyRepresentation>(const DB& db, const LIST& params, IfcTopologyRepresentation* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcShapeModel*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcRelationship>(const DB& db, const LIST& params, IfcRelationship* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcRoot*>(in)); -- if (params.GetSize() < 4) { throw STEP::TypeError("expected 4 arguments to IfcRelationship"); } return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcRelConnects>(const DB& db, const LIST& params, IfcRelConnects* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcRelationship*>(in)); -- if (params.GetSize() < 4) { throw STEP::TypeError("expected 4 arguments to IfcRelConnects"); } return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcFlowFittingType>(const DB& db, const LIST& params, IfcFlowFittingType* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcDistributionFlowElementType*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcCableCarrierFittingType>(const DB& db, const LIST& params, IfcCableCarrierFittingType* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcFlowFittingType*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcEnergyConversionDeviceType>(const DB& db, const LIST& params, IfcEnergyConversionDeviceType* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcDistributionFlowElementType*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcCoilType>(const DB& db, const LIST& params, IfcCoilType* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcEnergyConversionDeviceType*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcObject>(const DB& db, const LIST& params, IfcObject* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcObjectDefinition*>(in)); -- if (params.GetSize() < 5) { throw STEP::TypeError("expected 5 arguments to IfcObject"); } do { // convert the 'ObjectType' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcObject,1>::aux_is_derived[0]=true; break; } -- if (dynamic_cast<const UNSET*>(&*arg)) break; -- try { GenericConvert( in->ObjectType, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 4 to IfcObject to be a `IfcLabel`")); } -- } while(0); -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcControl>(const DB& db, const LIST& params, IfcControl* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcObject*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcPerformanceHistory>(const DB& db, const LIST& params, IfcPerformanceHistory* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcControl*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcRepresentationItem>(const DB& db, const LIST& params, IfcRepresentationItem* in) --{ -- size_t base = 0; -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcGeometricRepresentationItem>(const DB& db, const LIST& params, IfcGeometricRepresentationItem* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcRepresentationItem*>(in)); -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcTextLiteral>(const DB& db, const LIST& params, IfcTextLiteral* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcGeometricRepresentationItem*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcTextLiteralWithExtent>(const DB& db, const LIST& params, IfcTextLiteralWithExtent* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcTextLiteral*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcProductRepresentation>(const DB& db, const LIST& params, IfcProductRepresentation* in) --{ -- size_t base = 0; -- if (params.GetSize() < 3) { throw STEP::TypeError("expected 3 arguments to IfcProductRepresentation"); } do { // convert the 'Name' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcProductRepresentation,3>::aux_is_derived[0]=true; break; } -- if (dynamic_cast<const UNSET*>(&*arg)) break; -- try { GenericConvert( in->Name, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcProductRepresentation to be a `IfcLabel`")); } -- } while(0); -- do { // convert the 'Description' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcProductRepresentation,3>::aux_is_derived[1]=true; break; } -- if (dynamic_cast<const UNSET*>(&*arg)) break; -- try { GenericConvert( in->Description, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 1 to IfcProductRepresentation to be a `IfcText`")); } -- } while(0); -- do { // convert the 'Representations' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcProductRepresentation,3>::aux_is_derived[2]=true; break; } -- try { GenericConvert( in->Representations, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 2 to IfcProductRepresentation to be a `LIST [1:?] OF IfcRepresentation`")); } -- } while(0); -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcProduct>(const DB& db, const LIST& params, IfcProduct* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcObject*>(in)); -- if (params.GetSize() < 7) { throw STEP::TypeError("expected 7 arguments to IfcProduct"); } do { // convert the 'ObjectPlacement' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcProduct,2>::aux_is_derived[0]=true; break; } -- if (dynamic_cast<const UNSET*>(&*arg)) break; -- try { GenericConvert( in->ObjectPlacement, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 5 to IfcProduct to be a `IfcObjectPlacement`")); } -- } while(0); -- do { // convert the 'Representation' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcProduct,2>::aux_is_derived[1]=true; break; } -- if (dynamic_cast<const UNSET*>(&*arg)) break; -- try { GenericConvert( in->Representation, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 6 to IfcProduct to be a `IfcProductRepresentation`")); } -- } while(0); -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcElement>(const DB& db, const LIST& params, IfcElement* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcProduct*>(in)); -- if (params.GetSize() < 8) { throw STEP::TypeError("expected 8 arguments to IfcElement"); } do { // convert the 'Tag' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcElement,1>::aux_is_derived[0]=true; break; } -- if (dynamic_cast<const UNSET*>(&*arg)) break; -- try { GenericConvert( in->Tag, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 7 to IfcElement to be a `IfcIdentifier`")); } -- } while(0); -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcDistributionElement>(const DB& db, const LIST& params, IfcDistributionElement* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcElement*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcDistributionFlowElement>(const DB& db, const LIST& params, IfcDistributionFlowElement* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcDistributionElement*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcCurve>(const DB& db, const LIST& params, IfcCurve* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcGeometricRepresentationItem*>(in)); -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcBoundedCurve>(const DB& db, const LIST& params, IfcBoundedCurve* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcCurve*>(in)); -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcCompositeCurve>(const DB& db, const LIST& params, IfcCompositeCurve* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcBoundedCurve*>(in)); -- if (params.GetSize() < 2) { throw STEP::TypeError("expected 2 arguments to IfcCompositeCurve"); } do { // convert the 'Segments' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcCompositeCurve,2>::aux_is_derived[0]=true; break; } -- try { GenericConvert( in->Segments, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcCompositeCurve to be a `LIST [1:?] OF IfcCompositeCurveSegment`")); } -- } while(0); -- do { // convert the 'SelfIntersect' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcCompositeCurve,2>::aux_is_derived[1]=true; break; } -- try { GenericConvert( in->SelfIntersect, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 1 to IfcCompositeCurve to be a `LOGICAL`")); } -- } while(0); -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<Ifc2DCompositeCurve>(const DB& db, const LIST& params, Ifc2DCompositeCurve* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcCompositeCurve*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcCartesianTransformationOperator>(const DB& db, const LIST& params, IfcCartesianTransformationOperator* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcGeometricRepresentationItem*>(in)); -- if (params.GetSize() < 4) { throw STEP::TypeError("expected 4 arguments to IfcCartesianTransformationOperator"); } do { // convert the 'Axis1' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcCartesianTransformationOperator,4>::aux_is_derived[0]=true; break; } -- if (dynamic_cast<const UNSET*>(&*arg)) break; -- try { GenericConvert( in->Axis1, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcCartesianTransformationOperator to be a `IfcDirection`")); } -- } while(0); -- do { // convert the 'Axis2' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcCartesianTransformationOperator,4>::aux_is_derived[1]=true; break; } -- if (dynamic_cast<const UNSET*>(&*arg)) break; -- try { GenericConvert( in->Axis2, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 1 to IfcCartesianTransformationOperator to be a `IfcDirection`")); } -- } while(0); -- do { // convert the 'LocalOrigin' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcCartesianTransformationOperator,4>::aux_is_derived[2]=true; break; } -- try { GenericConvert( in->LocalOrigin, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 2 to IfcCartesianTransformationOperator to be a `IfcCartesianPoint`")); } -- } while(0); -- do { // convert the 'Scale' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcCartesianTransformationOperator,4>::aux_is_derived[3]=true; break; } -- if (dynamic_cast<const UNSET*>(&*arg)) break; -- try { GenericConvert( in->Scale, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 3 to IfcCartesianTransformationOperator to be a `REAL`")); } -- } while(0); -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcCartesianTransformationOperator3D>(const DB& db, const LIST& params, IfcCartesianTransformationOperator3D* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcCartesianTransformationOperator*>(in)); -- if (params.GetSize() < 5) { throw STEP::TypeError("expected 5 arguments to IfcCartesianTransformationOperator3D"); } do { // convert the 'Axis3' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcCartesianTransformationOperator3D,1>::aux_is_derived[0]=true; break; } -- if (dynamic_cast<const UNSET*>(&*arg)) break; -- try { GenericConvert( in->Axis3, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 4 to IfcCartesianTransformationOperator3D to be a `IfcDirection`")); } -- } while(0); -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcProperty>(const DB& db, const LIST& params, IfcProperty* in) --{ -- size_t base = 0; -- if (params.GetSize() < 2) { throw STEP::TypeError("expected 2 arguments to IfcProperty"); } do { // convert the 'Name' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcProperty,2>::aux_is_derived[0]=true; break; } -- try { GenericConvert( in->Name, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcProperty to be a `IfcIdentifier`")); } -- } while(0); -- do { // convert the 'Description' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcProperty,2>::aux_is_derived[1]=true; break; } -- if (dynamic_cast<const UNSET*>(&*arg)) break; -- try { GenericConvert( in->Description, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 1 to IfcProperty to be a `IfcText`")); } -- } while(0); -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcSimpleProperty>(const DB& db, const LIST& params, IfcSimpleProperty* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcProperty*>(in)); -- if (params.GetSize() < 2) { throw STEP::TypeError("expected 2 arguments to IfcSimpleProperty"); } return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcPropertyEnumeratedValue>(const DB& db, const LIST& params, IfcPropertyEnumeratedValue* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcSimpleProperty*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcBuildingElementType>(const DB& db, const LIST& params, IfcBuildingElementType* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcElementType*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcStairFlightType>(const DB& db, const LIST& params, IfcStairFlightType* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcBuildingElementType*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcSurface>(const DB& db, const LIST& params, IfcSurface* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcGeometricRepresentationItem*>(in)); -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcElementarySurface>(const DB& db, const LIST& params, IfcElementarySurface* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcSurface*>(in)); -- if (params.GetSize() < 1) { throw STEP::TypeError("expected 1 arguments to IfcElementarySurface"); } do { // convert the 'Position' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcElementarySurface,1>::aux_is_derived[0]=true; break; } -- try { GenericConvert( in->Position, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcElementarySurface to be a `IfcAxis2Placement3D`")); } -- } while(0); -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcPlane>(const DB& db, const LIST& params, IfcPlane* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcElementarySurface*>(in)); -- if (params.GetSize() < 1) { throw STEP::TypeError("expected 1 arguments to IfcPlane"); } return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcBooleanResult>(const DB& db, const LIST& params, IfcBooleanResult* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcGeometricRepresentationItem*>(in)); -- if (params.GetSize() < 3) { throw STEP::TypeError("expected 3 arguments to IfcBooleanResult"); } do { // convert the 'Operator' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcBooleanResult,3>::aux_is_derived[0]=true; break; } -- try { GenericConvert( in->Operator, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcBooleanResult to be a `IfcBooleanOperator`")); } -- } while(0); -- do { // convert the 'FirstOperand' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcBooleanResult,3>::aux_is_derived[1]=true; break; } -- try { GenericConvert( in->FirstOperand, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 1 to IfcBooleanResult to be a `IfcBooleanOperand`")); } -- } while(0); -- do { // convert the 'SecondOperand' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcBooleanResult,3>::aux_is_derived[2]=true; break; } -- try { GenericConvert( in->SecondOperand, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 2 to IfcBooleanResult to be a `IfcBooleanOperand`")); } -- } while(0); -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcBooleanClippingResult>(const DB& db, const LIST& params, IfcBooleanClippingResult* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcBooleanResult*>(in)); -- if (params.GetSize() < 3) { throw STEP::TypeError("expected 3 arguments to IfcBooleanClippingResult"); } return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcSolidModel>(const DB& db, const LIST& params, IfcSolidModel* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcGeometricRepresentationItem*>(in)); -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcManifoldSolidBrep>(const DB& db, const LIST& params, IfcManifoldSolidBrep* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcSolidModel*>(in)); -- if (params.GetSize() < 1) { throw STEP::TypeError("expected 1 arguments to IfcManifoldSolidBrep"); } do { // convert the 'Outer' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcManifoldSolidBrep,1>::aux_is_derived[0]=true; break; } -- try { GenericConvert( in->Outer, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcManifoldSolidBrep to be a `IfcClosedShell`")); } -- } while(0); -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcFlowTerminalType>(const DB& db, const LIST& params, IfcFlowTerminalType* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcDistributionFlowElementType*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcStackTerminalType>(const DB& db, const LIST& params, IfcStackTerminalType* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcFlowTerminalType*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcStructuralItem>(const DB& db, const LIST& params, IfcStructuralItem* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcProduct*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcStructuralConnection>(const DB& db, const LIST& params, IfcStructuralConnection* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcStructuralItem*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcStructuralCurveConnection>(const DB& db, const LIST& params, IfcStructuralCurveConnection* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcStructuralConnection*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcJunctionBoxType>(const DB& db, const LIST& params, IfcJunctionBoxType* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcFlowFittingType*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcPropertyDefinition>(const DB& db, const LIST& params, IfcPropertyDefinition* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcRoot*>(in)); -- if (params.GetSize() < 4) { throw STEP::TypeError("expected 4 arguments to IfcPropertyDefinition"); } return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcPropertySetDefinition>(const DB& db, const LIST& params, IfcPropertySetDefinition* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcPropertyDefinition*>(in)); -- if (params.GetSize() < 4) { throw STEP::TypeError("expected 4 arguments to IfcPropertySetDefinition"); } return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcProcess>(const DB& db, const LIST& params, IfcProcess* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcObject*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcTask>(const DB& db, const LIST& params, IfcTask* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcProcess*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcRelFillsElement>(const DB& db, const LIST& params, IfcRelFillsElement* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcRelConnects*>(in)); -- if (params.GetSize() < 6) { throw STEP::TypeError("expected 6 arguments to IfcRelFillsElement"); } do { // convert the 'RelatingOpeningElement' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- try { GenericConvert( in->RelatingOpeningElement, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 4 to IfcRelFillsElement to be a `IfcOpeningElement`")); } -- } while(0); -- do { // convert the 'RelatedBuildingElement' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- try { GenericConvert( in->RelatedBuildingElement, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 5 to IfcRelFillsElement to be a `IfcElement`")); } -- } while(0); -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcProcedure>(const DB& db, const LIST& params, IfcProcedure* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcProcess*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcProxy>(const DB& db, const LIST& params, IfcProxy* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcProduct*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcResource>(const DB& db, const LIST& params, IfcResource* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcObject*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcConstructionResource>(const DB& db, const LIST& params, IfcConstructionResource* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcResource*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcSubContractResource>(const DB& db, const LIST& params, IfcSubContractResource* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcConstructionResource*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcRelContainedInSpatialStructure>(const DB& db, const LIST& params, IfcRelContainedInSpatialStructure* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcRelConnects*>(in)); -- if (params.GetSize() < 6) { throw STEP::TypeError("expected 6 arguments to IfcRelContainedInSpatialStructure"); } do { // convert the 'RelatedElements' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- try { GenericConvert( in->RelatedElements, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 4 to IfcRelContainedInSpatialStructure to be a `SET [1:?] OF IfcProduct`")); } -- } while(0); -- do { // convert the 'RelatingStructure' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- try { GenericConvert( in->RelatingStructure, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 5 to IfcRelContainedInSpatialStructure to be a `IfcSpatialStructureElement`")); } -- } while(0); -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcTopologicalRepresentationItem>(const DB& db, const LIST& params, IfcTopologicalRepresentationItem* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcRepresentationItem*>(in)); -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcEdge>(const DB& db, const LIST& params, IfcEdge* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcTopologicalRepresentationItem*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcEdgeCurve>(const DB& db, const LIST& params, IfcEdgeCurve* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcEdge*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcPlateType>(const DB& db, const LIST& params, IfcPlateType* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcBuildingElementType*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcObjectPlacement>(const DB& db, const LIST& params, IfcObjectPlacement* in) --{ -- size_t base = 0; -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcGridPlacement>(const DB& db, const LIST& params, IfcGridPlacement* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcObjectPlacement*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcFireSuppressionTerminalType>(const DB& db, const LIST& params, IfcFireSuppressionTerminalType* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcFlowTerminalType*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcFlowStorageDevice>(const DB& db, const LIST& params, IfcFlowStorageDevice* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcDistributionFlowElement*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcSweptSurface>(const DB& db, const LIST& params, IfcSweptSurface* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcSurface*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcSurfaceOfRevolution>(const DB& db, const LIST& params, IfcSurfaceOfRevolution* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcSweptSurface*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcOrientedEdge>(const DB& db, const LIST& params, IfcOrientedEdge* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcEdge*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcDirection>(const DB& db, const LIST& params, IfcDirection* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcGeometricRepresentationItem*>(in)); -- if (params.GetSize() < 1) { throw STEP::TypeError("expected 1 arguments to IfcDirection"); } do { // convert the 'DirectionRatios' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- try { GenericConvert( in->DirectionRatios, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcDirection to be a `LIST [2:3] OF REAL`")); } -- } while(0); -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcProfileDef>(const DB& db, const LIST& params, IfcProfileDef* in) --{ -- size_t base = 0; -- if (params.GetSize() < 2) { throw STEP::TypeError("expected 2 arguments to IfcProfileDef"); } do { // convert the 'ProfileType' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcProfileDef,2>::aux_is_derived[0]=true; break; } -- try { GenericConvert( in->ProfileType, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcProfileDef to be a `IfcProfileTypeEnum`")); } -- } while(0); -- do { // convert the 'ProfileName' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcProfileDef,2>::aux_is_derived[1]=true; break; } -- if (dynamic_cast<const UNSET*>(&*arg)) break; -- try { GenericConvert( in->ProfileName, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 1 to IfcProfileDef to be a `IfcLabel`")); } -- } while(0); -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcParameterizedProfileDef>(const DB& db, const LIST& params, IfcParameterizedProfileDef* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcProfileDef*>(in)); -- if (params.GetSize() < 3) { throw STEP::TypeError("expected 3 arguments to IfcParameterizedProfileDef"); } do { // convert the 'Position' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcParameterizedProfileDef,1>::aux_is_derived[0]=true; break; } -- try { GenericConvert( in->Position, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 2 to IfcParameterizedProfileDef to be a `IfcAxis2Placement2D`")); } -- } while(0); -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcCShapeProfileDef>(const DB& db, const LIST& params, IfcCShapeProfileDef* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcParameterizedProfileDef*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcFeatureElement>(const DB& db, const LIST& params, IfcFeatureElement* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcElement*>(in)); -- if (params.GetSize() < 8) { throw STEP::TypeError("expected 8 arguments to IfcFeatureElement"); } return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcFeatureElementSubtraction>(const DB& db, const LIST& params, IfcFeatureElementSubtraction* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcFeatureElement*>(in)); -- if (params.GetSize() < 8) { throw STEP::TypeError("expected 8 arguments to IfcFeatureElementSubtraction"); } return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcEdgeFeature>(const DB& db, const LIST& params, IfcEdgeFeature* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcFeatureElementSubtraction*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcChamferEdgeFeature>(const DB& db, const LIST& params, IfcChamferEdgeFeature* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcEdgeFeature*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcBuildingElement>(const DB& db, const LIST& params, IfcBuildingElement* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcElement*>(in)); -- if (params.GetSize() < 8) { throw STEP::TypeError("expected 8 arguments to IfcBuildingElement"); } return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcColumn>(const DB& db, const LIST& params, IfcColumn* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcBuildingElement*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcPropertyReferenceValue>(const DB& db, const LIST& params, IfcPropertyReferenceValue* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcSimpleProperty*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcElectricMotorType>(const DB& db, const LIST& params, IfcElectricMotorType* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcEnergyConversionDeviceType*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcSpatialStructureElementType>(const DB& db, const LIST& params, IfcSpatialStructureElementType* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcElementType*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcSpaceType>(const DB& db, const LIST& params, IfcSpaceType* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcSpatialStructureElementType*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcColumnType>(const DB& db, const LIST& params, IfcColumnType* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcBuildingElementType*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcCraneRailAShapeProfileDef>(const DB& db, const LIST& params, IfcCraneRailAShapeProfileDef* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcParameterizedProfileDef*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcCondenserType>(const DB& db, const LIST& params, IfcCondenserType* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcEnergyConversionDeviceType*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcCircleProfileDef>(const DB& db, const LIST& params, IfcCircleProfileDef* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcParameterizedProfileDef*>(in)); -- if (params.GetSize() < 4) { throw STEP::TypeError("expected 4 arguments to IfcCircleProfileDef"); } do { // convert the 'Radius' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcCircleProfileDef,1>::aux_is_derived[0]=true; break; } -- try { GenericConvert( in->Radius, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 3 to IfcCircleProfileDef to be a `IfcPositiveLengthMeasure`")); } -- } while(0); -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcCircleHollowProfileDef>(const DB& db, const LIST& params, IfcCircleHollowProfileDef* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcCircleProfileDef*>(in)); -- if (params.GetSize() < 5) { throw STEP::TypeError("expected 5 arguments to IfcCircleHollowProfileDef"); } do { // convert the 'WallThickness' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- try { GenericConvert( in->WallThickness, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 4 to IfcCircleHollowProfileDef to be a `IfcPositiveLengthMeasure`")); } -- } while(0); -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcPlacement>(const DB& db, const LIST& params, IfcPlacement* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcGeometricRepresentationItem*>(in)); -- if (params.GetSize() < 1) { throw STEP::TypeError("expected 1 arguments to IfcPlacement"); } do { // convert the 'Location' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcPlacement,1>::aux_is_derived[0]=true; break; } -- try { GenericConvert( in->Location, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcPlacement to be a `IfcCartesianPoint`")); } -- } while(0); -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcAxis2Placement3D>(const DB& db, const LIST& params, IfcAxis2Placement3D* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcPlacement*>(in)); -- if (params.GetSize() < 3) { throw STEP::TypeError("expected 3 arguments to IfcAxis2Placement3D"); } do { // convert the 'Axis' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- if (dynamic_cast<const UNSET*>(&*arg)) break; -- try { GenericConvert( in->Axis, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 1 to IfcAxis2Placement3D to be a `IfcDirection`")); } -- } while(0); -- do { // convert the 'RefDirection' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- if (dynamic_cast<const UNSET*>(&*arg)) break; -- try { GenericConvert( in->RefDirection, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 2 to IfcAxis2Placement3D to be a `IfcDirection`")); } -- } while(0); -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcPresentationStyle>(const DB& db, const LIST& params, IfcPresentationStyle* in) --{ -- size_t base = 0; -- if (params.GetSize() < 1) { throw STEP::TypeError("expected 1 arguments to IfcPresentationStyle"); } do { // convert the 'Name' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcPresentationStyle,1>::aux_is_derived[0]=true; break; } -- if (dynamic_cast<const UNSET*>(&*arg)) break; -- try { GenericConvert( in->Name, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcPresentationStyle to be a `IfcLabel`")); } -- } while(0); -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcEquipmentElement>(const DB& db, const LIST& params, IfcEquipmentElement* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcElement*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcCompositeCurveSegment>(const DB& db, const LIST& params, IfcCompositeCurveSegment* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcGeometricRepresentationItem*>(in)); -- if (params.GetSize() < 3) { throw STEP::TypeError("expected 3 arguments to IfcCompositeCurveSegment"); } do { // convert the 'Transition' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- try { GenericConvert( in->Transition, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcCompositeCurveSegment to be a `IfcTransitionCode`")); } -- } while(0); -- do { // convert the 'SameSense' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- try { GenericConvert( in->SameSense, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 1 to IfcCompositeCurveSegment to be a `BOOLEAN`")); } -- } while(0); -- do { // convert the 'ParentCurve' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- try { GenericConvert( in->ParentCurve, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 2 to IfcCompositeCurveSegment to be a `IfcCurve`")); } -- } while(0); -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcRectangleProfileDef>(const DB& db, const LIST& params, IfcRectangleProfileDef* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcParameterizedProfileDef*>(in)); -- if (params.GetSize() < 5) { throw STEP::TypeError("expected 5 arguments to IfcRectangleProfileDef"); } do { // convert the 'XDim' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcRectangleProfileDef,2>::aux_is_derived[0]=true; break; } -- try { GenericConvert( in->XDim, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 3 to IfcRectangleProfileDef to be a `IfcPositiveLengthMeasure`")); } -- } while(0); -- do { // convert the 'YDim' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcRectangleProfileDef,2>::aux_is_derived[1]=true; break; } -- try { GenericConvert( in->YDim, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 4 to IfcRectangleProfileDef to be a `IfcPositiveLengthMeasure`")); } -- } while(0); -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcBuildingElementProxy>(const DB& db, const LIST& params, IfcBuildingElementProxy* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcBuildingElement*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcDistributionControlElementType>(const DB& db, const LIST& params, IfcDistributionControlElementType* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcDistributionElementType*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcFlowInstrumentType>(const DB& db, const LIST& params, IfcFlowInstrumentType* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcDistributionControlElementType*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcDraughtingCallout>(const DB& db, const LIST& params, IfcDraughtingCallout* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcGeometricRepresentationItem*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcDimensionCurveDirectedCallout>(const DB& db, const LIST& params, IfcDimensionCurveDirectedCallout* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcDraughtingCallout*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcLinearDimension>(const DB& db, const LIST& params, IfcLinearDimension* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcDimensionCurveDirectedCallout*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcElementAssembly>(const DB& db, const LIST& params, IfcElementAssembly* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcElement*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcCsgPrimitive3D>(const DB& db, const LIST& params, IfcCsgPrimitive3D* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcGeometricRepresentationItem*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcRightCircularCone>(const DB& db, const LIST& params, IfcRightCircularCone* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcCsgPrimitive3D*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcProjectOrder>(const DB& db, const LIST& params, IfcProjectOrder* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcControl*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcLShapeProfileDef>(const DB& db, const LIST& params, IfcLShapeProfileDef* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcParameterizedProfileDef*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcAngularDimension>(const DB& db, const LIST& params, IfcAngularDimension* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcDimensionCurveDirectedCallout*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcLocalPlacement>(const DB& db, const LIST& params, IfcLocalPlacement* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcObjectPlacement*>(in)); -- if (params.GetSize() < 2) { throw STEP::TypeError("expected 2 arguments to IfcLocalPlacement"); } do { // convert the 'PlacementRelTo' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- if (dynamic_cast<const UNSET*>(&*arg)) break; -- try { GenericConvert( in->PlacementRelTo, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcLocalPlacement to be a `IfcObjectPlacement`")); } -- } while(0); -- do { // convert the 'RelativePlacement' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- try { GenericConvert( in->RelativePlacement, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 1 to IfcLocalPlacement to be a `IfcAxis2Placement`")); } -- } while(0); -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcSweptAreaSolid>(const DB& db, const LIST& params, IfcSweptAreaSolid* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcSolidModel*>(in)); -- if (params.GetSize() < 2) { throw STEP::TypeError("expected 2 arguments to IfcSweptAreaSolid"); } do { // convert the 'SweptArea' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcSweptAreaSolid,2>::aux_is_derived[0]=true; break; } -- try { GenericConvert( in->SweptArea, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcSweptAreaSolid to be a `IfcProfileDef`")); } -- } while(0); -- do { // convert the 'Position' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcSweptAreaSolid,2>::aux_is_derived[1]=true; break; } -- try { GenericConvert( in->Position, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 1 to IfcSweptAreaSolid to be a `IfcAxis2Placement3D`")); } -- } while(0); -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcRevolvedAreaSolid>(const DB& db, const LIST& params, IfcRevolvedAreaSolid* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcSweptAreaSolid*>(in)); -- if (params.GetSize() < 4) { throw STEP::TypeError("expected 4 arguments to IfcRevolvedAreaSolid"); } do { // convert the 'Axis' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- try { GenericConvert( in->Axis, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 2 to IfcRevolvedAreaSolid to be a `IfcAxis1Placement`")); } -- } while(0); -- do { // convert the 'Angle' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- try { GenericConvert( in->Angle, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 3 to IfcRevolvedAreaSolid to be a `IfcPlaneAngleMeasure`")); } -- } while(0); -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcStructuralSurfaceConnection>(const DB& db, const LIST& params, IfcStructuralSurfaceConnection* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcStructuralConnection*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcRadiusDimension>(const DB& db, const LIST& params, IfcRadiusDimension* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcDimensionCurveDirectedCallout*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcSweptDiskSolid>(const DB& db, const LIST& params, IfcSweptDiskSolid* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcSolidModel*>(in)); -- if (params.GetSize() < 5) { throw STEP::TypeError("expected 5 arguments to IfcSweptDiskSolid"); } do { // convert the 'Directrix' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- try { GenericConvert( in->Directrix, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcSweptDiskSolid to be a `IfcCurve`")); } -- } while(0); -- do { // convert the 'Radius' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- try { GenericConvert( in->Radius, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 1 to IfcSweptDiskSolid to be a `IfcPositiveLengthMeasure`")); } -- } while(0); -- do { // convert the 'InnerRadius' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- if (dynamic_cast<const UNSET*>(&*arg)) break; -- try { GenericConvert( in->InnerRadius, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 2 to IfcSweptDiskSolid to be a `IfcPositiveLengthMeasure`")); } -- } while(0); -- do { // convert the 'StartParam' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- try { GenericConvert( in->StartParam, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 3 to IfcSweptDiskSolid to be a `IfcParameterValue`")); } -- } while(0); -- do { // convert the 'EndParam' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- try { GenericConvert( in->EndParam, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 4 to IfcSweptDiskSolid to be a `IfcParameterValue`")); } -- } while(0); -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcHalfSpaceSolid>(const DB& db, const LIST& params, IfcHalfSpaceSolid* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcGeometricRepresentationItem*>(in)); -- if (params.GetSize() < 2) { throw STEP::TypeError("expected 2 arguments to IfcHalfSpaceSolid"); } do { // convert the 'BaseSurface' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcHalfSpaceSolid,2>::aux_is_derived[0]=true; break; } -- try { GenericConvert( in->BaseSurface, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcHalfSpaceSolid to be a `IfcSurface`")); } -- } while(0); -- do { // convert the 'AgreementFlag' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcHalfSpaceSolid,2>::aux_is_derived[1]=true; break; } -- try { GenericConvert( in->AgreementFlag, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 1 to IfcHalfSpaceSolid to be a `BOOLEAN`")); } -- } while(0); -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcPolygonalBoundedHalfSpace>(const DB& db, const LIST& params, IfcPolygonalBoundedHalfSpace* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcHalfSpaceSolid*>(in)); -- if (params.GetSize() < 4) { throw STEP::TypeError("expected 4 arguments to IfcPolygonalBoundedHalfSpace"); } do { // convert the 'Position' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- try { GenericConvert( in->Position, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 2 to IfcPolygonalBoundedHalfSpace to be a `IfcAxis2Placement3D`")); } -- } while(0); -- do { // convert the 'PolygonalBoundary' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- try { GenericConvert( in->PolygonalBoundary, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 3 to IfcPolygonalBoundedHalfSpace to be a `IfcBoundedCurve`")); } -- } while(0); -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcTimeSeriesSchedule>(const DB& db, const LIST& params, IfcTimeSeriesSchedule* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcControl*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcCooledBeamType>(const DB& db, const LIST& params, IfcCooledBeamType* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcEnergyConversionDeviceType*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcProject>(const DB& db, const LIST& params, IfcProject* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcObject*>(in)); -- if (params.GetSize() < 9) { throw STEP::TypeError("expected 9 arguments to IfcProject"); } do { // convert the 'LongName' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- if (dynamic_cast<const UNSET*>(&*arg)) break; -- try { GenericConvert( in->LongName, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 5 to IfcProject to be a `IfcLabel`")); } -- } while(0); -- do { // convert the 'Phase' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- if (dynamic_cast<const UNSET*>(&*arg)) break; -- try { GenericConvert( in->Phase, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 6 to IfcProject to be a `IfcLabel`")); } -- } while(0); -- do { // convert the 'RepresentationContexts' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- try { GenericConvert( in->RepresentationContexts, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 7 to IfcProject to be a `SET [1:?] OF IfcRepresentationContext`")); } -- } while(0); -- do { // convert the 'UnitsInContext' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- try { GenericConvert( in->UnitsInContext, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 8 to IfcProject to be a `IfcUnitAssignment`")); } -- } while(0); -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcEvaporatorType>(const DB& db, const LIST& params, IfcEvaporatorType* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcEnergyConversionDeviceType*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcLaborResource>(const DB& db, const LIST& params, IfcLaborResource* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcConstructionResource*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcPropertyBoundedValue>(const DB& db, const LIST& params, IfcPropertyBoundedValue* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcSimpleProperty*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcRampFlightType>(const DB& db, const LIST& params, IfcRampFlightType* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcBuildingElementType*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcMember>(const DB& db, const LIST& params, IfcMember* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcBuildingElement*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcTubeBundleType>(const DB& db, const LIST& params, IfcTubeBundleType* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcEnergyConversionDeviceType*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcValveType>(const DB& db, const LIST& params, IfcValveType* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcFlowControllerType*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcTrimmedCurve>(const DB& db, const LIST& params, IfcTrimmedCurve* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcBoundedCurve*>(in)); -- if (params.GetSize() < 5) { throw STEP::TypeError("expected 5 arguments to IfcTrimmedCurve"); } do { // convert the 'BasisCurve' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- try { GenericConvert( in->BasisCurve, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcTrimmedCurve to be a `IfcCurve`")); } -- } while(0); -- do { // convert the 'Trim1' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- try { GenericConvert( in->Trim1, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 1 to IfcTrimmedCurve to be a `SET [1:2] OF IfcTrimmingSelect`")); } -- } while(0); -- do { // convert the 'Trim2' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- try { GenericConvert( in->Trim2, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 2 to IfcTrimmedCurve to be a `SET [1:2] OF IfcTrimmingSelect`")); } -- } while(0); -- do { // convert the 'SenseAgreement' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- try { GenericConvert( in->SenseAgreement, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 3 to IfcTrimmedCurve to be a `BOOLEAN`")); } -- } while(0); -- do { // convert the 'MasterRepresentation' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- try { GenericConvert( in->MasterRepresentation, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 4 to IfcTrimmedCurve to be a `IfcTrimmingPreference`")); } -- } while(0); -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcRelDefines>(const DB& db, const LIST& params, IfcRelDefines* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcRelationship*>(in)); -- if (params.GetSize() < 5) { throw STEP::TypeError("expected 5 arguments to IfcRelDefines"); } do { // convert the 'RelatedObjects' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcRelDefines,1>::aux_is_derived[0]=true; break; } -- try { GenericConvert( in->RelatedObjects, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 4 to IfcRelDefines to be a `SET [1:?] OF IfcObject`")); } -- } while(0); -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcRelDefinesByProperties>(const DB& db, const LIST& params, IfcRelDefinesByProperties* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcRelDefines*>(in)); -- if (params.GetSize() < 6) { throw STEP::TypeError("expected 6 arguments to IfcRelDefinesByProperties"); } do { // convert the 'RelatingPropertyDefinition' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcRelDefinesByProperties,1>::aux_is_derived[0]=true; break; } -- try { GenericConvert( in->RelatingPropertyDefinition, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 5 to IfcRelDefinesByProperties to be a `IfcPropertySetDefinition`")); } -- } while(0); -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcActor>(const DB& db, const LIST& params, IfcActor* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcObject*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcOccupant>(const DB& db, const LIST& params, IfcOccupant* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcActor*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcHumidifierType>(const DB& db, const LIST& params, IfcHumidifierType* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcEnergyConversionDeviceType*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcArbitraryOpenProfileDef>(const DB& db, const LIST& params, IfcArbitraryOpenProfileDef* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcProfileDef*>(in)); -- if (params.GetSize() < 3) { throw STEP::TypeError("expected 3 arguments to IfcArbitraryOpenProfileDef"); } do { // convert the 'Curve' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcArbitraryOpenProfileDef,1>::aux_is_derived[0]=true; break; } -- try { GenericConvert( in->Curve, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 2 to IfcArbitraryOpenProfileDef to be a `IfcBoundedCurve`")); } -- } while(0); -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcPermit>(const DB& db, const LIST& params, IfcPermit* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcControl*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcOffsetCurve3D>(const DB& db, const LIST& params, IfcOffsetCurve3D* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcCurve*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcLightSource>(const DB& db, const LIST& params, IfcLightSource* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcGeometricRepresentationItem*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcLightSourcePositional>(const DB& db, const LIST& params, IfcLightSourcePositional* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcLightSource*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcCompositeProfileDef>(const DB& db, const LIST& params, IfcCompositeProfileDef* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcProfileDef*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcRamp>(const DB& db, const LIST& params, IfcRamp* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcBuildingElement*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcFlowMovingDevice>(const DB& db, const LIST& params, IfcFlowMovingDevice* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcDistributionFlowElement*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcSpaceHeaterType>(const DB& db, const LIST& params, IfcSpaceHeaterType* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcEnergyConversionDeviceType*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcLampType>(const DB& db, const LIST& params, IfcLampType* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcFlowTerminalType*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcBuildingElementComponent>(const DB& db, const LIST& params, IfcBuildingElementComponent* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcBuildingElement*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcReinforcingElement>(const DB& db, const LIST& params, IfcReinforcingElement* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcBuildingElementComponent*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcReinforcingBar>(const DB& db, const LIST& params, IfcReinforcingBar* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcReinforcingElement*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcElectricHeaterType>(const DB& db, const LIST& params, IfcElectricHeaterType* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcFlowTerminalType*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcTShapeProfileDef>(const DB& db, const LIST& params, IfcTShapeProfileDef* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcParameterizedProfileDef*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcStructuralActivity>(const DB& db, const LIST& params, IfcStructuralActivity* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcProduct*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcStructuralAction>(const DB& db, const LIST& params, IfcStructuralAction* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcStructuralActivity*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcDuctFittingType>(const DB& db, const LIST& params, IfcDuctFittingType* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcFlowFittingType*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcCartesianTransformationOperator2D>(const DB& db, const LIST& params, IfcCartesianTransformationOperator2D* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcCartesianTransformationOperator*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcCartesianTransformationOperator2DnonUniform>(const DB& db, const LIST& params, IfcCartesianTransformationOperator2DnonUniform* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcCartesianTransformationOperator2D*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcVirtualElement>(const DB& db, const LIST& params, IfcVirtualElement* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcElement*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcRightCircularCylinder>(const DB& db, const LIST& params, IfcRightCircularCylinder* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcCsgPrimitive3D*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcOutletType>(const DB& db, const LIST& params, IfcOutletType* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcFlowTerminalType*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcRelDecomposes>(const DB& db, const LIST& params, IfcRelDecomposes* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcRelationship*>(in)); -- if (params.GetSize() < 6) { throw STEP::TypeError("expected 6 arguments to IfcRelDecomposes"); } do { // convert the 'RelatingObject' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcRelDecomposes,2>::aux_is_derived[0]=true; break; } -- try { GenericConvert( in->RelatingObject, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 4 to IfcRelDecomposes to be a `IfcObjectDefinition`")); } -- } while(0); -- do { // convert the 'RelatedObjects' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcRelDecomposes,2>::aux_is_derived[1]=true; break; } -- try { GenericConvert( in->RelatedObjects, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 5 to IfcRelDecomposes to be a `SET [1:?] OF IfcObjectDefinition`")); } -- } while(0); -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcCovering>(const DB& db, const LIST& params, IfcCovering* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcBuildingElement*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcPolyline>(const DB& db, const LIST& params, IfcPolyline* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcBoundedCurve*>(in)); -- if (params.GetSize() < 1) { throw STEP::TypeError("expected 1 arguments to IfcPolyline"); } do { // convert the 'Points' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- try { GenericConvert( in->Points, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcPolyline to be a `LIST [2:?] OF IfcCartesianPoint`")); } -- } while(0); -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcPath>(const DB& db, const LIST& params, IfcPath* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcTopologicalRepresentationItem*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcElementComponent>(const DB& db, const LIST& params, IfcElementComponent* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcElement*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcFastener>(const DB& db, const LIST& params, IfcFastener* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcElementComponent*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcMappedItem>(const DB& db, const LIST& params, IfcMappedItem* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcRepresentationItem*>(in)); -- if (params.GetSize() < 2) { throw STEP::TypeError("expected 2 arguments to IfcMappedItem"); } do { // convert the 'MappingSource' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- try { GenericConvert( in->MappingSource, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcMappedItem to be a `IfcRepresentationMap`")); } -- } while(0); -- do { // convert the 'MappingTarget' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- try { GenericConvert( in->MappingTarget, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 1 to IfcMappedItem to be a `IfcCartesianTransformationOperator`")); } -- } while(0); -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcRectangularPyramid>(const DB& db, const LIST& params, IfcRectangularPyramid* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcCsgPrimitive3D*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcCrewResource>(const DB& db, const LIST& params, IfcCrewResource* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcConstructionResource*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcNamedUnit>(const DB& db, const LIST& params, IfcNamedUnit* in) --{ -- size_t base = 0; -- if (params.GetSize() < 2) { throw STEP::TypeError("expected 2 arguments to IfcNamedUnit"); } do { // convert the 'Dimensions' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcNamedUnit,2>::aux_is_derived[0]=true; break; } -- try { GenericConvert( in->Dimensions, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcNamedUnit to be a `IfcDimensionalExponents`")); } -- } while(0); -- do { // convert the 'UnitType' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcNamedUnit,2>::aux_is_derived[1]=true; break; } -- try { GenericConvert( in->UnitType, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 1 to IfcNamedUnit to be a `IfcUnitEnum`")); } -- } while(0); -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcContextDependentUnit>(const DB& db, const LIST& params, IfcContextDependentUnit* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcNamedUnit*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcUnitaryEquipmentType>(const DB& db, const LIST& params, IfcUnitaryEquipmentType* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcEnergyConversionDeviceType*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcRoof>(const DB& db, const LIST& params, IfcRoof* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcBuildingElement*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcStructuralMember>(const DB& db, const LIST& params, IfcStructuralMember* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcStructuralItem*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcStyleModel>(const DB& db, const LIST& params, IfcStyleModel* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcRepresentation*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcStyledRepresentation>(const DB& db, const LIST& params, IfcStyledRepresentation* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcStyleModel*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcSpatialStructureElement>(const DB& db, const LIST& params, IfcSpatialStructureElement* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcProduct*>(in)); -- if (params.GetSize() < 9) { throw STEP::TypeError("expected 9 arguments to IfcSpatialStructureElement"); } do { // convert the 'LongName' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcSpatialStructureElement,2>::aux_is_derived[0]=true; break; } -- if (dynamic_cast<const UNSET*>(&*arg)) break; -- try { GenericConvert( in->LongName, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 7 to IfcSpatialStructureElement to be a `IfcLabel`")); } -- } while(0); -- do { // convert the 'CompositionType' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcSpatialStructureElement,2>::aux_is_derived[1]=true; break; } -- try { GenericConvert( in->CompositionType, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 8 to IfcSpatialStructureElement to be a `IfcElementCompositionEnum`")); } -- } while(0); -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcBuilding>(const DB& db, const LIST& params, IfcBuilding* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcSpatialStructureElement*>(in)); -- if (params.GetSize() < 12) { throw STEP::TypeError("expected 12 arguments to IfcBuilding"); } do { // convert the 'ElevationOfRefHeight' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- if (dynamic_cast<const UNSET*>(&*arg)) break; -- try { GenericConvert( in->ElevationOfRefHeight, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 9 to IfcBuilding to be a `IfcLengthMeasure`")); } -- } while(0); -- do { // convert the 'ElevationOfTerrain' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- if (dynamic_cast<const UNSET*>(&*arg)) break; -- try { GenericConvert( in->ElevationOfTerrain, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 10 to IfcBuilding to be a `IfcLengthMeasure`")); } -- } while(0); -- do { // convert the 'BuildingAddress' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- if (dynamic_cast<const UNSET*>(&*arg)) break; -- try { GenericConvert( in->BuildingAddress, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 11 to IfcBuilding to be a `IfcPostalAddress`")); } -- } while(0); -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcConnectedFaceSet>(const DB& db, const LIST& params, IfcConnectedFaceSet* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcTopologicalRepresentationItem*>(in)); -- if (params.GetSize() < 1) { throw STEP::TypeError("expected 1 arguments to IfcConnectedFaceSet"); } do { // convert the 'CfsFaces' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcConnectedFaceSet,1>::aux_is_derived[0]=true; break; } -- try { GenericConvert( in->CfsFaces, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcConnectedFaceSet to be a `SET [1:?] OF IfcFace`")); } -- } while(0); -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcOpenShell>(const DB& db, const LIST& params, IfcOpenShell* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcConnectedFaceSet*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcFacetedBrep>(const DB& db, const LIST& params, IfcFacetedBrep* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcManifoldSolidBrep*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcConic>(const DB& db, const LIST& params, IfcConic* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcCurve*>(in)); -- if (params.GetSize() < 1) { throw STEP::TypeError("expected 1 arguments to IfcConic"); } do { // convert the 'Position' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcConic,1>::aux_is_derived[0]=true; break; } -- try { GenericConvert( in->Position, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcConic to be a `IfcAxis2Placement`")); } -- } while(0); -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcCoveringType>(const DB& db, const LIST& params, IfcCoveringType* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcBuildingElementType*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcRoundedRectangleProfileDef>(const DB& db, const LIST& params, IfcRoundedRectangleProfileDef* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcRectangleProfileDef*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcAirTerminalType>(const DB& db, const LIST& params, IfcAirTerminalType* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcFlowTerminalType*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcFlowMovingDeviceType>(const DB& db, const LIST& params, IfcFlowMovingDeviceType* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcDistributionFlowElementType*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcCompressorType>(const DB& db, const LIST& params, IfcCompressorType* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcFlowMovingDeviceType*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcIShapeProfileDef>(const DB& db, const LIST& params, IfcIShapeProfileDef* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcParameterizedProfileDef*>(in)); -- if (params.GetSize() < 8) { throw STEP::TypeError("expected 8 arguments to IfcIShapeProfileDef"); } do { // convert the 'OverallWidth' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcIShapeProfileDef,5>::aux_is_derived[0]=true; break; } -- try { GenericConvert( in->OverallWidth, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 3 to IfcIShapeProfileDef to be a `IfcPositiveLengthMeasure`")); } -- } while(0); -- do { // convert the 'OverallDepth' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcIShapeProfileDef,5>::aux_is_derived[1]=true; break; } -- try { GenericConvert( in->OverallDepth, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 4 to IfcIShapeProfileDef to be a `IfcPositiveLengthMeasure`")); } -- } while(0); -- do { // convert the 'WebThickness' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcIShapeProfileDef,5>::aux_is_derived[2]=true; break; } -- try { GenericConvert( in->WebThickness, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 5 to IfcIShapeProfileDef to be a `IfcPositiveLengthMeasure`")); } -- } while(0); -- do { // convert the 'FlangeThickness' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcIShapeProfileDef,5>::aux_is_derived[3]=true; break; } -- try { GenericConvert( in->FlangeThickness, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 6 to IfcIShapeProfileDef to be a `IfcPositiveLengthMeasure`")); } -- } while(0); -- do { // convert the 'FilletRadius' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcIShapeProfileDef,5>::aux_is_derived[4]=true; break; } -- if (dynamic_cast<const UNSET*>(&*arg)) break; -- try { GenericConvert( in->FilletRadius, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 7 to IfcIShapeProfileDef to be a `IfcPositiveLengthMeasure`")); } -- } while(0); -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcAsymmetricIShapeProfileDef>(const DB& db, const LIST& params, IfcAsymmetricIShapeProfileDef* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcIShapeProfileDef*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcControllerType>(const DB& db, const LIST& params, IfcControllerType* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcDistributionControlElementType*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcRailing>(const DB& db, const LIST& params, IfcRailing* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcBuildingElement*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcGroup>(const DB& db, const LIST& params, IfcGroup* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcObject*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcAsset>(const DB& db, const LIST& params, IfcAsset* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcGroup*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcMaterialDefinitionRepresentation>(const DB& db, const LIST& params, IfcMaterialDefinitionRepresentation* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcProductRepresentation*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcRailingType>(const DB& db, const LIST& params, IfcRailingType* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcBuildingElementType*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcWall>(const DB& db, const LIST& params, IfcWall* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcBuildingElement*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcStructuralPointConnection>(const DB& db, const LIST& params, IfcStructuralPointConnection* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcStructuralConnection*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcPropertyListValue>(const DB& db, const LIST& params, IfcPropertyListValue* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcSimpleProperty*>(in)); -- if (params.GetSize() < 4) { throw STEP::TypeError("expected 4 arguments to IfcPropertyListValue"); } do { // convert the 'ListValues' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- try { GenericConvert( in->ListValues, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 2 to IfcPropertyListValue to be a `LIST [1:?] OF IfcValue`")); } -- } while(0); -- do { // convert the 'Unit' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- if (dynamic_cast<const UNSET*>(&*arg)) break; -- try { GenericConvert( in->Unit, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 3 to IfcPropertyListValue to be a `IfcUnit`")); } -- } while(0); -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcFurnitureStandard>(const DB& db, const LIST& params, IfcFurnitureStandard* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcControl*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcElectricGeneratorType>(const DB& db, const LIST& params, IfcElectricGeneratorType* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcEnergyConversionDeviceType*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcDoor>(const DB& db, const LIST& params, IfcDoor* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcBuildingElement*>(in)); -- if (params.GetSize() < 10) { throw STEP::TypeError("expected 10 arguments to IfcDoor"); } do { // convert the 'OverallHeight' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- if (dynamic_cast<const UNSET*>(&*arg)) break; -- try { GenericConvert( in->OverallHeight, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 8 to IfcDoor to be a `IfcPositiveLengthMeasure`")); } -- } while(0); -- do { // convert the 'OverallWidth' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- if (dynamic_cast<const UNSET*>(&*arg)) break; -- try { GenericConvert( in->OverallWidth, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 9 to IfcDoor to be a `IfcPositiveLengthMeasure`")); } -- } while(0); -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcStyledItem>(const DB& db, const LIST& params, IfcStyledItem* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcRepresentationItem*>(in)); -- if (params.GetSize() < 3) { throw STEP::TypeError("expected 3 arguments to IfcStyledItem"); } do { // convert the 'Item' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcStyledItem,3>::aux_is_derived[0]=true; break; } -- if (dynamic_cast<const UNSET*>(&*arg)) break; -- try { GenericConvert( in->Item, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcStyledItem to be a `IfcRepresentationItem`")); } -- } while(0); -- do { // convert the 'Styles' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcStyledItem,3>::aux_is_derived[1]=true; break; } -- try { GenericConvert( in->Styles, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 1 to IfcStyledItem to be a `SET [1:?] OF IfcPresentationStyleAssignment`")); } -- } while(0); -- do { // convert the 'Name' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcStyledItem,3>::aux_is_derived[2]=true; break; } -- if (dynamic_cast<const UNSET*>(&*arg)) break; -- try { GenericConvert( in->Name, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 2 to IfcStyledItem to be a `IfcLabel`")); } -- } while(0); -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcAnnotationOccurrence>(const DB& db, const LIST& params, IfcAnnotationOccurrence* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcStyledItem*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcAnnotationSymbolOccurrence>(const DB& db, const LIST& params, IfcAnnotationSymbolOccurrence* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcAnnotationOccurrence*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcArbitraryClosedProfileDef>(const DB& db, const LIST& params, IfcArbitraryClosedProfileDef* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcProfileDef*>(in)); -- if (params.GetSize() < 3) { throw STEP::TypeError("expected 3 arguments to IfcArbitraryClosedProfileDef"); } do { // convert the 'OuterCurve' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcArbitraryClosedProfileDef,1>::aux_is_derived[0]=true; break; } -- try { GenericConvert( in->OuterCurve, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 2 to IfcArbitraryClosedProfileDef to be a `IfcCurve`")); } -- } while(0); -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcArbitraryProfileDefWithVoids>(const DB& db, const LIST& params, IfcArbitraryProfileDefWithVoids* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcArbitraryClosedProfileDef*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcLine>(const DB& db, const LIST& params, IfcLine* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcCurve*>(in)); -- if (params.GetSize() < 2) { throw STEP::TypeError("expected 2 arguments to IfcLine"); } do { // convert the 'Pnt' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- try { GenericConvert( in->Pnt, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcLine to be a `IfcCartesianPoint`")); } -- } while(0); -- do { // convert the 'Dir' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- try { GenericConvert( in->Dir, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 1 to IfcLine to be a `IfcVector`")); } -- } while(0); -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcFlowSegmentType>(const DB& db, const LIST& params, IfcFlowSegmentType* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcDistributionFlowElementType*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcAirTerminalBoxType>(const DB& db, const LIST& params, IfcAirTerminalBoxType* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcFlowControllerType*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcPropertySingleValue>(const DB& db, const LIST& params, IfcPropertySingleValue* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcSimpleProperty*>(in)); -- if (params.GetSize() < 4) { throw STEP::TypeError("expected 4 arguments to IfcPropertySingleValue"); } do { // convert the 'NominalValue' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- if (dynamic_cast<const UNSET*>(&*arg)) break; -- try { GenericConvert( in->NominalValue, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 2 to IfcPropertySingleValue to be a `IfcValue`")); } -- } while(0); -- do { // convert the 'Unit' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- if (dynamic_cast<const UNSET*>(&*arg)) break; -- try { GenericConvert( in->Unit, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 3 to IfcPropertySingleValue to be a `IfcUnit`")); } -- } while(0); -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcAlarmType>(const DB& db, const LIST& params, IfcAlarmType* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcDistributionControlElementType*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcEllipseProfileDef>(const DB& db, const LIST& params, IfcEllipseProfileDef* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcParameterizedProfileDef*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcStair>(const DB& db, const LIST& params, IfcStair* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcBuildingElement*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcSurfaceStyleShading>(const DB& db, const LIST& params, IfcSurfaceStyleShading* in) --{ -- size_t base = 0; -- if (params.GetSize() < 1) { throw STEP::TypeError("expected 1 arguments to IfcSurfaceStyleShading"); } do { // convert the 'SurfaceColour' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcSurfaceStyleShading,1>::aux_is_derived[0]=true; break; } -- try { GenericConvert( in->SurfaceColour, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcSurfaceStyleShading to be a `IfcColourRgb`")); } -- } while(0); -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcPumpType>(const DB& db, const LIST& params, IfcPumpType* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcFlowMovingDeviceType*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcDefinedSymbol>(const DB& db, const LIST& params, IfcDefinedSymbol* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcGeometricRepresentationItem*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcElementComponentType>(const DB& db, const LIST& params, IfcElementComponentType* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcElementType*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcFastenerType>(const DB& db, const LIST& params, IfcFastenerType* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcElementComponentType*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcMechanicalFastenerType>(const DB& db, const LIST& params, IfcMechanicalFastenerType* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcFastenerType*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcFlowFitting>(const DB& db, const LIST& params, IfcFlowFitting* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcDistributionFlowElement*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcLightSourceDirectional>(const DB& db, const LIST& params, IfcLightSourceDirectional* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcLightSource*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcSurfaceStyle>(const DB& db, const LIST& params, IfcSurfaceStyle* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcPresentationStyle*>(in)); -- if (params.GetSize() < 3) { throw STEP::TypeError("expected 3 arguments to IfcSurfaceStyle"); } do { // convert the 'Side' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- try { GenericConvert( in->Side, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 1 to IfcSurfaceStyle to be a `IfcSurfaceSide`")); } -- } while(0); -- do { // convert the 'Styles' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- try { GenericConvert( in->Styles, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 2 to IfcSurfaceStyle to be a `SET [1:5] OF IfcSurfaceStyleElementSelect`")); } -- } while(0); -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcAnnotationSurface>(const DB& db, const LIST& params, IfcAnnotationSurface* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcGeometricRepresentationItem*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcFlowController>(const DB& db, const LIST& params, IfcFlowController* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcDistributionFlowElement*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcBuildingStorey>(const DB& db, const LIST& params, IfcBuildingStorey* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcSpatialStructureElement*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcWorkControl>(const DB& db, const LIST& params, IfcWorkControl* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcControl*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcWorkSchedule>(const DB& db, const LIST& params, IfcWorkSchedule* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcWorkControl*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcDuctSegmentType>(const DB& db, const LIST& params, IfcDuctSegmentType* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcFlowSegmentType*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcFace>(const DB& db, const LIST& params, IfcFace* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcTopologicalRepresentationItem*>(in)); -- if (params.GetSize() < 1) { throw STEP::TypeError("expected 1 arguments to IfcFace"); } do { // convert the 'Bounds' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcFace,1>::aux_is_derived[0]=true; break; } -- try { GenericConvert( in->Bounds, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcFace to be a `SET [1:?] OF IfcFaceBound`")); } -- } while(0); -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcStructuralSurfaceMember>(const DB& db, const LIST& params, IfcStructuralSurfaceMember* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcStructuralMember*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcStructuralSurfaceMemberVarying>(const DB& db, const LIST& params, IfcStructuralSurfaceMemberVarying* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcStructuralSurfaceMember*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcFaceSurface>(const DB& db, const LIST& params, IfcFaceSurface* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcFace*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcCostSchedule>(const DB& db, const LIST& params, IfcCostSchedule* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcControl*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcPlanarExtent>(const DB& db, const LIST& params, IfcPlanarExtent* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcGeometricRepresentationItem*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcPlanarBox>(const DB& db, const LIST& params, IfcPlanarBox* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcPlanarExtent*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcColourSpecification>(const DB& db, const LIST& params, IfcColourSpecification* in) --{ -- size_t base = 0; -- if (params.GetSize() < 1) { throw STEP::TypeError("expected 1 arguments to IfcColourSpecification"); } do { // convert the 'Name' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcColourSpecification,1>::aux_is_derived[0]=true; break; } -- if (dynamic_cast<const UNSET*>(&*arg)) break; -- try { GenericConvert( in->Name, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcColourSpecification to be a `IfcLabel`")); } -- } while(0); -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcVector>(const DB& db, const LIST& params, IfcVector* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcGeometricRepresentationItem*>(in)); -- if (params.GetSize() < 2) { throw STEP::TypeError("expected 2 arguments to IfcVector"); } do { // convert the 'Orientation' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- try { GenericConvert( in->Orientation, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcVector to be a `IfcDirection`")); } -- } while(0); -- do { // convert the 'Magnitude' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- try { GenericConvert( in->Magnitude, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 1 to IfcVector to be a `IfcLengthMeasure`")); } -- } while(0); -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcBeam>(const DB& db, const LIST& params, IfcBeam* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcBuildingElement*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcColourRgb>(const DB& db, const LIST& params, IfcColourRgb* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcColourSpecification*>(in)); -- if (params.GetSize() < 4) { throw STEP::TypeError("expected 4 arguments to IfcColourRgb"); } do { // convert the 'Red' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- try { GenericConvert( in->Red, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 1 to IfcColourRgb to be a `IfcNormalisedRatioMeasure`")); } -- } while(0); -- do { // convert the 'Green' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- try { GenericConvert( in->Green, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 2 to IfcColourRgb to be a `IfcNormalisedRatioMeasure`")); } -- } while(0); -- do { // convert the 'Blue' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- try { GenericConvert( in->Blue, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 3 to IfcColourRgb to be a `IfcNormalisedRatioMeasure`")); } -- } while(0); -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcStructuralPlanarAction>(const DB& db, const LIST& params, IfcStructuralPlanarAction* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcStructuralAction*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcStructuralPlanarActionVarying>(const DB& db, const LIST& params, IfcStructuralPlanarActionVarying* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcStructuralPlanarAction*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcSite>(const DB& db, const LIST& params, IfcSite* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcSpatialStructureElement*>(in)); -- if (params.GetSize() < 14) { throw STEP::TypeError("expected 14 arguments to IfcSite"); } do { // convert the 'RefLatitude' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- if (dynamic_cast<const UNSET*>(&*arg)) break; -- try { GenericConvert( in->RefLatitude, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 9 to IfcSite to be a `IfcCompoundPlaneAngleMeasure`")); } -- } while(0); -- do { // convert the 'RefLongitude' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- if (dynamic_cast<const UNSET*>(&*arg)) break; -- try { GenericConvert( in->RefLongitude, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 10 to IfcSite to be a `IfcCompoundPlaneAngleMeasure`")); } -- } while(0); -- do { // convert the 'RefElevation' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- if (dynamic_cast<const UNSET*>(&*arg)) break; -- try { GenericConvert( in->RefElevation, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 11 to IfcSite to be a `IfcLengthMeasure`")); } -- } while(0); -- do { // convert the 'LandTitleNumber' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- if (dynamic_cast<const UNSET*>(&*arg)) break; -- try { GenericConvert( in->LandTitleNumber, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 12 to IfcSite to be a `IfcLabel`")); } -- } while(0); -- do { // convert the 'SiteAddress' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- if (dynamic_cast<const UNSET*>(&*arg)) break; -- try { GenericConvert( in->SiteAddress, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 13 to IfcSite to be a `IfcPostalAddress`")); } -- } while(0); -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcDiscreteAccessoryType>(const DB& db, const LIST& params, IfcDiscreteAccessoryType* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcElementComponentType*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcVibrationIsolatorType>(const DB& db, const LIST& params, IfcVibrationIsolatorType* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcDiscreteAccessoryType*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcEvaporativeCoolerType>(const DB& db, const LIST& params, IfcEvaporativeCoolerType* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcEnergyConversionDeviceType*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcDistributionChamberElementType>(const DB& db, const LIST& params, IfcDistributionChamberElementType* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcDistributionFlowElementType*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcFeatureElementAddition>(const DB& db, const LIST& params, IfcFeatureElementAddition* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcFeatureElement*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcStructuredDimensionCallout>(const DB& db, const LIST& params, IfcStructuredDimensionCallout* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcDraughtingCallout*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcCoolingTowerType>(const DB& db, const LIST& params, IfcCoolingTowerType* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcEnergyConversionDeviceType*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcCenterLineProfileDef>(const DB& db, const LIST& params, IfcCenterLineProfileDef* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcArbitraryOpenProfileDef*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcWindowStyle>(const DB& db, const LIST& params, IfcWindowStyle* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcTypeProduct*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcLightSourceGoniometric>(const DB& db, const LIST& params, IfcLightSourceGoniometric* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcLightSource*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcTransformerType>(const DB& db, const LIST& params, IfcTransformerType* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcEnergyConversionDeviceType*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcMemberType>(const DB& db, const LIST& params, IfcMemberType* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcBuildingElementType*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcSurfaceOfLinearExtrusion>(const DB& db, const LIST& params, IfcSurfaceOfLinearExtrusion* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcSweptSurface*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcMotorConnectionType>(const DB& db, const LIST& params, IfcMotorConnectionType* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcEnergyConversionDeviceType*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcFlowTreatmentDeviceType>(const DB& db, const LIST& params, IfcFlowTreatmentDeviceType* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcDistributionFlowElementType*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcDuctSilencerType>(const DB& db, const LIST& params, IfcDuctSilencerType* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcFlowTreatmentDeviceType*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcFurnishingElementType>(const DB& db, const LIST& params, IfcFurnishingElementType* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcElementType*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcSystemFurnitureElementType>(const DB& db, const LIST& params, IfcSystemFurnitureElementType* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcFurnishingElementType*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcWasteTerminalType>(const DB& db, const LIST& params, IfcWasteTerminalType* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcFlowTerminalType*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcBSplineCurve>(const DB& db, const LIST& params, IfcBSplineCurve* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcBoundedCurve*>(in)); -- if (params.GetSize() < 5) { throw STEP::TypeError("expected 5 arguments to IfcBSplineCurve"); } do { // convert the 'Degree' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcBSplineCurve,5>::aux_is_derived[0]=true; break; } -- try { GenericConvert( in->Degree, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcBSplineCurve to be a `INTEGER`")); } -- } while(0); -- do { // convert the 'ControlPointsList' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcBSplineCurve,5>::aux_is_derived[1]=true; break; } -- try { GenericConvert( in->ControlPointsList, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 1 to IfcBSplineCurve to be a `LIST [2:?] OF IfcCartesianPoint`")); } -- } while(0); -- do { // convert the 'CurveForm' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcBSplineCurve,5>::aux_is_derived[2]=true; break; } -- try { GenericConvert( in->CurveForm, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 2 to IfcBSplineCurve to be a `IfcBSplineCurveForm`")); } -- } while(0); -- do { // convert the 'ClosedCurve' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcBSplineCurve,5>::aux_is_derived[3]=true; break; } -- try { GenericConvert( in->ClosedCurve, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 3 to IfcBSplineCurve to be a `LOGICAL`")); } -- } while(0); -- do { // convert the 'SelfIntersect' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcBSplineCurve,5>::aux_is_derived[4]=true; break; } -- try { GenericConvert( in->SelfIntersect, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 4 to IfcBSplineCurve to be a `LOGICAL`")); } -- } while(0); -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcBezierCurve>(const DB& db, const LIST& params, IfcBezierCurve* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcBSplineCurve*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcActuatorType>(const DB& db, const LIST& params, IfcActuatorType* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcDistributionControlElementType*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcDistributionControlElement>(const DB& db, const LIST& params, IfcDistributionControlElement* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcDistributionElement*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcAnnotation>(const DB& db, const LIST& params, IfcAnnotation* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcProduct*>(in)); -- if (params.GetSize() < 7) { throw STEP::TypeError("expected 7 arguments to IfcAnnotation"); } return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcShellBasedSurfaceModel>(const DB& db, const LIST& params, IfcShellBasedSurfaceModel* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcGeometricRepresentationItem*>(in)); -- if (params.GetSize() < 1) { throw STEP::TypeError("expected 1 arguments to IfcShellBasedSurfaceModel"); } do { // convert the 'SbsmBoundary' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- try { GenericConvert( in->SbsmBoundary, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcShellBasedSurfaceModel to be a `SET [1:?] OF IfcShell`")); } -- } while(0); -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcActionRequest>(const DB& db, const LIST& params, IfcActionRequest* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcControl*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcExtrudedAreaSolid>(const DB& db, const LIST& params, IfcExtrudedAreaSolid* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcSweptAreaSolid*>(in)); -- if (params.GetSize() < 4) { throw STEP::TypeError("expected 4 arguments to IfcExtrudedAreaSolid"); } do { // convert the 'ExtrudedDirection' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- try { GenericConvert( in->ExtrudedDirection, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 2 to IfcExtrudedAreaSolid to be a `IfcDirection`")); } -- } while(0); -- do { // convert the 'Depth' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- try { GenericConvert( in->Depth, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 3 to IfcExtrudedAreaSolid to be a `IfcPositiveLengthMeasure`")); } -- } while(0); -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcSystem>(const DB& db, const LIST& params, IfcSystem* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcGroup*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcFillAreaStyleHatching>(const DB& db, const LIST& params, IfcFillAreaStyleHatching* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcGeometricRepresentationItem*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcRelVoidsElement>(const DB& db, const LIST& params, IfcRelVoidsElement* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcRelConnects*>(in)); -- if (params.GetSize() < 6) { throw STEP::TypeError("expected 6 arguments to IfcRelVoidsElement"); } do { // convert the 'RelatingBuildingElement' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- try { GenericConvert( in->RelatingBuildingElement, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 4 to IfcRelVoidsElement to be a `IfcElement`")); } -- } while(0); -- do { // convert the 'RelatedOpeningElement' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- try { GenericConvert( in->RelatedOpeningElement, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 5 to IfcRelVoidsElement to be a `IfcFeatureElementSubtraction`")); } -- } while(0); -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcSurfaceCurveSweptAreaSolid>(const DB& db, const LIST& params, IfcSurfaceCurveSweptAreaSolid* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcSweptAreaSolid*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcCartesianTransformationOperator3DnonUniform>(const DB& db, const LIST& params, IfcCartesianTransformationOperator3DnonUniform* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcCartesianTransformationOperator3D*>(in)); -- if (params.GetSize() < 7) { throw STEP::TypeError("expected 7 arguments to IfcCartesianTransformationOperator3DnonUniform"); } do { // convert the 'Scale2' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- if (dynamic_cast<const UNSET*>(&*arg)) break; -- try { GenericConvert( in->Scale2, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 5 to IfcCartesianTransformationOperator3DnonUniform to be a `REAL`")); } -- } while(0); -- do { // convert the 'Scale3' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- if (dynamic_cast<const UNSET*>(&*arg)) break; -- try { GenericConvert( in->Scale3, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 6 to IfcCartesianTransformationOperator3DnonUniform to be a `REAL`")); } -- } while(0); -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcCurtainWallType>(const DB& db, const LIST& params, IfcCurtainWallType* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcBuildingElementType*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcEquipmentStandard>(const DB& db, const LIST& params, IfcEquipmentStandard* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcControl*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcFlowStorageDeviceType>(const DB& db, const LIST& params, IfcFlowStorageDeviceType* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcDistributionFlowElementType*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcDiameterDimension>(const DB& db, const LIST& params, IfcDiameterDimension* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcDimensionCurveDirectedCallout*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcSwitchingDeviceType>(const DB& db, const LIST& params, IfcSwitchingDeviceType* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcFlowControllerType*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcWindow>(const DB& db, const LIST& params, IfcWindow* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcBuildingElement*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcFlowTreatmentDevice>(const DB& db, const LIST& params, IfcFlowTreatmentDevice* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcDistributionFlowElement*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcChillerType>(const DB& db, const LIST& params, IfcChillerType* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcEnergyConversionDeviceType*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcRectangleHollowProfileDef>(const DB& db, const LIST& params, IfcRectangleHollowProfileDef* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcRectangleProfileDef*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcBoxedHalfSpace>(const DB& db, const LIST& params, IfcBoxedHalfSpace* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcHalfSpaceSolid*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcAxis2Placement2D>(const DB& db, const LIST& params, IfcAxis2Placement2D* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcPlacement*>(in)); -- if (params.GetSize() < 2) { throw STEP::TypeError("expected 2 arguments to IfcAxis2Placement2D"); } do { // convert the 'RefDirection' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- if (dynamic_cast<const UNSET*>(&*arg)) break; -- try { GenericConvert( in->RefDirection, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 1 to IfcAxis2Placement2D to be a `IfcDirection`")); } -- } while(0); -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcSpaceProgram>(const DB& db, const LIST& params, IfcSpaceProgram* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcControl*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcPoint>(const DB& db, const LIST& params, IfcPoint* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcGeometricRepresentationItem*>(in)); -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcCartesianPoint>(const DB& db, const LIST& params, IfcCartesianPoint* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcPoint*>(in)); -- if (params.GetSize() < 1) { throw STEP::TypeError("expected 1 arguments to IfcCartesianPoint"); } do { // convert the 'Coordinates' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- try { GenericConvert( in->Coordinates, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcCartesianPoint to be a `LIST [1:3] OF IfcLengthMeasure`")); } -- } while(0); -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcBoundedSurface>(const DB& db, const LIST& params, IfcBoundedSurface* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcSurface*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcLoop>(const DB& db, const LIST& params, IfcLoop* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcTopologicalRepresentationItem*>(in)); -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcPolyLoop>(const DB& db, const LIST& params, IfcPolyLoop* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcLoop*>(in)); -- if (params.GetSize() < 1) { throw STEP::TypeError("expected 1 arguments to IfcPolyLoop"); } do { // convert the 'Polygon' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- try { GenericConvert( in->Polygon, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcPolyLoop to be a `LIST [3:?] OF IfcCartesianPoint`")); } -- } while(0); -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcTerminatorSymbol>(const DB& db, const LIST& params, IfcTerminatorSymbol* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcAnnotationSymbolOccurrence*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcDimensionCurveTerminator>(const DB& db, const LIST& params, IfcDimensionCurveTerminator* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcTerminatorSymbol*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcTrapeziumProfileDef>(const DB& db, const LIST& params, IfcTrapeziumProfileDef* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcParameterizedProfileDef*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcRepresentationContext>(const DB& db, const LIST& params, IfcRepresentationContext* in) --{ -- size_t base = 0; -- if (params.GetSize() < 2) { throw STEP::TypeError("expected 2 arguments to IfcRepresentationContext"); } do { // convert the 'ContextIdentifier' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcRepresentationContext,2>::aux_is_derived[0]=true; break; } -- if (dynamic_cast<const UNSET*>(&*arg)) break; -- try { GenericConvert( in->ContextIdentifier, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcRepresentationContext to be a `IfcLabel`")); } -- } while(0); -- do { // convert the 'ContextType' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcRepresentationContext,2>::aux_is_derived[1]=true; break; } -- if (dynamic_cast<const UNSET*>(&*arg)) break; -- try { GenericConvert( in->ContextType, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 1 to IfcRepresentationContext to be a `IfcLabel`")); } -- } while(0); -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcGeometricRepresentationContext>(const DB& db, const LIST& params, IfcGeometricRepresentationContext* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcRepresentationContext*>(in)); -- if (params.GetSize() < 6) { throw STEP::TypeError("expected 6 arguments to IfcGeometricRepresentationContext"); } do { // convert the 'CoordinateSpaceDimension' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcGeometricRepresentationContext,4>::aux_is_derived[0]=true; break; } -- try { GenericConvert( in->CoordinateSpaceDimension, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 2 to IfcGeometricRepresentationContext to be a `IfcDimensionCount`")); } -- } while(0); -- do { // convert the 'Precision' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcGeometricRepresentationContext,4>::aux_is_derived[1]=true; break; } -- if (dynamic_cast<const UNSET*>(&*arg)) break; -- try { GenericConvert( in->Precision, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 3 to IfcGeometricRepresentationContext to be a `REAL`")); } -- } while(0); -- do { // convert the 'WorldCoordinateSystem' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcGeometricRepresentationContext,4>::aux_is_derived[2]=true; break; } -- try { GenericConvert( in->WorldCoordinateSystem, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 4 to IfcGeometricRepresentationContext to be a `IfcAxis2Placement`")); } -- } while(0); -- do { // convert the 'TrueNorth' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcGeometricRepresentationContext,4>::aux_is_derived[3]=true; break; } -- if (dynamic_cast<const UNSET*>(&*arg)) break; -- try { GenericConvert( in->TrueNorth, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 5 to IfcGeometricRepresentationContext to be a `IfcDirection`")); } -- } while(0); -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcCurveBoundedPlane>(const DB& db, const LIST& params, IfcCurveBoundedPlane* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcBoundedSurface*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcSIUnit>(const DB& db, const LIST& params, IfcSIUnit* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcNamedUnit*>(in)); -- if (params.GetSize() < 4) { throw STEP::TypeError("expected 4 arguments to IfcSIUnit"); } do { // convert the 'Prefix' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- if (dynamic_cast<const UNSET*>(&*arg)) break; -- try { GenericConvert( in->Prefix, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 2 to IfcSIUnit to be a `IfcSIPrefix`")); } -- } while(0); -- do { // convert the 'Name' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- try { GenericConvert( in->Name, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 3 to IfcSIUnit to be a `IfcSIUnitName`")); } -- } while(0); -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcStructuralReaction>(const DB& db, const LIST& params, IfcStructuralReaction* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcStructuralActivity*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcStructuralPointReaction>(const DB& db, const LIST& params, IfcStructuralPointReaction* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcStructuralReaction*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcAxis1Placement>(const DB& db, const LIST& params, IfcAxis1Placement* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcPlacement*>(in)); -- if (params.GetSize() < 2) { throw STEP::TypeError("expected 2 arguments to IfcAxis1Placement"); } do { // convert the 'Axis' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- if (dynamic_cast<const UNSET*>(&*arg)) break; -- try { GenericConvert( in->Axis, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 1 to IfcAxis1Placement to be a `IfcDirection`")); } -- } while(0); -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcElectricApplianceType>(const DB& db, const LIST& params, IfcElectricApplianceType* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcFlowTerminalType*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcSensorType>(const DB& db, const LIST& params, IfcSensorType* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcDistributionControlElementType*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcFurnishingElement>(const DB& db, const LIST& params, IfcFurnishingElement* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcElement*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcProtectiveDeviceType>(const DB& db, const LIST& params, IfcProtectiveDeviceType* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcFlowControllerType*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcZShapeProfileDef>(const DB& db, const LIST& params, IfcZShapeProfileDef* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcParameterizedProfileDef*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcScheduleTimeControl>(const DB& db, const LIST& params, IfcScheduleTimeControl* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcControl*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcRepresentationMap>(const DB& db, const LIST& params, IfcRepresentationMap* in) --{ -- size_t base = 0; -- if (params.GetSize() < 2) { throw STEP::TypeError("expected 2 arguments to IfcRepresentationMap"); } do { // convert the 'MappingOrigin' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- try { GenericConvert( in->MappingOrigin, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcRepresentationMap to be a `IfcAxis2Placement`")); } -- } while(0); -- do { // convert the 'MappedRepresentation' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- try { GenericConvert( in->MappedRepresentation, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 1 to IfcRepresentationMap to be a `IfcRepresentation`")); } -- } while(0); -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcClosedShell>(const DB& db, const LIST& params, IfcClosedShell* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcConnectedFaceSet*>(in)); -- if (params.GetSize() < 1) { throw STEP::TypeError("expected 1 arguments to IfcClosedShell"); } return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcBuildingElementPart>(const DB& db, const LIST& params, IfcBuildingElementPart* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcBuildingElementComponent*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcBlock>(const DB& db, const LIST& params, IfcBlock* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcCsgPrimitive3D*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcLightFixtureType>(const DB& db, const LIST& params, IfcLightFixtureType* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcFlowTerminalType*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcOpeningElement>(const DB& db, const LIST& params, IfcOpeningElement* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcFeatureElementSubtraction*>(in)); -- if (params.GetSize() < 8) { throw STEP::TypeError("expected 8 arguments to IfcOpeningElement"); } return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcLightSourceSpot>(const DB& db, const LIST& params, IfcLightSourceSpot* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcLightSourcePositional*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcTendonAnchor>(const DB& db, const LIST& params, IfcTendonAnchor* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcReinforcingElement*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcElectricFlowStorageDeviceType>(const DB& db, const LIST& params, IfcElectricFlowStorageDeviceType* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcFlowStorageDeviceType*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcSphere>(const DB& db, const LIST& params, IfcSphere* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcCsgPrimitive3D*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcDamperType>(const DB& db, const LIST& params, IfcDamperType* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcFlowControllerType*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcProjectOrderRecord>(const DB& db, const LIST& params, IfcProjectOrderRecord* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcControl*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcDistributionChamberElement>(const DB& db, const LIST& params, IfcDistributionChamberElement* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcDistributionFlowElement*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcMechanicalFastener>(const DB& db, const LIST& params, IfcMechanicalFastener* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcFastener*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcRectangularTrimmedSurface>(const DB& db, const LIST& params, IfcRectangularTrimmedSurface* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcBoundedSurface*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcZone>(const DB& db, const LIST& params, IfcZone* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcGroup*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcFanType>(const DB& db, const LIST& params, IfcFanType* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcFlowMovingDeviceType*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcGeometricSet>(const DB& db, const LIST& params, IfcGeometricSet* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcGeometricRepresentationItem*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcFillAreaStyleTiles>(const DB& db, const LIST& params, IfcFillAreaStyleTiles* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcGeometricRepresentationItem*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcCableSegmentType>(const DB& db, const LIST& params, IfcCableSegmentType* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcFlowSegmentType*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcRelOverridesProperties>(const DB& db, const LIST& params, IfcRelOverridesProperties* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcRelDefinesByProperties*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcMeasureWithUnit>(const DB& db, const LIST& params, IfcMeasureWithUnit* in) --{ -- size_t base = 0; -- if (params.GetSize() < 2) { throw STEP::TypeError("expected 2 arguments to IfcMeasureWithUnit"); } do { // convert the 'ValueComponent' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- try { GenericConvert( in->ValueComponent, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcMeasureWithUnit to be a `IfcValue`")); } -- } while(0); -- do { // convert the 'UnitComponent' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- try { GenericConvert( in->UnitComponent, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 1 to IfcMeasureWithUnit to be a `IfcUnit`")); } -- } while(0); -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcSlabType>(const DB& db, const LIST& params, IfcSlabType* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcBuildingElementType*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcServiceLife>(const DB& db, const LIST& params, IfcServiceLife* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcControl*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcFurnitureType>(const DB& db, const LIST& params, IfcFurnitureType* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcFurnishingElementType*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcCostItem>(const DB& db, const LIST& params, IfcCostItem* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcControl*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcReinforcingMesh>(const DB& db, const LIST& params, IfcReinforcingMesh* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcReinforcingElement*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcFacetedBrepWithVoids>(const DB& db, const LIST& params, IfcFacetedBrepWithVoids* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcManifoldSolidBrep*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcGasTerminalType>(const DB& db, const LIST& params, IfcGasTerminalType* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcFlowTerminalType*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcPile>(const DB& db, const LIST& params, IfcPile* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcBuildingElement*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcFillAreaStyleTileSymbolWithStyle>(const DB& db, const LIST& params, IfcFillAreaStyleTileSymbolWithStyle* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcGeometricRepresentationItem*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcConstructionMaterialResource>(const DB& db, const LIST& params, IfcConstructionMaterialResource* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcConstructionResource*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcAnnotationCurveOccurrence>(const DB& db, const LIST& params, IfcAnnotationCurveOccurrence* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcAnnotationOccurrence*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcDimensionCurve>(const DB& db, const LIST& params, IfcDimensionCurve* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcAnnotationCurveOccurrence*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcGeometricCurveSet>(const DB& db, const LIST& params, IfcGeometricCurveSet* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcGeometricSet*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcRelAggregates>(const DB& db, const LIST& params, IfcRelAggregates* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcRelDecomposes*>(in)); -- if (params.GetSize() < 6) { throw STEP::TypeError("expected 6 arguments to IfcRelAggregates"); } return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcFaceBasedSurfaceModel>(const DB& db, const LIST& params, IfcFaceBasedSurfaceModel* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcGeometricRepresentationItem*>(in)); -- if (params.GetSize() < 1) { throw STEP::TypeError("expected 1 arguments to IfcFaceBasedSurfaceModel"); } do { // convert the 'FbsmFaces' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- try { GenericConvert( in->FbsmFaces, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcFaceBasedSurfaceModel to be a `SET [1:?] OF IfcConnectedFaceSet`")); } -- } while(0); -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcEnergyConversionDevice>(const DB& db, const LIST& params, IfcEnergyConversionDevice* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcDistributionFlowElement*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcRampFlight>(const DB& db, const LIST& params, IfcRampFlight* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcBuildingElement*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcVertexLoop>(const DB& db, const LIST& params, IfcVertexLoop* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcLoop*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcPlate>(const DB& db, const LIST& params, IfcPlate* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcBuildingElement*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcUShapeProfileDef>(const DB& db, const LIST& params, IfcUShapeProfileDef* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcParameterizedProfileDef*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcFaceBound>(const DB& db, const LIST& params, IfcFaceBound* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcTopologicalRepresentationItem*>(in)); -- if (params.GetSize() < 2) { throw STEP::TypeError("expected 2 arguments to IfcFaceBound"); } do { // convert the 'Bound' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcFaceBound,2>::aux_is_derived[0]=true; break; } -- try { GenericConvert( in->Bound, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcFaceBound to be a `IfcLoop`")); } -- } while(0); -- do { // convert the 'Orientation' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcFaceBound,2>::aux_is_derived[1]=true; break; } -- try { GenericConvert( in->Orientation, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 1 to IfcFaceBound to be a `BOOLEAN`")); } -- } while(0); -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcFaceOuterBound>(const DB& db, const LIST& params, IfcFaceOuterBound* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcFaceBound*>(in)); -- if (params.GetSize() < 2) { throw STEP::TypeError("expected 2 arguments to IfcFaceOuterBound"); } return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcOneDirectionRepeatFactor>(const DB& db, const LIST& params, IfcOneDirectionRepeatFactor* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcGeometricRepresentationItem*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcBoilerType>(const DB& db, const LIST& params, IfcBoilerType* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcEnergyConversionDeviceType*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcConstructionEquipmentResource>(const DB& db, const LIST& params, IfcConstructionEquipmentResource* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcConstructionResource*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcComplexProperty>(const DB& db, const LIST& params, IfcComplexProperty* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcProperty*>(in)); -- if (params.GetSize() < 4) { throw STEP::TypeError("expected 4 arguments to IfcComplexProperty"); } do { // convert the 'UsageName' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- try { GenericConvert( in->UsageName, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 2 to IfcComplexProperty to be a `IfcIdentifier`")); } -- } while(0); -- do { // convert the 'HasProperties' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- try { GenericConvert( in->HasProperties, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 3 to IfcComplexProperty to be a `SET [1:?] OF IfcProperty`")); } -- } while(0); -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcFooting>(const DB& db, const LIST& params, IfcFooting* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcBuildingElement*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcConstructionProductResource>(const DB& db, const LIST& params, IfcConstructionProductResource* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcConstructionResource*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcDerivedProfileDef>(const DB& db, const LIST& params, IfcDerivedProfileDef* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcProfileDef*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcPropertyTableValue>(const DB& db, const LIST& params, IfcPropertyTableValue* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcSimpleProperty*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcFlowMeterType>(const DB& db, const LIST& params, IfcFlowMeterType* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcFlowControllerType*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcDoorStyle>(const DB& db, const LIST& params, IfcDoorStyle* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcTypeProduct*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcUnitAssignment>(const DB& db, const LIST& params, IfcUnitAssignment* in) --{ -- size_t base = 0; -- if (params.GetSize() < 1) { throw STEP::TypeError("expected 1 arguments to IfcUnitAssignment"); } do { // convert the 'Units' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- try { GenericConvert( in->Units, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcUnitAssignment to be a `SET [1:?] OF IfcUnit`")); } -- } while(0); -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcFlowTerminal>(const DB& db, const LIST& params, IfcFlowTerminal* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcDistributionFlowElement*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcCraneRailFShapeProfileDef>(const DB& db, const LIST& params, IfcCraneRailFShapeProfileDef* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcParameterizedProfileDef*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcFlowSegment>(const DB& db, const LIST& params, IfcFlowSegment* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcDistributionFlowElement*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcElementQuantity>(const DB& db, const LIST& params, IfcElementQuantity* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcPropertySetDefinition*>(in)); -- if (params.GetSize() < 6) { throw STEP::TypeError("expected 6 arguments to IfcElementQuantity"); } do { // convert the 'MethodOfMeasurement' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- if (dynamic_cast<const UNSET*>(&*arg)) break; -- try { GenericConvert( in->MethodOfMeasurement, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 4 to IfcElementQuantity to be a `IfcLabel`")); } -- } while(0); -- do { // convert the 'Quantities' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- try { GenericConvert( in->Quantities, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 5 to IfcElementQuantity to be a `SET [1:?] OF IfcPhysicalQuantity`")); } -- } while(0); -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcCurtainWall>(const DB& db, const LIST& params, IfcCurtainWall* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcBuildingElement*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcDiscreteAccessory>(const DB& db, const LIST& params, IfcDiscreteAccessory* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcElementComponent*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcGrid>(const DB& db, const LIST& params, IfcGrid* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcProduct*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcSanitaryTerminalType>(const DB& db, const LIST& params, IfcSanitaryTerminalType* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcFlowTerminalType*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcSubedge>(const DB& db, const LIST& params, IfcSubedge* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcEdge*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcFilterType>(const DB& db, const LIST& params, IfcFilterType* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcFlowTreatmentDeviceType*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcTendon>(const DB& db, const LIST& params, IfcTendon* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcReinforcingElement*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcStructuralLoadGroup>(const DB& db, const LIST& params, IfcStructuralLoadGroup* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcGroup*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcPresentationStyleAssignment>(const DB& db, const LIST& params, IfcPresentationStyleAssignment* in) --{ -- size_t base = 0; -- if (params.GetSize() < 1) { throw STEP::TypeError("expected 1 arguments to IfcPresentationStyleAssignment"); } do { // convert the 'Styles' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- try { GenericConvert( in->Styles, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcPresentationStyleAssignment to be a `SET [1:?] OF IfcPresentationStyleSelect`")); } -- } while(0); -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcStructuralCurveMember>(const DB& db, const LIST& params, IfcStructuralCurveMember* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcStructuralMember*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcLightSourceAmbient>(const DB& db, const LIST& params, IfcLightSourceAmbient* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcLightSource*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcCondition>(const DB& db, const LIST& params, IfcCondition* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcGroup*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcPort>(const DB& db, const LIST& params, IfcPort* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcProduct*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcSpace>(const DB& db, const LIST& params, IfcSpace* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcSpatialStructureElement*>(in)); -- if (params.GetSize() < 11) { throw STEP::TypeError("expected 11 arguments to IfcSpace"); } do { // convert the 'InteriorOrExteriorSpace' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- try { GenericConvert( in->InteriorOrExteriorSpace, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 9 to IfcSpace to be a `IfcInternalOrExternalEnum`")); } -- } while(0); -- do { // convert the 'ElevationWithFlooring' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- if (dynamic_cast<const UNSET*>(&*arg)) break; -- try { GenericConvert( in->ElevationWithFlooring, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 10 to IfcSpace to be a `IfcLengthMeasure`")); } -- } while(0); -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcHeatExchangerType>(const DB& db, const LIST& params, IfcHeatExchangerType* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcEnergyConversionDeviceType*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcTankType>(const DB& db, const LIST& params, IfcTankType* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcFlowStorageDeviceType*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcInventory>(const DB& db, const LIST& params, IfcInventory* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcGroup*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcTransportElementType>(const DB& db, const LIST& params, IfcTransportElementType* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcElementType*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcAirToAirHeatRecoveryType>(const DB& db, const LIST& params, IfcAirToAirHeatRecoveryType* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcEnergyConversionDeviceType*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcStairFlight>(const DB& db, const LIST& params, IfcStairFlight* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcBuildingElement*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcElectricalElement>(const DB& db, const LIST& params, IfcElectricalElement* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcElement*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcSurfaceStyleWithTextures>(const DB& db, const LIST& params, IfcSurfaceStyleWithTextures* in) --{ -- size_t base = 0; -- if (params.GetSize() < 1) { throw STEP::TypeError("expected 1 arguments to IfcSurfaceStyleWithTextures"); } do { // convert the 'Textures' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- try { GenericConvert( in->Textures, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcSurfaceStyleWithTextures to be a `LIST [1:?] OF IfcSurfaceTexture`")); } -- } while(0); -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcBoundingBox>(const DB& db, const LIST& params, IfcBoundingBox* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcGeometricRepresentationItem*>(in)); -- if (params.GetSize() < 4) { throw STEP::TypeError("expected 4 arguments to IfcBoundingBox"); } do { // convert the 'Corner' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- try { GenericConvert( in->Corner, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcBoundingBox to be a `IfcCartesianPoint`")); } -- } while(0); -- do { // convert the 'XDim' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- try { GenericConvert( in->XDim, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 1 to IfcBoundingBox to be a `IfcPositiveLengthMeasure`")); } -- } while(0); -- do { // convert the 'YDim' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- try { GenericConvert( in->YDim, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 2 to IfcBoundingBox to be a `IfcPositiveLengthMeasure`")); } -- } while(0); -- do { // convert the 'ZDim' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- try { GenericConvert( in->ZDim, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 3 to IfcBoundingBox to be a `IfcPositiveLengthMeasure`")); } -- } while(0); -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcWallType>(const DB& db, const LIST& params, IfcWallType* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcBuildingElementType*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcMove>(const DB& db, const LIST& params, IfcMove* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcTask*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcCircle>(const DB& db, const LIST& params, IfcCircle* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcConic*>(in)); -- if (params.GetSize() < 2) { throw STEP::TypeError("expected 2 arguments to IfcCircle"); } do { // convert the 'Radius' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- try { GenericConvert( in->Radius, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 1 to IfcCircle to be a `IfcPositiveLengthMeasure`")); } -- } while(0); -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcOffsetCurve2D>(const DB& db, const LIST& params, IfcOffsetCurve2D* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcCurve*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcPointOnCurve>(const DB& db, const LIST& params, IfcPointOnCurve* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcPoint*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcStructuralResultGroup>(const DB& db, const LIST& params, IfcStructuralResultGroup* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcGroup*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcSectionedSpine>(const DB& db, const LIST& params, IfcSectionedSpine* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcGeometricRepresentationItem*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcSlab>(const DB& db, const LIST& params, IfcSlab* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcBuildingElement*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcVertex>(const DB& db, const LIST& params, IfcVertex* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcTopologicalRepresentationItem*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcVertexPoint>(const DB& db, const LIST& params, IfcVertexPoint* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcVertex*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcStructuralLinearAction>(const DB& db, const LIST& params, IfcStructuralLinearAction* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcStructuralAction*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcStructuralLinearActionVarying>(const DB& db, const LIST& params, IfcStructuralLinearActionVarying* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcStructuralLinearAction*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcBuildingElementProxyType>(const DB& db, const LIST& params, IfcBuildingElementProxyType* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcBuildingElementType*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcProjectionElement>(const DB& db, const LIST& params, IfcProjectionElement* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcFeatureElementAddition*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcConversionBasedUnit>(const DB& db, const LIST& params, IfcConversionBasedUnit* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcNamedUnit*>(in)); -- if (params.GetSize() < 4) { throw STEP::TypeError("expected 4 arguments to IfcConversionBasedUnit"); } do { // convert the 'Name' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- try { GenericConvert( in->Name, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 2 to IfcConversionBasedUnit to be a `IfcLabel`")); } -- } while(0); -- do { // convert the 'ConversionFactor' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- try { GenericConvert( in->ConversionFactor, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 3 to IfcConversionBasedUnit to be a `IfcMeasureWithUnit`")); } -- } while(0); -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcGeometricRepresentationSubContext>(const DB& db, const LIST& params, IfcGeometricRepresentationSubContext* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcGeometricRepresentationContext*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcAnnotationSurfaceOccurrence>(const DB& db, const LIST& params, IfcAnnotationSurfaceOccurrence* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcAnnotationOccurrence*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcRoundedEdgeFeature>(const DB& db, const LIST& params, IfcRoundedEdgeFeature* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcEdgeFeature*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcElectricDistributionPoint>(const DB& db, const LIST& params, IfcElectricDistributionPoint* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcFlowController*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcCableCarrierSegmentType>(const DB& db, const LIST& params, IfcCableCarrierSegmentType* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcFlowSegmentType*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcWallStandardCase>(const DB& db, const LIST& params, IfcWallStandardCase* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcWall*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcCsgSolid>(const DB& db, const LIST& params, IfcCsgSolid* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcSolidModel*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcBeamType>(const DB& db, const LIST& params, IfcBeamType* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcBuildingElementType*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcAnnotationFillArea>(const DB& db, const LIST& params, IfcAnnotationFillArea* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcGeometricRepresentationItem*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcStructuralCurveMemberVarying>(const DB& db, const LIST& params, IfcStructuralCurveMemberVarying* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcStructuralCurveMember*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcPointOnSurface>(const DB& db, const LIST& params, IfcPointOnSurface* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcPoint*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcOrderAction>(const DB& db, const LIST& params, IfcOrderAction* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcTask*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcEdgeLoop>(const DB& db, const LIST& params, IfcEdgeLoop* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcLoop*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcAnnotationFillAreaOccurrence>(const DB& db, const LIST& params, IfcAnnotationFillAreaOccurrence* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcAnnotationOccurrence*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcWorkPlan>(const DB& db, const LIST& params, IfcWorkPlan* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcWorkControl*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcEllipse>(const DB& db, const LIST& params, IfcEllipse* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcConic*>(in)); -- if (params.GetSize() < 3) { throw STEP::TypeError("expected 3 arguments to IfcEllipse"); } do { // convert the 'SemiAxis1' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- try { GenericConvert( in->SemiAxis1, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 1 to IfcEllipse to be a `IfcPositiveLengthMeasure`")); } -- } while(0); -- do { // convert the 'SemiAxis2' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- try { GenericConvert( in->SemiAxis2, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 2 to IfcEllipse to be a `IfcPositiveLengthMeasure`")); } -- } while(0); -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcProductDefinitionShape>(const DB& db, const LIST& params, IfcProductDefinitionShape* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcProductRepresentation*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcProjectionCurve>(const DB& db, const LIST& params, IfcProjectionCurve* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcAnnotationCurveOccurrence*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcElectricalCircuit>(const DB& db, const LIST& params, IfcElectricalCircuit* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcSystem*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcRationalBezierCurve>(const DB& db, const LIST& params, IfcRationalBezierCurve* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcBezierCurve*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcStructuralPointAction>(const DB& db, const LIST& params, IfcStructuralPointAction* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcStructuralAction*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcPipeSegmentType>(const DB& db, const LIST& params, IfcPipeSegmentType* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcFlowSegmentType*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcTwoDirectionRepeatFactor>(const DB& db, const LIST& params, IfcTwoDirectionRepeatFactor* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcOneDirectionRepeatFactor*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcShapeRepresentation>(const DB& db, const LIST& params, IfcShapeRepresentation* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcShapeModel*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcPropertySet>(const DB& db, const LIST& params, IfcPropertySet* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcPropertySetDefinition*>(in)); -- if (params.GetSize() < 5) { throw STEP::TypeError("expected 5 arguments to IfcPropertySet"); } do { // convert the 'HasProperties' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- try { GenericConvert( in->HasProperties, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 4 to IfcPropertySet to be a `SET [1:?] OF IfcProperty`")); } -- } while(0); -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcSurfaceStyleRendering>(const DB& db, const LIST& params, IfcSurfaceStyleRendering* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcSurfaceStyleShading*>(in)); -- if (params.GetSize() < 9) { throw STEP::TypeError("expected 9 arguments to IfcSurfaceStyleRendering"); } do { // convert the 'Transparency' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- if (dynamic_cast<const UNSET*>(&*arg)) break; -- try { GenericConvert( in->Transparency, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 1 to IfcSurfaceStyleRendering to be a `IfcNormalisedRatioMeasure`")); } -- } while(0); -- do { // convert the 'DiffuseColour' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- if (dynamic_cast<const UNSET*>(&*arg)) break; -- try { GenericConvert( in->DiffuseColour, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 2 to IfcSurfaceStyleRendering to be a `IfcColourOrFactor`")); } -- } while(0); -- do { // convert the 'TransmissionColour' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- if (dynamic_cast<const UNSET*>(&*arg)) break; -- try { GenericConvert( in->TransmissionColour, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 3 to IfcSurfaceStyleRendering to be a `IfcColourOrFactor`")); } -- } while(0); -- do { // convert the 'DiffuseTransmissionColour' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- if (dynamic_cast<const UNSET*>(&*arg)) break; -- try { GenericConvert( in->DiffuseTransmissionColour, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 4 to IfcSurfaceStyleRendering to be a `IfcColourOrFactor`")); } -- } while(0); -- do { // convert the 'ReflectionColour' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- if (dynamic_cast<const UNSET*>(&*arg)) break; -- try { GenericConvert( in->ReflectionColour, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 5 to IfcSurfaceStyleRendering to be a `IfcColourOrFactor`")); } -- } while(0); -- do { // convert the 'SpecularColour' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- if (dynamic_cast<const UNSET*>(&*arg)) break; -- try { GenericConvert( in->SpecularColour, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 6 to IfcSurfaceStyleRendering to be a `IfcColourOrFactor`")); } -- } while(0); -- do { // convert the 'SpecularHighlight' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- if (dynamic_cast<const UNSET*>(&*arg)) break; -- try { GenericConvert( in->SpecularHighlight, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 7 to IfcSurfaceStyleRendering to be a `IfcSpecularHighlightSelect`")); } -- } while(0); -- do { // convert the 'ReflectanceMethod' argument -- boost::shared_ptr<const DataType> arg = params[base++]; -- try { GenericConvert( in->ReflectanceMethod, arg, db ); break; } -- catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 8 to IfcSurfaceStyleRendering to be a `IfcReflectanceMethodEnum`")); } -- } while(0); -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcDistributionPort>(const DB& db, const LIST& params, IfcDistributionPort* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcPort*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcPipeFittingType>(const DB& db, const LIST& params, IfcPipeFittingType* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcFlowFittingType*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcTransportElement>(const DB& db, const LIST& params, IfcTransportElement* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcElement*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcAnnotationTextOccurrence>(const DB& db, const LIST& params, IfcAnnotationTextOccurrence* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcAnnotationOccurrence*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcStructuralAnalysisModel>(const DB& db, const LIST& params, IfcStructuralAnalysisModel* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcSystem*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} --// ----------------------------------------------------------------------------------------------------------- --template <> size_t GenericFill<IfcConditionCriterion>(const DB& db, const LIST& params, IfcConditionCriterion* in) --{ -- size_t base = GenericFill(db,params,static_cast<IfcControl*>(in)); --// this data structure is not used yet, so there is no code generated to fill its members -- return base; --} -- --} // ! STEP --} // ! Assimp -- --#endif -diff --git a/src/3rdparty/assimp/code/IFCReaderGen1.cpp b/src/3rdparty/assimp/code/IFCReaderGen1.cpp -new file mode 100644 -index 0000000..bbf25c2 ---- /dev/null -+++ b/src/3rdparty/assimp/code/IFCReaderGen1.cpp -@@ -0,0 +1,3168 @@ -+/* -+Open Asset Import Library (ASSIMP) -+---------------------------------------------------------------------- -+ -+Copyright (c) 2006-2010, ASSIMP Development Team -+All rights reserved. -+ -+Redistribution and use of this software in source and binary forms, -+with or without modification, are permitted provided that the -+following conditions are met: -+ -+* Redistributions of source code must retain the above -+ copyright notice, this list of conditions and the -+ following disclaimer. -+ -+* Redistributions in binary form must reproduce the above -+ copyright notice, this list of conditions and the -+ following disclaimer in the documentation and/or other -+ materials provided with the distribution. -+ -+* Neither the name of the ASSIMP team, nor the names of its -+ contributors may be used to endorse or promote products -+ derived from this software without specific prior -+ written permission of the ASSIMP Development Team. -+ -+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -+"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -+LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -+A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -+OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -+SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -+LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -+DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -+THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -+(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -+OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -+ -+---------------------------------------------------------------------- -+*/ -+ -+/** MACHINE-GENERATED by scripts/ICFImporter/CppGenerator.py */ -+ -+#include "AssimpPCH.h" -+#ifndef ASSIMP_BUILD_NO_IFC_IMPORTER -+ -+#include "IFCReaderGen.h" -+ -+namespace Assimp { -+using namespace IFC; -+ -+namespace { -+ -+ typedef EXPRESS::ConversionSchema::SchemaEntry SchemaEntry; -+ const SchemaEntry schema_raw[] = { -+ SchemaEntry("ifcstairtypeenum",NULL ) -+, SchemaEntry("ifcspacetypeenum",NULL ) -+, SchemaEntry("ifcwalltypeenum",NULL ) -+, SchemaEntry("ifcmonthinyearnumber",NULL ) -+, SchemaEntry("ifcheatfluxdensitymeasure",NULL ) -+, SchemaEntry("ifckinematicviscositymeasure",NULL ) -+, SchemaEntry("ifcsequenceenum",NULL ) -+, SchemaEntry("ifcairtoairheatrecoverytypeenum",NULL ) -+, SchemaEntry("ifcactorselect",NULL ) -+, SchemaEntry("ifctransformertypeenum",NULL ) -+, SchemaEntry("ifcunitaryequipmenttypeenum",NULL ) -+, SchemaEntry("ifcelectricflowstoragedevicetypeenum",NULL ) -+, SchemaEntry("ifcenergysequenceenum",NULL ) -+, SchemaEntry("ifcworkcontroltypeenum",NULL ) -+, SchemaEntry("ifccurvaturemeasure",NULL ) -+, SchemaEntry("ifcparametervalue",NULL ) -+, SchemaEntry("ifcappliedvalueselect",NULL ) -+, SchemaEntry("ifcwarpingconstantmeasure",NULL ) -+, SchemaEntry("ifcarithmeticoperatorenum",NULL ) -+, SchemaEntry("ifclinearforcemeasure",NULL ) -+, SchemaEntry("ifcwindowpanelpositionenum",NULL ) -+, SchemaEntry("ifcflowmetertypeenum",NULL ) -+, SchemaEntry("ifcrampflighttypeenum",NULL ) -+, SchemaEntry("ifcspecularhighlightselect",NULL ) -+, SchemaEntry("ifcactiontypeenum",NULL ) -+, SchemaEntry("ifcgeometricprojectionenum",NULL ) -+, SchemaEntry("ifctimeseriesdatatypeenum",NULL ) -+, SchemaEntry("ifcmagneticfluxmeasure",NULL ) -+, SchemaEntry("ifcobjecttypeenum",NULL ) -+, SchemaEntry("ifcdataoriginenum",NULL ) -+, SchemaEntry("ifcmassdensitymeasure",NULL ) -+, SchemaEntry("ifclightfixturetypeenum",NULL ) -+, SchemaEntry("ifcservicelifetypeenum",NULL ) -+, SchemaEntry("ifcelectricvoltagemeasure",NULL ) -+, SchemaEntry("ifcheatingvaluemeasure",NULL ) -+, SchemaEntry("ifcpresentabletext",NULL ) -+, SchemaEntry("ifcaheadorbehind",NULL ) -+, SchemaEntry("ifcsimplevalue",NULL ) -+, SchemaEntry("ifcsensortypeenum",NULL ) -+, SchemaEntry("ifcderivedunitenum",NULL ) -+, SchemaEntry("ifcsizeselect",NULL ) -+, SchemaEntry("ifctransportelementtypeenum",NULL ) -+, SchemaEntry("ifcinventorytypeenum",NULL ) -+, SchemaEntry("ifctextdecoration",NULL ) -+, SchemaEntry("ifcdirectionsenseenum",NULL ) -+, SchemaEntry("ifcductfittingtypeenum",NULL ) -+, SchemaEntry("ifcdocumentstatusenum",NULL ) -+, SchemaEntry("ifcslabtypeenum",NULL ) -+, SchemaEntry("ifcdoorstyleconstructionenum",NULL ) -+, SchemaEntry("ifcvolumemeasure",NULL ) -+, SchemaEntry("ifcinductancemeasure",NULL ) -+, SchemaEntry("ifccurtainwalltypeenum",NULL ) -+, SchemaEntry("ifcsiunitname",NULL ) -+, SchemaEntry("ifcspecularexponent",NULL ) -+, SchemaEntry("ifcsoundpressuremeasure",NULL ) -+, SchemaEntry("ifcanalysistheorytypeenum",NULL ) -+, SchemaEntry("ifcgasterminaltypeenum",NULL ) -+, SchemaEntry("ifcyearnumber",NULL ) -+, SchemaEntry("ifcmodulusofelasticitymeasure",NULL ) -+, SchemaEntry("ifcchangeactionenum",NULL ) -+, SchemaEntry("ifcdampertypeenum",NULL ) -+, SchemaEntry("ifcevaporatortypeenum",NULL ) -+, SchemaEntry("ifcionconcentrationmeasure",NULL ) -+, SchemaEntry("ifcductsegmenttypeenum",NULL ) -+, SchemaEntry("ifcprotectivedevicetypeenum",NULL ) -+, SchemaEntry("ifcabsorbeddosemeasure",NULL ) -+, SchemaEntry("ifcmassperlengthmeasure",NULL ) -+, SchemaEntry("ifctextfontname",NULL ) -+, SchemaEntry("ifcorientationselect",NULL ) -+, SchemaEntry("ifcilluminancemeasure",NULL ) -+, SchemaEntry("ifcfiresuppressionterminaltypeenum",NULL ) -+, SchemaEntry("ifcfontstyle",NULL ) -+, SchemaEntry("ifcmomentofinertiameasure",NULL ) -+, SchemaEntry("ifcmodulusofsubgradereactionmeasure",NULL ) -+, SchemaEntry("ifccomplexnumber",NULL ) -+, SchemaEntry("ifchumidifiertypeenum",NULL ) -+, SchemaEntry("ifcpresentationstyleselect",NULL ) -+, SchemaEntry("ifcthermaltransmittancemeasure",NULL ) -+, SchemaEntry("ifcribplatedirectionenum",NULL ) -+, SchemaEntry("ifcclassificationnotationselect",NULL ) -+, SchemaEntry("ifcminuteinhour",NULL ) -+, SchemaEntry("ifcinternalorexternalenum",NULL ) -+, SchemaEntry("ifcrotationalfrequencymeasure",NULL ) -+, SchemaEntry("ifcsanitaryterminaltypeenum",NULL ) -+, SchemaEntry("ifcsymbolstyleselect",NULL ) -+, SchemaEntry("ifcelementcompositionenum",NULL ) -+, SchemaEntry("ifctextpath",NULL ) -+, SchemaEntry("ifcpowermeasure",NULL ) -+, SchemaEntry("ifcsurfacestyleelementselect",NULL ) -+, SchemaEntry("ifcresourceconsumptionenum",NULL ) -+, SchemaEntry("ifcelectriccapacitancemeasure",NULL ) -+, SchemaEntry("ifclayersetdirectionenum",NULL ) -+, SchemaEntry("ifcrailingtypeenum",NULL ) -+, SchemaEntry("ifcobjectiveenum",NULL ) -+, SchemaEntry("ifcdocumentselect",NULL ) -+, SchemaEntry("ifcmodulusoflinearsubgradereactionmeasure",NULL ) -+, SchemaEntry("ifcthermaladmittancemeasure",NULL ) -+, SchemaEntry("ifctransitioncode",NULL ) -+, SchemaEntry("ifcconnectiontypeenum",NULL ) -+, SchemaEntry("ifcmonetarymeasure",NULL ) -+, SchemaEntry("ifcstackterminaltypeenum",NULL ) -+, SchemaEntry("ifccolour",NULL ) -+, SchemaEntry("ifctext",NULL ) -+, SchemaEntry("ifccontextdependentmeasure",NULL ) -+, SchemaEntry("ifcthermalconductivitymeasure",NULL ) -+, SchemaEntry("ifcprojectedortruelengthenum",NULL ) -+, SchemaEntry("ifcpressuremeasure",NULL ) -+, SchemaEntry("ifcmoisturediffusivitymeasure",NULL ) -+, SchemaEntry("ifcbooleanoperator",NULL ) -+, SchemaEntry("ifcpropertysourceenum",NULL ) -+, SchemaEntry("ifctimestamp",NULL ) -+, SchemaEntry("ifcmaterialselect",NULL ) -+, SchemaEntry("ifcgloballyuniqueid",NULL ) -+, SchemaEntry("ifcreflectancemethodenum",NULL ) -+, SchemaEntry("ifcvaporpermeabilitymeasure",NULL ) -+, SchemaEntry("ifctimeseriesscheduletypeenum",NULL ) -+, SchemaEntry("ifclinearmomentmeasure",NULL ) -+, SchemaEntry("ifcgeometricsetselect",NULL ) -+, SchemaEntry("ifcsectionmodulusmeasure",NULL ) -+, SchemaEntry("ifcbsplinecurveform",NULL ) -+, SchemaEntry("ifcdimensionextentusage",NULL ) -+, SchemaEntry("ifcthermalexpansioncoefficientmeasure",NULL ) -+, SchemaEntry("ifchourinday",NULL ) -+, SchemaEntry("ifclinearvelocitymeasure",NULL ) -+, SchemaEntry("ifctorquemeasure",NULL ) -+, SchemaEntry("ifctemperaturegradientmeasure",NULL ) -+, SchemaEntry("ifcfillstyleselect",NULL ) -+, SchemaEntry("ifcelectricchargemeasure",NULL ) -+, SchemaEntry("ifcheatexchangertypeenum",NULL ) -+, SchemaEntry("ifcelectriccurrentenum",NULL ) -+, SchemaEntry("ifcdaylightsavinghour",NULL ) -+, SchemaEntry("ifcshell",NULL ) -+, SchemaEntry("ifcdoseequivalentmeasure",NULL ) -+, SchemaEntry("ifcprojectordertypeenum",NULL ) -+, SchemaEntry("ifcderivedmeasurevalue",NULL ) -+, SchemaEntry("ifclightdistributioncurveenum",NULL ) -+, SchemaEntry("ifcwarpingmomentmeasure",NULL ) -+, SchemaEntry("ifcmembertypeenum",NULL ) -+, SchemaEntry("ifcsoundpowermeasure",NULL ) -+, SchemaEntry("ifctextalignment",NULL ) -+, SchemaEntry("ifccurveoredgecurve",NULL ) -+, SchemaEntry("ifcmassflowratemeasure",NULL ) -+, SchemaEntry("ifcisothermalmoisturecapacitymeasure",NULL ) -+, SchemaEntry("ifccsgselect",NULL ) -+, SchemaEntry("ifccoolingtowertypeenum",NULL ) -+, SchemaEntry("ifcmassmeasure",NULL ) -+, SchemaEntry("ifcpileconstructionenum",NULL ) -+, SchemaEntry("ifcdoorstyleoperationenum",NULL ) -+, SchemaEntry("ifcflowdirectionenum",NULL ) -+, SchemaEntry("ifcthermalloadsourceenum",NULL ) -+, SchemaEntry("ifclengthmeasure",NULL ) -+, SchemaEntry("ifcconstraintenum",NULL ) -+, SchemaEntry("ifcaxis2placement",NULL ) -+, SchemaEntry("ifcloadgrouptypeenum",NULL ) -+, SchemaEntry("ifcvalue",NULL ) -+, SchemaEntry("ifcreinforcingbarsurfaceenum",NULL ) -+, SchemaEntry("ifcprojectorderrecordtypeenum",NULL ) -+, SchemaEntry("ifcdatetimeselect",NULL ) -+, SchemaEntry("ifcstructuralsurfacetypeenum",NULL ) -+, SchemaEntry("ifcpermeablecoveringoperationenum",NULL ) -+, SchemaEntry("ifcfontweight",NULL ) -+, SchemaEntry("ifcphmeasure",NULL ) -+, SchemaEntry("ifcdescriptivemeasure",NULL ) -+, SchemaEntry("ifccurvestylefontselect",NULL ) -+, SchemaEntry("ifcunit",NULL ) -+, SchemaEntry("ifchatchlinedistanceselect",NULL ) -+, SchemaEntry("ifctextstyleselect",NULL ) -+, SchemaEntry("ifcmetricvalueselect",NULL ) -+, SchemaEntry("ifcvectorordirection",NULL ) -+, SchemaEntry("ifcassemblyplaceenum",NULL ) -+, SchemaEntry("ifcairterminaltypeenum",NULL ) -+, SchemaEntry("ifccoveringtypeenum",NULL ) -+, SchemaEntry("ifcplanarforcemeasure",NULL ) -+, SchemaEntry("ifcvalvetypeenum",NULL ) -+, SchemaEntry("ifcalarmtypeenum",NULL ) -+, SchemaEntry("ifcdynamicviscositymeasure",NULL ) -+, SchemaEntry("ifccurrencyenum",NULL ) -+, SchemaEntry("ifcmodulusofrotationalsubgradereactionmeasure",NULL ) -+, SchemaEntry("ifccablecarrierfittingtypeenum",NULL ) -+, SchemaEntry("ifcboolean",NULL ) -+, SchemaEntry("ifcactionsourcetypeenum",NULL ) -+, SchemaEntry("ifcstructuralactivityassignmentselect",NULL ) -+, SchemaEntry("ifcdistributionchamberelementtypeenum",NULL ) -+, SchemaEntry("ifcevaporativecoolertypeenum",NULL ) -+, SchemaEntry("ifcmagneticfluxdensitymeasure",NULL ) -+, SchemaEntry("ifclightdistributiondatasourceselect",NULL ) -+, SchemaEntry("ifctubebundletypeenum",NULL ) -+, SchemaEntry("ifcaccelerationmeasure",NULL ) -+, SchemaEntry("ifcboilertypeenum",NULL ) -+, SchemaEntry("ifcramptypeenum",NULL ) -+, SchemaEntry("ifcluminousintensitydistributionmeasure",NULL ) -+, SchemaEntry("ifctrimmingpreference",NULL ) -+, SchemaEntry("ifcspecificheatcapacitymeasure",NULL ) -+, SchemaEntry("ifcamountofsubstancemeasure",NULL ) -+, SchemaEntry("ifcroleenum",NULL ) -+, SchemaEntry("ifcdocumentconfidentialityenum",NULL ) -+, SchemaEntry("ifcfrequencymeasure",NULL ) -+, SchemaEntry("ifcsectiontypeenum",NULL ) -+, SchemaEntry("ifcelementassemblytypeenum",NULL ) -+, SchemaEntry("ifcfootingtypeenum",NULL ) -+, SchemaEntry("ifclayereditem",NULL ) -+, SchemaEntry("ifccablesegmenttypeenum",NULL ) -+, SchemaEntry("ifcdefinedsymbolselect",NULL ) -+, SchemaEntry("ifcbuildingelementproxytypeenum",NULL ) -+, SchemaEntry("ifcelectricgeneratortypeenum",NULL ) -+, SchemaEntry("ifcrotationalstiffnessmeasure",NULL ) -+, SchemaEntry("ifcspaceheatertypeenum",NULL ) -+, SchemaEntry("ifcareameasure",NULL ) -+, SchemaEntry("ifclabel",NULL ) -+, SchemaEntry("ifccostscheduletypeenum",NULL ) -+, SchemaEntry("ifcswitchingdevicetypeenum",NULL ) -+, SchemaEntry("ifcelectrictimecontroltypeenum",NULL ) -+, SchemaEntry("ifcfiltertypeenum",NULL ) -+, SchemaEntry("ifcpositivelengthmeasure",NULL ) -+, SchemaEntry("ifcnullstyle",NULL ) -+, SchemaEntry("ifcconditioncriterionselect",NULL ) -+, SchemaEntry("ifcshearmodulusmeasure",NULL ) -+, SchemaEntry("ifcnormalisedratiomeasure",NULL ) -+, SchemaEntry("ifcdoorpaneloperationenum",NULL ) -+, SchemaEntry("ifcpointorvertexpoint",NULL ) -+, SchemaEntry("ifcrooftypeenum",NULL ) -+, SchemaEntry("ifccountmeasure",NULL ) -+, SchemaEntry("ifcelectricconductancemeasure",NULL ) -+, SchemaEntry("ifcproceduretypeenum",NULL ) -+, SchemaEntry("ifcflowinstrumenttypeenum",NULL ) -+, SchemaEntry("ifcelectricmotortypeenum",NULL ) -+, SchemaEntry("ifcsurfaceside",NULL ) -+, SchemaEntry("ifcstructuralcurvetypeenum",NULL ) -+, SchemaEntry("ifccondensertypeenum",NULL ) -+, SchemaEntry("ifclinearstiffnessmeasure",NULL ) -+, SchemaEntry("ifcunitenum",NULL ) -+, SchemaEntry("ifcoccupanttypeenum",NULL ) -+, SchemaEntry("ifcthermalloadtypeenum",NULL ) -+, SchemaEntry("ifcreinforcingbarroleenum",NULL ) -+, SchemaEntry("ifcbenchmarkenum",NULL ) -+, SchemaEntry("ifcpositiveplaneanglemeasure",NULL ) -+, SchemaEntry("ifctexttransformation",NULL ) -+, SchemaEntry("ifcdraughtingcalloutelement",NULL ) -+, SchemaEntry("ifcratiomeasure",NULL ) -+, SchemaEntry("ifcsolidanglemeasure",NULL ) -+, SchemaEntry("ifcpipesegmenttypeenum",NULL ) -+, SchemaEntry("ifccablecarriersegmenttypeenum",NULL ) -+, SchemaEntry("ifccolourorfactor",NULL ) -+, SchemaEntry("ifcidentifier",NULL ) -+, SchemaEntry("ifctendontypeenum",NULL ) -+, SchemaEntry("ifccontrollertypeenum",NULL ) -+, SchemaEntry("ifcradioactivitymeasure",NULL ) -+, SchemaEntry("ifctimemeasure",NULL ) -+, SchemaEntry("ifcpumptypeenum",NULL ) -+, SchemaEntry("ifcelectricheatertypeenum",NULL ) -+, SchemaEntry("ifcbeamtypeenum",NULL ) -+, SchemaEntry("ifcstateenum",NULL ) -+, SchemaEntry("ifcsiprefix",NULL ) -+, SchemaEntry("ifcnumericmeasure",NULL ) -+, SchemaEntry("ifcoutlettypeenum",NULL ) -+, SchemaEntry("ifccompoundplaneanglemeasure",NULL ) -+, SchemaEntry("ifcservicelifefactortypeenum",NULL ) -+, SchemaEntry("ifclogicaloperatorenum",NULL ) -+, SchemaEntry("ifcbooleanoperand",NULL ) -+, SchemaEntry("ifcobjectreferenceselect",NULL ) -+, SchemaEntry("ifccooledbeamtypeenum",NULL ) -+, SchemaEntry("ifcductsilencertypeenum",NULL ) -+, SchemaEntry("ifcsectionalareaintegralmeasure",NULL ) -+, SchemaEntry("ifcfontvariant",NULL ) -+, SchemaEntry("ifcvolumetricflowratemeasure",NULL ) -+, SchemaEntry("ifcplatetypeenum",NULL ) -+, SchemaEntry("ifcenvironmentalimpactcategoryenum",NULL ) -+, SchemaEntry("ifcvibrationisolatortypeenum",NULL ) -+, SchemaEntry("ifcthermodynamictemperaturemeasure",NULL ) -+, SchemaEntry("ifcrotationalmassmeasure",NULL ) -+, SchemaEntry("ifcsecondinminute",NULL ) -+, SchemaEntry("ifcdayinmonthnumber",NULL ) -+, SchemaEntry("ifcdimensioncount",NULL ) -+, SchemaEntry("ifcwindowstyleoperationenum",NULL ) -+, SchemaEntry("ifcthermalresistancemeasure",NULL ) -+, SchemaEntry("ifcmeasurevalue",NULL ) -+, SchemaEntry("ifcwindowpaneloperationenum",NULL ) -+, SchemaEntry("ifcchillertypeenum",NULL ) -+, SchemaEntry("ifcpositiveratiomeasure",NULL ) -+, SchemaEntry("ifcinteger",NULL ) -+, SchemaEntry("ifclogical",NULL ) -+, SchemaEntry("ifcjunctionboxtypeenum",NULL ) -+, SchemaEntry("ifcaddresstypeenum",NULL ) -+, SchemaEntry("ifcwasteterminaltypeenum",NULL ) -+, SchemaEntry("ifctrimmingselect",NULL ) -+, SchemaEntry("ifclightemissionsourceenum",NULL ) -+, SchemaEntry("ifcsoundscaleenum",NULL ) -+, SchemaEntry("ifcluminousfluxmeasure",NULL ) -+, SchemaEntry("ifcelectricresistancemeasure",NULL ) -+, SchemaEntry("ifcintegercountratemeasure",NULL ) -+, SchemaEntry("ifcphysicalorvirtualenum",NULL ) -+, SchemaEntry("ifcmolecularweightmeasure",NULL ) -+, SchemaEntry("ifcprofiletypeenum",NULL ) -+, SchemaEntry("ifcboxalignment",NULL ) -+, SchemaEntry("ifcglobalorlocalenum",NULL ) -+, SchemaEntry("ifcspecularroughness",NULL ) -+, SchemaEntry("ifclamptypeenum",NULL ) -+, SchemaEntry("ifcpiletypeenum",NULL ) -+, SchemaEntry("ifcelectriccurrentmeasure",NULL ) -+, SchemaEntry("ifcfantypeenum",NULL ) -+, SchemaEntry("ifcsurfaceorfacesurface",NULL ) -+, SchemaEntry("ifcpipefittingtypeenum",NULL ) -+, SchemaEntry("ifctanktypeenum",NULL ) -+, SchemaEntry("ifccurvefontorscaledcurvefontselect",NULL ) -+, SchemaEntry("ifcwindowstyleconstructionenum",NULL ) -+, SchemaEntry("ifcairterminalboxtypeenum",NULL ) -+, SchemaEntry("ifcstairflighttypeenum",NULL ) -+, SchemaEntry("ifcluminousintensitymeasure",NULL ) -+, SchemaEntry("ifcmotorconnectiontypeenum",NULL ) -+, SchemaEntry("ifcplaneanglemeasure",NULL ) -+, SchemaEntry("ifcactuatortypeenum",NULL ) -+, SchemaEntry("ifccolumntypeenum",NULL ) -+, SchemaEntry("ifctextfontselect",NULL ) -+, SchemaEntry("ifcdoorpanelpositionenum",NULL ) -+, SchemaEntry("ifccoiltypeenum",NULL ) -+, SchemaEntry("ifcangularvelocitymeasure",NULL ) -+, SchemaEntry("ifcanalysismodeltypeenum",NULL ) -+, SchemaEntry("ifclibraryselect",NULL ) -+, SchemaEntry("ifcforcemeasure",NULL ) -+, SchemaEntry("ifcfillareastyletileshapeselect",NULL ) -+, SchemaEntry("ifcelectricappliancetypeenum",NULL ) -+, SchemaEntry("ifcsurfacetextureenum",NULL ) -+, SchemaEntry("ifccharacterstyleselect",NULL ) -+, SchemaEntry("ifcenergymeasure",NULL ) -+, SchemaEntry("ifcreal",NULL ) -+, SchemaEntry("ifccompressortypeenum",NULL ) -+, SchemaEntry("ifcelectricdistributionpointfunctionenum",NULL ) -+, SchemaEntry("ifcroot",&STEP::ObjectHelper<IfcRoot,4>::Construct ) -+, SchemaEntry("ifcobjectdefinition",&STEP::ObjectHelper<IfcObjectDefinition,0>::Construct ) -+, SchemaEntry("ifctypeobject",&STEP::ObjectHelper<IfcTypeObject,2>::Construct ) -+, SchemaEntry("ifctypeproduct",&STEP::ObjectHelper<IfcTypeProduct,2>::Construct ) -+, SchemaEntry("ifcelementtype",&STEP::ObjectHelper<IfcElementType,1>::Construct ) -+, SchemaEntry("ifcdistributionelementtype",&STEP::ObjectHelper<IfcDistributionElementType,0>::Construct ) -+, SchemaEntry("ifcdistributionflowelementtype",&STEP::ObjectHelper<IfcDistributionFlowElementType,0>::Construct ) -+, SchemaEntry("ifcflowcontrollertype",&STEP::ObjectHelper<IfcFlowControllerType,0>::Construct ) -+, SchemaEntry("ifcelectrictimecontroltype",&STEP::ObjectHelper<IfcElectricTimeControlType,1>::Construct ) -+, SchemaEntry("ifcrepresentation",&STEP::ObjectHelper<IfcRepresentation,4>::Construct ) -+, SchemaEntry("ifcshapemodel",&STEP::ObjectHelper<IfcShapeModel,0>::Construct ) -+, SchemaEntry("ifctopologyrepresentation",&STEP::ObjectHelper<IfcTopologyRepresentation,0>::Construct ) -+, SchemaEntry("ifcrelationship",&STEP::ObjectHelper<IfcRelationship,0>::Construct ) -+, SchemaEntry("ifcrelconnects",&STEP::ObjectHelper<IfcRelConnects,0>::Construct ) -+, SchemaEntry("ifcrelcoversspaces",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcflowfittingtype",&STEP::ObjectHelper<IfcFlowFittingType,0>::Construct ) -+, SchemaEntry("ifccablecarrierfittingtype",&STEP::ObjectHelper<IfcCableCarrierFittingType,1>::Construct ) -+, SchemaEntry("ifcstructuralconnectioncondition",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcslippageconnectioncondition",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcenergyconversiondevicetype",&STEP::ObjectHelper<IfcEnergyConversionDeviceType,0>::Construct ) -+, SchemaEntry("ifccoiltype",&STEP::ObjectHelper<IfcCoilType,1>::Construct ) -+, SchemaEntry("ifcobject",&STEP::ObjectHelper<IfcObject,1>::Construct ) -+, SchemaEntry("ifccontrol",&STEP::ObjectHelper<IfcControl,0>::Construct ) -+, SchemaEntry("ifcperformancehistory",&STEP::ObjectHelper<IfcPerformanceHistory,1>::Construct ) -+, SchemaEntry("ifcrepresentationitem",&STEP::ObjectHelper<IfcRepresentationItem,0>::Construct ) -+, SchemaEntry("ifcgeometricrepresentationitem",&STEP::ObjectHelper<IfcGeometricRepresentationItem,0>::Construct ) -+, SchemaEntry("ifctextliteral",&STEP::ObjectHelper<IfcTextLiteral,3>::Construct ) -+, SchemaEntry("ifctextliteralwithextent",&STEP::ObjectHelper<IfcTextLiteralWithExtent,2>::Construct ) -+, SchemaEntry("ifcproductrepresentation",&STEP::ObjectHelper<IfcProductRepresentation,3>::Construct ) -+, SchemaEntry("ifcproduct",&STEP::ObjectHelper<IfcProduct,2>::Construct ) -+, SchemaEntry("ifcelement",&STEP::ObjectHelper<IfcElement,1>::Construct ) -+, SchemaEntry("ifcdistributionelement",&STEP::ObjectHelper<IfcDistributionElement,0>::Construct ) -+, SchemaEntry("ifcdistributionflowelement",&STEP::ObjectHelper<IfcDistributionFlowElement,0>::Construct ) -+, SchemaEntry("ifccurve",&STEP::ObjectHelper<IfcCurve,0>::Construct ) -+, SchemaEntry("ifcboundedcurve",&STEP::ObjectHelper<IfcBoundedCurve,0>::Construct ) -+, SchemaEntry("ifccompositecurve",&STEP::ObjectHelper<IfcCompositeCurve,2>::Construct ) -+, SchemaEntry("ifc2dcompositecurve",&STEP::ObjectHelper<Ifc2DCompositeCurve,0>::Construct ) -+, SchemaEntry("ifcboundarycondition",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcboundaryfacecondition",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifccartesiantransformationoperator",&STEP::ObjectHelper<IfcCartesianTransformationOperator,4>::Construct ) -+, SchemaEntry("ifccartesiantransformationoperator3d",&STEP::ObjectHelper<IfcCartesianTransformationOperator3D,1>::Construct ) -+, SchemaEntry("ifcproperty",&STEP::ObjectHelper<IfcProperty,2>::Construct ) -+, SchemaEntry("ifcsimpleproperty",&STEP::ObjectHelper<IfcSimpleProperty,0>::Construct ) -+, SchemaEntry("ifcpropertyenumeratedvalue",&STEP::ObjectHelper<IfcPropertyEnumeratedValue,2>::Construct ) -+, SchemaEntry("ifcpresentationlayerassignment",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcpresentationlayerwithstyle",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcbuildingelementtype",&STEP::ObjectHelper<IfcBuildingElementType,0>::Construct ) -+, SchemaEntry("ifcstairflighttype",&STEP::ObjectHelper<IfcStairFlightType,1>::Construct ) -+, SchemaEntry("ifcsurface",&STEP::ObjectHelper<IfcSurface,0>::Construct ) -+, SchemaEntry("ifcelementarysurface",&STEP::ObjectHelper<IfcElementarySurface,1>::Construct ) -+, SchemaEntry("ifcplane",&STEP::ObjectHelper<IfcPlane,0>::Construct ) -+, SchemaEntry("ifcbooleanresult",&STEP::ObjectHelper<IfcBooleanResult,3>::Construct ) -+, SchemaEntry("ifcbooleanclippingresult",&STEP::ObjectHelper<IfcBooleanClippingResult,0>::Construct ) -+, SchemaEntry("ifcsolidmodel",&STEP::ObjectHelper<IfcSolidModel,0>::Construct ) -+, SchemaEntry("ifcmanifoldsolidbrep",&STEP::ObjectHelper<IfcManifoldSolidBrep,1>::Construct ) -+, SchemaEntry("ifcprofileproperties",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcgeneralprofileproperties",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcstructuralprofileproperties",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcflowterminaltype",&STEP::ObjectHelper<IfcFlowTerminalType,0>::Construct ) -+, SchemaEntry("ifcstackterminaltype",&STEP::ObjectHelper<IfcStackTerminalType,1>::Construct ) -+, SchemaEntry("ifcstructuralitem",&STEP::ObjectHelper<IfcStructuralItem,0>::Construct ) -+, SchemaEntry("ifcstructuralconnection",&STEP::ObjectHelper<IfcStructuralConnection,1>::Construct ) -+, SchemaEntry("ifcstructuralcurveconnection",&STEP::ObjectHelper<IfcStructuralCurveConnection,0>::Construct ) -+, SchemaEntry("ifcjunctionboxtype",&STEP::ObjectHelper<IfcJunctionBoxType,1>::Construct ) -+, SchemaEntry("ifcrelassociates",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcrelassociatesconstraint",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcpropertydefinition",&STEP::ObjectHelper<IfcPropertyDefinition,0>::Construct ) -+, SchemaEntry("ifcpropertysetdefinition",&STEP::ObjectHelper<IfcPropertySetDefinition,0>::Construct ) -+, SchemaEntry("ifcdoorpanelproperties",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcconstraintrelationship",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcspacethermalloadproperties",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifclibraryinformation",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcprocess",&STEP::ObjectHelper<IfcProcess,0>::Construct ) -+, SchemaEntry("ifctask",&STEP::ObjectHelper<IfcTask,5>::Construct ) -+, SchemaEntry("ifcappliedvalue",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcenvironmentalimpactvalue",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcrelfillselement",&STEP::ObjectHelper<IfcRelFillsElement,2>::Construct ) -+, SchemaEntry("ifcprocedure",&STEP::ObjectHelper<IfcProcedure,3>::Construct ) -+, SchemaEntry("ifcstructuralload",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcstructuralloadstatic",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcstructuralloadsingledisplacement",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcproxy",&STEP::ObjectHelper<IfcProxy,2>::Construct ) -+, SchemaEntry("ifccurvestylefont",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcresource",&STEP::ObjectHelper<IfcResource,0>::Construct ) -+, SchemaEntry("ifcconstructionresource",&STEP::ObjectHelper<IfcConstructionResource,4>::Construct ) -+, SchemaEntry("ifcsubcontractresource",&STEP::ObjectHelper<IfcSubContractResource,2>::Construct ) -+, SchemaEntry("ifccalendardate",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcdocumentelectronicformat",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcrelcontainedinspatialstructure",&STEP::ObjectHelper<IfcRelContainedInSpatialStructure,2>::Construct ) -+, SchemaEntry("ifcmaterialproperties",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcproductsofcombustionproperties",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifctopologicalrepresentationitem",&STEP::ObjectHelper<IfcTopologicalRepresentationItem,0>::Construct ) -+, SchemaEntry("ifcedge",&STEP::ObjectHelper<IfcEdge,2>::Construct ) -+, SchemaEntry("ifcedgecurve",&STEP::ObjectHelper<IfcEdgeCurve,2>::Construct ) -+, SchemaEntry("ifcplatetype",&STEP::ObjectHelper<IfcPlateType,1>::Construct ) -+, SchemaEntry("ifcobjectplacement",&STEP::ObjectHelper<IfcObjectPlacement,0>::Construct ) -+, SchemaEntry("ifcgridplacement",&STEP::ObjectHelper<IfcGridPlacement,2>::Construct ) -+, SchemaEntry("ifcfiresuppressionterminaltype",&STEP::ObjectHelper<IfcFireSuppressionTerminalType,1>::Construct ) -+, SchemaEntry("ifcmechanicalmaterialproperties",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcflowstoragedevice",&STEP::ObjectHelper<IfcFlowStorageDevice,0>::Construct ) -+, SchemaEntry("ifcperson",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcsweptsurface",&STEP::ObjectHelper<IfcSweptSurface,2>::Construct ) -+, SchemaEntry("ifcsurfaceofrevolution",&STEP::ObjectHelper<IfcSurfaceOfRevolution,1>::Construct ) -+, SchemaEntry("ifcorientededge",&STEP::ObjectHelper<IfcOrientedEdge,2>::Construct ) -+, SchemaEntry("ifcownerhistory",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcrelassigns",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcrelassignstoactor",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcdirection",&STEP::ObjectHelper<IfcDirection,1>::Construct ) -+, SchemaEntry("ifcreinforcementbarproperties",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcprofiledef",&STEP::ObjectHelper<IfcProfileDef,2>::Construct ) -+, SchemaEntry("ifcparameterizedprofiledef",&STEP::ObjectHelper<IfcParameterizedProfileDef,1>::Construct ) -+, SchemaEntry("ifccshapeprofiledef",&STEP::ObjectHelper<IfcCShapeProfileDef,6>::Construct ) -+, SchemaEntry("ifcfeatureelement",&STEP::ObjectHelper<IfcFeatureElement,0>::Construct ) -+, SchemaEntry("ifcfeatureelementsubtraction",&STEP::ObjectHelper<IfcFeatureElementSubtraction,0>::Construct ) -+, SchemaEntry("ifcedgefeature",&STEP::ObjectHelper<IfcEdgeFeature,1>::Construct ) -+, SchemaEntry("ifcchamferedgefeature",&STEP::ObjectHelper<IfcChamferEdgeFeature,2>::Construct ) -+, SchemaEntry("ifcbuildingelement",&STEP::ObjectHelper<IfcBuildingElement,0>::Construct ) -+, SchemaEntry("ifccolumn",&STEP::ObjectHelper<IfcColumn,0>::Construct ) -+, SchemaEntry("ifcpropertyreferencevalue",&STEP::ObjectHelper<IfcPropertyReferenceValue,2>::Construct ) -+, SchemaEntry("ifcmaterialclassificationrelationship",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcelectricmotortype",&STEP::ObjectHelper<IfcElectricMotorType,1>::Construct ) -+, SchemaEntry("ifcspatialstructureelementtype",&STEP::ObjectHelper<IfcSpatialStructureElementType,0>::Construct ) -+, SchemaEntry("ifcspacetype",&STEP::ObjectHelper<IfcSpaceType,1>::Construct ) -+, SchemaEntry("ifcexternalreference",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcexternallydefinedhatchstyle",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifccolumntype",&STEP::ObjectHelper<IfcColumnType,1>::Construct ) -+, SchemaEntry("ifccranerailashapeprofiledef",&STEP::ObjectHelper<IfcCraneRailAShapeProfileDef,12>::Construct ) -+, SchemaEntry("ifccondensertype",&STEP::ObjectHelper<IfcCondenserType,1>::Construct ) -+, SchemaEntry("ifcrelconnectselements",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcrelconnectswithrealizingelements",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifccircleprofiledef",&STEP::ObjectHelper<IfcCircleProfileDef,1>::Construct ) -+, SchemaEntry("ifccirclehollowprofiledef",&STEP::ObjectHelper<IfcCircleHollowProfileDef,1>::Construct ) -+, SchemaEntry("ifcorganizationrelationship",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcplacement",&STEP::ObjectHelper<IfcPlacement,1>::Construct ) -+, SchemaEntry("ifcaxis2placement3d",&STEP::ObjectHelper<IfcAxis2Placement3D,2>::Construct ) -+, SchemaEntry("ifcpresentationstyle",&STEP::ObjectHelper<IfcPresentationStyle,1>::Construct ) -+, SchemaEntry("ifccurvestyle",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcequipmentelement",&STEP::ObjectHelper<IfcEquipmentElement,0>::Construct ) -+, SchemaEntry("ifccompositecurvesegment",&STEP::ObjectHelper<IfcCompositeCurveSegment,3>::Construct ) -+, SchemaEntry("ifcrectangleprofiledef",&STEP::ObjectHelper<IfcRectangleProfileDef,2>::Construct ) -+, SchemaEntry("ifcphysicalquantity",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcphysicalcomplexquantity",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcrelassociateslibrary",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcrelsequence",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcbuildingelementproxy",&STEP::ObjectHelper<IfcBuildingElementProxy,1>::Construct ) -+, SchemaEntry("ifcdistributioncontrolelementtype",&STEP::ObjectHelper<IfcDistributionControlElementType,0>::Construct ) -+, SchemaEntry("ifcflowinstrumenttype",&STEP::ObjectHelper<IfcFlowInstrumentType,1>::Construct ) -+, SchemaEntry("ifcdraughtingcallout",&STEP::ObjectHelper<IfcDraughtingCallout,1>::Construct ) -+, SchemaEntry("ifcdimensioncurvedirectedcallout",&STEP::ObjectHelper<IfcDimensionCurveDirectedCallout,0>::Construct ) -+, SchemaEntry("ifclineardimension",&STEP::ObjectHelper<IfcLinearDimension,0>::Construct ) -+, SchemaEntry("ifcelementassembly",&STEP::ObjectHelper<IfcElementAssembly,2>::Construct ) -+, SchemaEntry("ifcdraughtingcalloutrelationship",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifccsgprimitive3d",&STEP::ObjectHelper<IfcCsgPrimitive3D,1>::Construct ) -+, SchemaEntry("ifcrightcircularcone",&STEP::ObjectHelper<IfcRightCircularCone,2>::Construct ) -+, SchemaEntry("ifcexternallydefinedsurfacestyle",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcprojectorder",&STEP::ObjectHelper<IfcProjectOrder,3>::Construct ) -+, SchemaEntry("ifcpropertyconstraintrelationship",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifclshapeprofiledef",&STEP::ObjectHelper<IfcLShapeProfileDef,8>::Construct ) -+, SchemaEntry("ifcangulardimension",&STEP::ObjectHelper<IfcAngularDimension,0>::Construct ) -+, SchemaEntry("ifctextstylefordefinedfont",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifclocalplacement",&STEP::ObjectHelper<IfcLocalPlacement,2>::Construct ) -+, SchemaEntry("ifcsweptareasolid",&STEP::ObjectHelper<IfcSweptAreaSolid,2>::Construct ) -+, SchemaEntry("ifcrevolvedareasolid",&STEP::ObjectHelper<IfcRevolvedAreaSolid,2>::Construct ) -+, SchemaEntry("ifcstructuralsurfaceconnection",&STEP::ObjectHelper<IfcStructuralSurfaceConnection,0>::Construct ) -+, SchemaEntry("ifcradiusdimension",&STEP::ObjectHelper<IfcRadiusDimension,0>::Construct ) -+, SchemaEntry("ifcsweptdisksolid",&STEP::ObjectHelper<IfcSweptDiskSolid,5>::Construct ) -+, SchemaEntry("ifchalfspacesolid",&STEP::ObjectHelper<IfcHalfSpaceSolid,2>::Construct ) -+, SchemaEntry("ifcpolygonalboundedhalfspace",&STEP::ObjectHelper<IfcPolygonalBoundedHalfSpace,2>::Construct ) -+, SchemaEntry("ifctimeseriesschedule",&STEP::ObjectHelper<IfcTimeSeriesSchedule,3>::Construct ) -+, SchemaEntry("ifcdimensioncalloutrelationship",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifccooledbeamtype",&STEP::ObjectHelper<IfcCooledBeamType,1>::Construct ) -+, SchemaEntry("ifcproject",&STEP::ObjectHelper<IfcProject,4>::Construct ) -+, SchemaEntry("ifcapprovalrelationship",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcevaporatortype",&STEP::ObjectHelper<IfcEvaporatorType,1>::Construct ) -+, SchemaEntry("ifclaborresource",&STEP::ObjectHelper<IfcLaborResource,1>::Construct ) -+, SchemaEntry("ifcstructuralloadsingledisplacementdistortion",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcpropertyboundedvalue",&STEP::ObjectHelper<IfcPropertyBoundedValue,3>::Construct ) -+, SchemaEntry("ifcrampflighttype",&STEP::ObjectHelper<IfcRampFlightType,1>::Construct ) -+, SchemaEntry("ifcmember",&STEP::ObjectHelper<IfcMember,0>::Construct ) -+, SchemaEntry("ifcstructuralloadplanarforce",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifctubebundletype",&STEP::ObjectHelper<IfcTubeBundleType,1>::Construct ) -+, SchemaEntry("ifcvalvetype",&STEP::ObjectHelper<IfcValveType,1>::Construct ) -+, SchemaEntry("ifcexternallydefinedtextfont",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifctrimmedcurve",&STEP::ObjectHelper<IfcTrimmedCurve,5>::Construct ) -+, SchemaEntry("ifcreldefines",&STEP::ObjectHelper<IfcRelDefines,1>::Construct ) -+, SchemaEntry("ifcreldefinesbyproperties",&STEP::ObjectHelper<IfcRelDefinesByProperties,1>::Construct ) -+, SchemaEntry("ifcrelassignstocontrol",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcactor",&STEP::ObjectHelper<IfcActor,1>::Construct ) -+, SchemaEntry("ifcoccupant",&STEP::ObjectHelper<IfcOccupant,1>::Construct ) -+, SchemaEntry("ifchumidifiertype",&STEP::ObjectHelper<IfcHumidifierType,1>::Construct ) -+, SchemaEntry("ifcarbitraryopenprofiledef",&STEP::ObjectHelper<IfcArbitraryOpenProfileDef,1>::Construct ) -+, SchemaEntry("ifcrelassignstoprojectorder",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcpermit",&STEP::ObjectHelper<IfcPermit,1>::Construct ) -+, SchemaEntry("ifcoffsetcurve3d",&STEP::ObjectHelper<IfcOffsetCurve3D,4>::Construct ) -+, SchemaEntry("ifclightsource",&STEP::ObjectHelper<IfcLightSource,4>::Construct ) -+, SchemaEntry("ifclightsourcepositional",&STEP::ObjectHelper<IfcLightSourcePositional,5>::Construct ) -+, SchemaEntry("ifcsurfacetexture",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcblobtexture",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifccompositeprofiledef",&STEP::ObjectHelper<IfcCompositeProfileDef,2>::Construct ) -+, SchemaEntry("ifcdocumentinformation",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcsurfacestylelighting",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcphysicalsimplequantity",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcquantityarea",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifctimeseries",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcclassificationnotation",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcramp",&STEP::ObjectHelper<IfcRamp,1>::Construct ) -+, SchemaEntry("ifcpredefineditem",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcpredefinedcurvefont",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcpredefinedcolour",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifccurrencyrelationship",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcflowmovingdevice",&STEP::ObjectHelper<IfcFlowMovingDevice,0>::Construct ) -+, SchemaEntry("ifcspaceheatertype",&STEP::ObjectHelper<IfcSpaceHeaterType,1>::Construct ) -+, SchemaEntry("ifclamptype",&STEP::ObjectHelper<IfcLampType,1>::Construct ) -+, SchemaEntry("ifcbuildingelementcomponent",&STEP::ObjectHelper<IfcBuildingElementComponent,0>::Construct ) -+, SchemaEntry("ifcreinforcingelement",&STEP::ObjectHelper<IfcReinforcingElement,1>::Construct ) -+, SchemaEntry("ifcreinforcingbar",&STEP::ObjectHelper<IfcReinforcingBar,5>::Construct ) -+, SchemaEntry("ifcelectricheatertype",&STEP::ObjectHelper<IfcElectricHeaterType,1>::Construct ) -+, SchemaEntry("ifctshapeprofiledef",&STEP::ObjectHelper<IfcTShapeProfileDef,10>::Construct ) -+, SchemaEntry("ifcconstraint",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcobjective",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcstructuralactivity",&STEP::ObjectHelper<IfcStructuralActivity,2>::Construct ) -+, SchemaEntry("ifcstructuralaction",&STEP::ObjectHelper<IfcStructuralAction,2>::Construct ) -+, SchemaEntry("ifctexturecoordinate",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifctexturemap",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcmonetaryunit",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcquantitytime",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifctablerow",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifclightdistributiondata",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcductfittingtype",&STEP::ObjectHelper<IfcDuctFittingType,1>::Construct ) -+, SchemaEntry("ifccartesiantransformationoperator2d",&STEP::ObjectHelper<IfcCartesianTransformationOperator2D,0>::Construct ) -+, SchemaEntry("ifccartesiantransformationoperator2dnonuniform",&STEP::ObjectHelper<IfcCartesianTransformationOperator2DnonUniform,1>::Construct ) -+, SchemaEntry("ifcclassificationnotationfacet",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcrelassociatesapproval",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcdraughtingpredefinedcurvefont",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcstructuralloadsingleforce",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcstructuralloadsingleforcewarping",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifccurvestylefontandscaling",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcvirtualelement",&STEP::ObjectHelper<IfcVirtualElement,0>::Construct ) -+, SchemaEntry("ifcrightcircularcylinder",&STEP::ObjectHelper<IfcRightCircularCylinder,2>::Construct ) -+, SchemaEntry("ifcoutlettype",&STEP::ObjectHelper<IfcOutletType,1>::Construct ) -+, SchemaEntry("ifcreldecomposes",&STEP::ObjectHelper<IfcRelDecomposes,2>::Construct ) -+, SchemaEntry("ifcrelnests",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifccovering",&STEP::ObjectHelper<IfcCovering,1>::Construct ) -+, SchemaEntry("ifcexternallydefinedsymbol",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcirregulartimeseries",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcpolyline",&STEP::ObjectHelper<IfcPolyline,1>::Construct ) -+, SchemaEntry("ifcpath",&STEP::ObjectHelper<IfcPath,1>::Construct ) -+, SchemaEntry("ifcelementcomponent",&STEP::ObjectHelper<IfcElementComponent,0>::Construct ) -+, SchemaEntry("ifcfastener",&STEP::ObjectHelper<IfcFastener,0>::Construct ) -+, SchemaEntry("ifcmappeditem",&STEP::ObjectHelper<IfcMappedItem,2>::Construct ) -+, SchemaEntry("ifcmetric",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcdocumentreference",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcsectionproperties",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcrectangularpyramid",&STEP::ObjectHelper<IfcRectangularPyramid,3>::Construct ) -+, SchemaEntry("ifcrelreferencedinspatialstructure",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifccrewresource",&STEP::ObjectHelper<IfcCrewResource,0>::Construct ) -+, SchemaEntry("ifcnamedunit",&STEP::ObjectHelper<IfcNamedUnit,2>::Construct ) -+, SchemaEntry("ifccontextdependentunit",&STEP::ObjectHelper<IfcContextDependentUnit,1>::Construct ) -+, SchemaEntry("ifcunitaryequipmenttype",&STEP::ObjectHelper<IfcUnitaryEquipmentType,1>::Construct ) -+, SchemaEntry("ifcroof",&STEP::ObjectHelper<IfcRoof,1>::Construct ) -+, SchemaEntry("ifcrelassignstasks",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcstructuralmember",&STEP::ObjectHelper<IfcStructuralMember,0>::Construct ) -+, SchemaEntry("ifcrelconnectsports",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcstylemodel",&STEP::ObjectHelper<IfcStyleModel,0>::Construct ) -+, SchemaEntry("ifcstyledrepresentation",&STEP::ObjectHelper<IfcStyledRepresentation,0>::Construct ) -+, SchemaEntry("ifcspatialstructureelement",&STEP::ObjectHelper<IfcSpatialStructureElement,2>::Construct ) -+, SchemaEntry("ifcbuilding",&STEP::ObjectHelper<IfcBuilding,3>::Construct ) -+, SchemaEntry("ifcconnectedfaceset",&STEP::ObjectHelper<IfcConnectedFaceSet,1>::Construct ) -+, SchemaEntry("ifcopenshell",&STEP::ObjectHelper<IfcOpenShell,0>::Construct ) -+, SchemaEntry("ifcfacetedbrep",&STEP::ObjectHelper<IfcFacetedBrep,0>::Construct ) -+, SchemaEntry("ifclocaltime",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcmechanicalconcretematerialproperties",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcconic",&STEP::ObjectHelper<IfcConic,1>::Construct ) -+, SchemaEntry("ifccoveringtype",&STEP::ObjectHelper<IfcCoveringType,1>::Construct ) -+, SchemaEntry("ifcroundedrectangleprofiledef",&STEP::ObjectHelper<IfcRoundedRectangleProfileDef,1>::Construct ) -+, SchemaEntry("ifcairterminaltype",&STEP::ObjectHelper<IfcAirTerminalType,1>::Construct ) -+, SchemaEntry("ifcflowmovingdevicetype",&STEP::ObjectHelper<IfcFlowMovingDeviceType,0>::Construct ) -+, SchemaEntry("ifccompressortype",&STEP::ObjectHelper<IfcCompressorType,1>::Construct ) -+, SchemaEntry("ifcwindowpanelproperties",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcpredefinedsymbol",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcpredefinedterminatorsymbol",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcishapeprofiledef",&STEP::ObjectHelper<IfcIShapeProfileDef,5>::Construct ) -+, SchemaEntry("ifcasymmetricishapeprofiledef",&STEP::ObjectHelper<IfcAsymmetricIShapeProfileDef,4>::Construct ) -+, SchemaEntry("ifccontrollertype",&STEP::ObjectHelper<IfcControllerType,1>::Construct ) -+, SchemaEntry("ifcrailing",&STEP::ObjectHelper<IfcRailing,1>::Construct ) -+, SchemaEntry("ifcgroup",&STEP::ObjectHelper<IfcGroup,0>::Construct ) -+, SchemaEntry("ifcasset",&STEP::ObjectHelper<IfcAsset,9>::Construct ) -+, SchemaEntry("ifcmaterialdefinitionrepresentation",&STEP::ObjectHelper<IfcMaterialDefinitionRepresentation,1>::Construct ) -+, SchemaEntry("ifccurvestylefontpattern",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcapprovalpropertyrelationship",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcrailingtype",&STEP::ObjectHelper<IfcRailingType,1>::Construct ) -+, SchemaEntry("ifcwall",&STEP::ObjectHelper<IfcWall,0>::Construct ) -+, SchemaEntry("ifcclassificationitem",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcstructuralpointconnection",&STEP::ObjectHelper<IfcStructuralPointConnection,0>::Construct ) -+, SchemaEntry("ifcconnectiongeometry",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcconnectionpointgeometry",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifctimeseriesvalue",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcpropertylistvalue",&STEP::ObjectHelper<IfcPropertyListValue,2>::Construct ) -+, SchemaEntry("ifcfurniturestandard",&STEP::ObjectHelper<IfcFurnitureStandard,0>::Construct ) -+, SchemaEntry("ifcrelschedulescostitems",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcelectricgeneratortype",&STEP::ObjectHelper<IfcElectricGeneratorType,1>::Construct ) -+, SchemaEntry("ifcdoor",&STEP::ObjectHelper<IfcDoor,2>::Construct ) -+, SchemaEntry("ifcstyleditem",&STEP::ObjectHelper<IfcStyledItem,3>::Construct ) -+, SchemaEntry("ifcannotationoccurrence",&STEP::ObjectHelper<IfcAnnotationOccurrence,0>::Construct ) -+, SchemaEntry("ifcannotationsymboloccurrence",&STEP::ObjectHelper<IfcAnnotationSymbolOccurrence,0>::Construct ) -+, SchemaEntry("ifcarbitraryclosedprofiledef",&STEP::ObjectHelper<IfcArbitraryClosedProfileDef,1>::Construct ) -+, SchemaEntry("ifcarbitraryprofiledefwithvoids",&STEP::ObjectHelper<IfcArbitraryProfileDefWithVoids,1>::Construct ) -+, SchemaEntry("ifcline",&STEP::ObjectHelper<IfcLine,2>::Construct ) -+, SchemaEntry("ifcmateriallayerset",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcflowsegmenttype",&STEP::ObjectHelper<IfcFlowSegmentType,0>::Construct ) -+, SchemaEntry("ifcairterminalboxtype",&STEP::ObjectHelper<IfcAirTerminalBoxType,1>::Construct ) -+, SchemaEntry("ifcrelconnectsstructuralmember",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcpropertysinglevalue",&STEP::ObjectHelper<IfcPropertySingleValue,2>::Construct ) -+, SchemaEntry("ifcalarmtype",&STEP::ObjectHelper<IfcAlarmType,1>::Construct ) -+, SchemaEntry("ifcellipseprofiledef",&STEP::ObjectHelper<IfcEllipseProfileDef,2>::Construct ) -+, SchemaEntry("ifcstair",&STEP::ObjectHelper<IfcStair,1>::Construct ) -+, SchemaEntry("ifcpredefinedtextfont",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifctextstylefontmodel",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcsurfacestyleshading",&STEP::ObjectHelper<IfcSurfaceStyleShading,1>::Construct ) -+, SchemaEntry("ifcpumptype",&STEP::ObjectHelper<IfcPumpType,1>::Construct ) -+, SchemaEntry("ifcdefinedsymbol",&STEP::ObjectHelper<IfcDefinedSymbol,2>::Construct ) -+, SchemaEntry("ifcclassificationitemrelationship",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcgeneralmaterialproperties",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcelementcomponenttype",&STEP::ObjectHelper<IfcElementComponentType,0>::Construct ) -+, SchemaEntry("ifcfastenertype",&STEP::ObjectHelper<IfcFastenerType,0>::Construct ) -+, SchemaEntry("ifcmechanicalfastenertype",&STEP::ObjectHelper<IfcMechanicalFastenerType,0>::Construct ) -+, SchemaEntry("ifcpermeablecoveringproperties",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcflowfitting",&STEP::ObjectHelper<IfcFlowFitting,0>::Construct ) -+, SchemaEntry("ifcapproval",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcshapeaspect",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcconstraintclassificationrelationship",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifclightsourcedirectional",&STEP::ObjectHelper<IfcLightSourceDirectional,1>::Construct ) -+, SchemaEntry("ifcsurfacestyle",&STEP::ObjectHelper<IfcSurfaceStyle,2>::Construct ) -+, SchemaEntry("ifcrelconnectsstructuralactivity",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcrelassociatesprofileproperties",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcannotationsurface",&STEP::ObjectHelper<IfcAnnotationSurface,2>::Construct ) -+, SchemaEntry("ifcfuelproperties",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcflowcontroller",&STEP::ObjectHelper<IfcFlowController,0>::Construct ) -+, SchemaEntry("ifcfailureconnectioncondition",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcbuildingstorey",&STEP::ObjectHelper<IfcBuildingStorey,1>::Construct ) -+, SchemaEntry("ifcworkcontrol",&STEP::ObjectHelper<IfcWorkControl,10>::Construct ) -+, SchemaEntry("ifcworkschedule",&STEP::ObjectHelper<IfcWorkSchedule,0>::Construct ) -+, SchemaEntry("ifctable",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcductsegmenttype",&STEP::ObjectHelper<IfcDuctSegmentType,1>::Construct ) -+, SchemaEntry("ifcstructuralsteelprofileproperties",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcdraughtingpredefinedtextfont",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcface",&STEP::ObjectHelper<IfcFace,1>::Construct ) -+, SchemaEntry("ifcstructuralsurfacemember",&STEP::ObjectHelper<IfcStructuralSurfaceMember,2>::Construct ) -+, SchemaEntry("ifcstructuralsurfacemembervarying",&STEP::ObjectHelper<IfcStructuralSurfaceMemberVarying,2>::Construct ) -+, SchemaEntry("ifcfacesurface",&STEP::ObjectHelper<IfcFaceSurface,2>::Construct ) -+, SchemaEntry("ifcclassification",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcmateriallist",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifccostschedule",&STEP::ObjectHelper<IfcCostSchedule,8>::Construct ) -+, SchemaEntry("ifccoordinateduniversaltimeoffset",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcplanarextent",&STEP::ObjectHelper<IfcPlanarExtent,2>::Construct ) -+, SchemaEntry("ifcplanarbox",&STEP::ObjectHelper<IfcPlanarBox,1>::Construct ) -+, SchemaEntry("ifcfillareastyle",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcsectionreinforcementproperties",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifccolourspecification",&STEP::ObjectHelper<IfcColourSpecification,1>::Construct ) -+, SchemaEntry("ifcvector",&STEP::ObjectHelper<IfcVector,2>::Construct ) -+, SchemaEntry("ifcbeam",&STEP::ObjectHelper<IfcBeam,0>::Construct ) -+, SchemaEntry("ifccolourrgb",&STEP::ObjectHelper<IfcColourRgb,3>::Construct ) -+, SchemaEntry("ifcstructuralplanaraction",&STEP::ObjectHelper<IfcStructuralPlanarAction,1>::Construct ) -+, SchemaEntry("ifcstructuralplanaractionvarying",&STEP::ObjectHelper<IfcStructuralPlanarActionVarying,2>::Construct ) -+, SchemaEntry("ifcsite",&STEP::ObjectHelper<IfcSite,5>::Construct ) -+, SchemaEntry("ifcdiscreteaccessorytype",&STEP::ObjectHelper<IfcDiscreteAccessoryType,0>::Construct ) -+, SchemaEntry("ifcvibrationisolatortype",&STEP::ObjectHelper<IfcVibrationIsolatorType,1>::Construct ) -+, SchemaEntry("ifcevaporativecoolertype",&STEP::ObjectHelper<IfcEvaporativeCoolerType,1>::Construct ) -+, SchemaEntry("ifcdistributionchamberelementtype",&STEP::ObjectHelper<IfcDistributionChamberElementType,1>::Construct ) -+, SchemaEntry("ifcfeatureelementaddition",&STEP::ObjectHelper<IfcFeatureElementAddition,0>::Construct ) -+, SchemaEntry("ifcrelassignstoresource",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcstructureddimensioncallout",&STEP::ObjectHelper<IfcStructuredDimensionCallout,0>::Construct ) -+, SchemaEntry("ifccoolingtowertype",&STEP::ObjectHelper<IfcCoolingTowerType,1>::Construct ) -+, SchemaEntry("ifccenterlineprofiledef",&STEP::ObjectHelper<IfcCenterLineProfileDef,1>::Construct ) -+, SchemaEntry("ifctexturevertex",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcorganization",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcwindowstyle",&STEP::ObjectHelper<IfcWindowStyle,4>::Construct ) -+, SchemaEntry("ifclightsourcegoniometric",&STEP::ObjectHelper<IfcLightSourceGoniometric,6>::Construct ) -+, SchemaEntry("ifcribplateprofileproperties",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifctransformertype",&STEP::ObjectHelper<IfcTransformerType,1>::Construct ) -+, SchemaEntry("ifcmembertype",&STEP::ObjectHelper<IfcMemberType,1>::Construct ) -+, SchemaEntry("ifcsurfaceoflinearextrusion",&STEP::ObjectHelper<IfcSurfaceOfLinearExtrusion,2>::Construct ) -+, SchemaEntry("ifcmotorconnectiontype",&STEP::ObjectHelper<IfcMotorConnectionType,1>::Construct ) -+, SchemaEntry("ifcflowtreatmentdevicetype",&STEP::ObjectHelper<IfcFlowTreatmentDeviceType,0>::Construct ) -+, SchemaEntry("ifcductsilencertype",&STEP::ObjectHelper<IfcDuctSilencerType,1>::Construct ) -+, SchemaEntry("ifcwindowliningproperties",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcfurnishingelementtype",&STEP::ObjectHelper<IfcFurnishingElementType,0>::Construct ) -+, SchemaEntry("ifcsystemfurnitureelementtype",&STEP::ObjectHelper<IfcSystemFurnitureElementType,0>::Construct ) -+, SchemaEntry("ifcconnectionpointeccentricity",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcwasteterminaltype",&STEP::ObjectHelper<IfcWasteTerminalType,1>::Construct ) -+, SchemaEntry("ifcbsplinecurve",&STEP::ObjectHelper<IfcBSplineCurve,5>::Construct ) -+, SchemaEntry("ifcbeziercurve",&STEP::ObjectHelper<IfcBezierCurve,0>::Construct ) -+, SchemaEntry("ifcdocumentinformationrelationship",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcactuatortype",&STEP::ObjectHelper<IfcActuatorType,1>::Construct ) -+, SchemaEntry("ifcdistributioncontrolelement",&STEP::ObjectHelper<IfcDistributionControlElement,1>::Construct ) -+, SchemaEntry("ifcannotation",&STEP::ObjectHelper<IfcAnnotation,0>::Construct ) -+, SchemaEntry("ifcrelassociatesdocument",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcdoorliningproperties",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcshellbasedsurfacemodel",&STEP::ObjectHelper<IfcShellBasedSurfaceModel,1>::Construct ) -+, SchemaEntry("ifcactionrequest",&STEP::ObjectHelper<IfcActionRequest,1>::Construct ) -+, SchemaEntry("ifcextrudedareasolid",&STEP::ObjectHelper<IfcExtrudedAreaSolid,2>::Construct ) -+, SchemaEntry("ifcsystem",&STEP::ObjectHelper<IfcSystem,0>::Construct ) -+, SchemaEntry("ifcfillareastylehatching",&STEP::ObjectHelper<IfcFillAreaStyleHatching,5>::Construct ) -+, SchemaEntry("ifcrelvoidselement",&STEP::ObjectHelper<IfcRelVoidsElement,2>::Construct ) -+, SchemaEntry("ifcrelconnectspathelements",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcrelspaceboundary",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcsurfacecurvesweptareasolid",&STEP::ObjectHelper<IfcSurfaceCurveSweptAreaSolid,4>::Construct ) -+, SchemaEntry("ifccartesiantransformationoperator3dnonuniform",&STEP::ObjectHelper<IfcCartesianTransformationOperator3DnonUniform,2>::Construct ) -+, SchemaEntry("ifcrelinteractionrequirements",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifccurtainwalltype",&STEP::ObjectHelper<IfcCurtainWallType,1>::Construct ) -+, SchemaEntry("ifcquantitylength",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcequipmentstandard",&STEP::ObjectHelper<IfcEquipmentStandard,0>::Construct ) -+, SchemaEntry("ifcflowstoragedevicetype",&STEP::ObjectHelper<IfcFlowStorageDeviceType,0>::Construct ) -+, SchemaEntry("ifcvirtualgridintersection",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcdiameterdimension",&STEP::ObjectHelper<IfcDiameterDimension,0>::Construct ) -+, SchemaEntry("ifcswitchingdevicetype",&STEP::ObjectHelper<IfcSwitchingDeviceType,1>::Construct ) -+, SchemaEntry("ifcaddress",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifctelecomaddress",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcwindow",&STEP::ObjectHelper<IfcWindow,2>::Construct ) -+, SchemaEntry("ifcmechanicalsteelmaterialproperties",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcflowtreatmentdevice",&STEP::ObjectHelper<IfcFlowTreatmentDevice,0>::Construct ) -+, SchemaEntry("ifcrelservicesbuildings",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcchillertype",&STEP::ObjectHelper<IfcChillerType,1>::Construct ) -+, SchemaEntry("ifcrelassignstoproduct",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcrectanglehollowprofiledef",&STEP::ObjectHelper<IfcRectangleHollowProfileDef,3>::Construct ) -+, SchemaEntry("ifcenergyproperties",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcboxedhalfspace",&STEP::ObjectHelper<IfcBoxedHalfSpace,1>::Construct ) -+, SchemaEntry("ifcaxis2placement2d",&STEP::ObjectHelper<IfcAxis2Placement2D,1>::Construct ) -+, SchemaEntry("ifcspaceprogram",&STEP::ObjectHelper<IfcSpaceProgram,5>::Construct ) -+, SchemaEntry("ifcpoint",&STEP::ObjectHelper<IfcPoint,0>::Construct ) -+, SchemaEntry("ifccartesianpoint",&STEP::ObjectHelper<IfcCartesianPoint,1>::Construct ) -+, SchemaEntry("ifcboundedsurface",&STEP::ObjectHelper<IfcBoundedSurface,0>::Construct ) -+, SchemaEntry("ifcloop",&STEP::ObjectHelper<IfcLoop,0>::Construct ) -+, SchemaEntry("ifcpolyloop",&STEP::ObjectHelper<IfcPolyLoop,1>::Construct ) -+, SchemaEntry("ifcpredefinedpointmarkersymbol",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcterminatorsymbol",&STEP::ObjectHelper<IfcTerminatorSymbol,1>::Construct ) -+, SchemaEntry("ifcdimensioncurveterminator",&STEP::ObjectHelper<IfcDimensionCurveTerminator,1>::Construct ) -+, SchemaEntry("ifcrelprojectselement",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifctrapeziumprofiledef",&STEP::ObjectHelper<IfcTrapeziumProfileDef,4>::Construct ) -+, SchemaEntry("ifcrepresentationcontext",&STEP::ObjectHelper<IfcRepresentationContext,2>::Construct ) -+, SchemaEntry("ifcgeometricrepresentationcontext",&STEP::ObjectHelper<IfcGeometricRepresentationContext,4>::Construct ) -+, SchemaEntry("ifctextstylewithboxcharacteristics",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifccurveboundedplane",&STEP::ObjectHelper<IfcCurveBoundedPlane,3>::Construct ) -+, SchemaEntry("ifcquantitycount",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifctimeseriesreferencerelationship",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcstructuralloadtemperature",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcsiunit",&STEP::ObjectHelper<IfcSIUnit,2>::Construct ) -+, SchemaEntry("ifcstructuralreaction",&STEP::ObjectHelper<IfcStructuralReaction,0>::Construct ) -+, SchemaEntry("ifcstructuralpointreaction",&STEP::ObjectHelper<IfcStructuralPointReaction,0>::Construct ) -+, SchemaEntry("ifcaxis1placement",&STEP::ObjectHelper<IfcAxis1Placement,1>::Construct ) -+, SchemaEntry("ifcreinforcementdefinitionproperties",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcelectricappliancetype",&STEP::ObjectHelper<IfcElectricApplianceType,1>::Construct ) -+, SchemaEntry("ifcsensortype",&STEP::ObjectHelper<IfcSensorType,1>::Construct ) -+, SchemaEntry("ifcfurnishingelement",&STEP::ObjectHelper<IfcFurnishingElement,0>::Construct ) -+, SchemaEntry("ifcprotectivedevicetype",&STEP::ObjectHelper<IfcProtectiveDeviceType,1>::Construct ) -+, SchemaEntry("ifczshapeprofiledef",&STEP::ObjectHelper<IfcZShapeProfileDef,6>::Construct ) -+, SchemaEntry("ifcscheduletimecontrol",&STEP::ObjectHelper<IfcScheduleTimeControl,18>::Construct ) -+, SchemaEntry("ifcrepresentationmap",&STEP::ObjectHelper<IfcRepresentationMap,2>::Construct ) -+, SchemaEntry("ifcclosedshell",&STEP::ObjectHelper<IfcClosedShell,0>::Construct ) -+, SchemaEntry("ifcbuildingelementpart",&STEP::ObjectHelper<IfcBuildingElementPart,0>::Construct ) -+, SchemaEntry("ifcdraughtingpredefinedcolour",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcpostaladdress",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcblock",&STEP::ObjectHelper<IfcBlock,3>::Construct ) -+, SchemaEntry("ifclightfixturetype",&STEP::ObjectHelper<IfcLightFixtureType,1>::Construct ) -+, SchemaEntry("ifcopeningelement",&STEP::ObjectHelper<IfcOpeningElement,0>::Construct ) -+, SchemaEntry("ifclightsourcespot",&STEP::ObjectHelper<IfcLightSourceSpot,4>::Construct ) -+, SchemaEntry("ifctendonanchor",&STEP::ObjectHelper<IfcTendonAnchor,0>::Construct ) -+, SchemaEntry("ifcsurfacestylerefraction",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcelectricflowstoragedevicetype",&STEP::ObjectHelper<IfcElectricFlowStorageDeviceType,1>::Construct ) -+, SchemaEntry("ifcfluidflowproperties",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcsphere",&STEP::ObjectHelper<IfcSphere,1>::Construct ) -+, SchemaEntry("ifcrelassociatesappliedvalue",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcdampertype",&STEP::ObjectHelper<IfcDamperType,1>::Construct ) -+, SchemaEntry("ifcprojectorderrecord",&STEP::ObjectHelper<IfcProjectOrderRecord,2>::Construct ) -+, SchemaEntry("ifcdimensionalexponents",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcreldefinesbytype",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcdistributionchamberelement",&STEP::ObjectHelper<IfcDistributionChamberElement,0>::Construct ) -+, SchemaEntry("ifcmechanicalfastener",&STEP::ObjectHelper<IfcMechanicalFastener,2>::Construct ) -+, SchemaEntry("ifcquantityvolume",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcrectangulartrimmedsurface",&STEP::ObjectHelper<IfcRectangularTrimmedSurface,7>::Construct ) -+, SchemaEntry("ifcdateandtime",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifczone",&STEP::ObjectHelper<IfcZone,0>::Construct ) -+, SchemaEntry("ifcfantype",&STEP::ObjectHelper<IfcFanType,1>::Construct ) -+, SchemaEntry("ifcgeometricset",&STEP::ObjectHelper<IfcGeometricSet,1>::Construct ) -+, SchemaEntry("ifcfillareastyletiles",&STEP::ObjectHelper<IfcFillAreaStyleTiles,3>::Construct ) -+, SchemaEntry("ifcpixeltexture",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifccablesegmenttype",&STEP::ObjectHelper<IfcCableSegmentType,1>::Construct ) -+, SchemaEntry("ifcreloverridesproperties",&STEP::ObjectHelper<IfcRelOverridesProperties,1>::Construct ) -+, SchemaEntry("ifcmeasurewithunit",&STEP::ObjectHelper<IfcMeasureWithUnit,2>::Construct ) -+, SchemaEntry("ifcslabtype",&STEP::ObjectHelper<IfcSlabType,1>::Construct ) -+, SchemaEntry("ifcservicelife",&STEP::ObjectHelper<IfcServiceLife,2>::Construct ) -+, SchemaEntry("ifcfurnituretype",&STEP::ObjectHelper<IfcFurnitureType,1>::Construct ) -+, SchemaEntry("ifccostitem",&STEP::ObjectHelper<IfcCostItem,0>::Construct ) -+, SchemaEntry("ifcreinforcingmesh",&STEP::ObjectHelper<IfcReinforcingMesh,8>::Construct ) -+, SchemaEntry("ifcextendedmaterialproperties",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcactorrole",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcfacetedbrepwithvoids",&STEP::ObjectHelper<IfcFacetedBrepWithVoids,1>::Construct ) -+, SchemaEntry("ifcconstraintaggregationrelationship",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcgasterminaltype",&STEP::ObjectHelper<IfcGasTerminalType,1>::Construct ) -+, SchemaEntry("ifcrelconnectswitheccentricity",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcpile",&STEP::ObjectHelper<IfcPile,2>::Construct ) -+, SchemaEntry("ifcfillareastyletilesymbolwithstyle",&STEP::ObjectHelper<IfcFillAreaStyleTileSymbolWithStyle,1>::Construct ) -+, SchemaEntry("ifcelectricalbaseproperties",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcconstructionmaterialresource",&STEP::ObjectHelper<IfcConstructionMaterialResource,2>::Construct ) -+, SchemaEntry("ifcannotationcurveoccurrence",&STEP::ObjectHelper<IfcAnnotationCurveOccurrence,0>::Construct ) -+, SchemaEntry("ifcdimensioncurve",&STEP::ObjectHelper<IfcDimensionCurve,0>::Construct ) -+, SchemaEntry("ifcgeometriccurveset",&STEP::ObjectHelper<IfcGeometricCurveSet,0>::Construct ) -+, SchemaEntry("ifcrelaggregates",&STEP::ObjectHelper<IfcRelAggregates,0>::Construct ) -+, SchemaEntry("ifcfacebasedsurfacemodel",&STEP::ObjectHelper<IfcFaceBasedSurfaceModel,1>::Construct ) -+, SchemaEntry("ifcenergyconversiondevice",&STEP::ObjectHelper<IfcEnergyConversionDevice,0>::Construct ) -+, SchemaEntry("ifcrampflight",&STEP::ObjectHelper<IfcRampFlight,0>::Construct ) -+, SchemaEntry("ifcpropertyenumeration",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcvertexloop",&STEP::ObjectHelper<IfcVertexLoop,1>::Construct ) -+, SchemaEntry("ifcplate",&STEP::ObjectHelper<IfcPlate,0>::Construct ) -+, SchemaEntry("ifcushapeprofiledef",&STEP::ObjectHelper<IfcUShapeProfileDef,8>::Construct ) -+, SchemaEntry("ifchygroscopicmaterialproperties",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcfacebound",&STEP::ObjectHelper<IfcFaceBound,2>::Construct ) -+, SchemaEntry("ifcfaceouterbound",&STEP::ObjectHelper<IfcFaceOuterBound,0>::Construct ) -+, SchemaEntry("ifconedirectionrepeatfactor",&STEP::ObjectHelper<IfcOneDirectionRepeatFactor,1>::Construct ) -+, SchemaEntry("ifcboilertype",&STEP::ObjectHelper<IfcBoilerType,1>::Construct ) -+, SchemaEntry("ifcconstructionequipmentresource",&STEP::ObjectHelper<IfcConstructionEquipmentResource,0>::Construct ) -+, SchemaEntry("ifccomplexproperty",&STEP::ObjectHelper<IfcComplexProperty,2>::Construct ) -+, SchemaEntry("ifcfooting",&STEP::ObjectHelper<IfcFooting,1>::Construct ) -+, SchemaEntry("ifcopticalmaterialproperties",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcconstructionproductresource",&STEP::ObjectHelper<IfcConstructionProductResource,0>::Construct ) -+, SchemaEntry("ifcboundaryedgecondition",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcderivedprofiledef",&STEP::ObjectHelper<IfcDerivedProfileDef,3>::Construct ) -+, SchemaEntry("ifcpropertytablevalue",&STEP::ObjectHelper<IfcPropertyTableValue,5>::Construct ) -+, SchemaEntry("ifcrelassignstogroup",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcflowmetertype",&STEP::ObjectHelper<IfcFlowMeterType,1>::Construct ) -+, SchemaEntry("ifcdoorstyle",&STEP::ObjectHelper<IfcDoorStyle,4>::Construct ) -+, SchemaEntry("ifcrelconnectsporttoelement",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcrelassociatesclassification",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcunitassignment",&STEP::ObjectHelper<IfcUnitAssignment,1>::Construct ) -+, SchemaEntry("ifcflowterminal",&STEP::ObjectHelper<IfcFlowTerminal,0>::Construct ) -+, SchemaEntry("ifccranerailfshapeprofiledef",&STEP::ObjectHelper<IfcCraneRailFShapeProfileDef,9>::Construct ) -+, SchemaEntry("ifcflowsegment",&STEP::ObjectHelper<IfcFlowSegment,0>::Construct ) -+, SchemaEntry("ifcelementquantity",&STEP::ObjectHelper<IfcElementQuantity,2>::Construct ) -+, SchemaEntry("ifcboundarynodecondition",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcboundarynodeconditionwarping",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifccurtainwall",&STEP::ObjectHelper<IfcCurtainWall,0>::Construct ) -+, SchemaEntry("ifcdiscreteaccessory",&STEP::ObjectHelper<IfcDiscreteAccessory,0>::Construct ) -+, SchemaEntry("ifcgrid",&STEP::ObjectHelper<IfcGrid,3>::Construct ) -+, SchemaEntry("ifcsanitaryterminaltype",&STEP::ObjectHelper<IfcSanitaryTerminalType,1>::Construct ) -+, SchemaEntry("ifcsoundproperties",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcsubedge",&STEP::ObjectHelper<IfcSubedge,1>::Construct ) -+, SchemaEntry("ifctextstyletextmodel",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcfiltertype",&STEP::ObjectHelper<IfcFilterType,1>::Construct ) -+, SchemaEntry("ifcsymbolstyle",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifctendon",&STEP::ObjectHelper<IfcTendon,8>::Construct ) -+, SchemaEntry("ifcdimensionpair",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcstructuralloadgroup",&STEP::ObjectHelper<IfcStructuralLoadGroup,5>::Construct ) -+, SchemaEntry("ifcpresentationstyleassignment",&STEP::ObjectHelper<IfcPresentationStyleAssignment,1>::Construct ) -+, SchemaEntry("ifcregulartimeseries",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcstructuralcurvemember",&STEP::ObjectHelper<IfcStructuralCurveMember,1>::Construct ) -+, SchemaEntry("ifclightsourceambient",&STEP::ObjectHelper<IfcLightSourceAmbient,0>::Construct ) -+, SchemaEntry("ifccondition",&STEP::ObjectHelper<IfcCondition,0>::Construct ) -+, SchemaEntry("ifcport",&STEP::ObjectHelper<IfcPort,0>::Construct ) -+, SchemaEntry("ifcspace",&STEP::ObjectHelper<IfcSpace,2>::Construct ) -+, SchemaEntry("ifcheatexchangertype",&STEP::ObjectHelper<IfcHeatExchangerType,1>::Construct ) -+, SchemaEntry("ifctanktype",&STEP::ObjectHelper<IfcTankType,1>::Construct ) -+, SchemaEntry("ifcinventory",&STEP::ObjectHelper<IfcInventory,6>::Construct ) -+, SchemaEntry("ifctextstyle",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcappliedvaluerelationship",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcsoundvalue",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifctransportelementtype",&STEP::ObjectHelper<IfcTransportElementType,1>::Construct ) -+, SchemaEntry("ifcairtoairheatrecoverytype",&STEP::ObjectHelper<IfcAirToAirHeatRecoveryType,1>::Construct ) -+, SchemaEntry("ifcstairflight",&STEP::ObjectHelper<IfcStairFlight,4>::Construct ) -+, SchemaEntry("ifcelectricalelement",&STEP::ObjectHelper<IfcElectricalElement,0>::Construct ) -+, SchemaEntry("ifclightintensitydistribution",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcclassificationreference",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcsurfacestylewithtextures",&STEP::ObjectHelper<IfcSurfaceStyleWithTextures,1>::Construct ) -+, SchemaEntry("ifcboundingbox",&STEP::ObjectHelper<IfcBoundingBox,4>::Construct ) -+, SchemaEntry("ifcapplication",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcwalltype",&STEP::ObjectHelper<IfcWallType,1>::Construct ) -+, SchemaEntry("ifcmove",&STEP::ObjectHelper<IfcMove,3>::Construct ) -+, SchemaEntry("ifccircle",&STEP::ObjectHelper<IfcCircle,1>::Construct ) -+, SchemaEntry("ifcoffsetcurve2d",&STEP::ObjectHelper<IfcOffsetCurve2D,3>::Construct ) -+, SchemaEntry("ifcmateriallayersetusage",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcpointoncurve",&STEP::ObjectHelper<IfcPointOnCurve,2>::Construct ) -+, SchemaEntry("ifcstructuralresultgroup",&STEP::ObjectHelper<IfcStructuralResultGroup,3>::Construct ) -+, SchemaEntry("ifcsectionedspine",&STEP::ObjectHelper<IfcSectionedSpine,3>::Construct ) -+, SchemaEntry("ifcslab",&STEP::ObjectHelper<IfcSlab,1>::Construct ) -+, SchemaEntry("ifcconnectionportgeometry",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcquantityweight",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcrelassociatesmaterial",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcvertex",&STEP::ObjectHelper<IfcVertex,0>::Construct ) -+, SchemaEntry("ifcvertexpoint",&STEP::ObjectHelper<IfcVertexPoint,1>::Construct ) -+, SchemaEntry("ifcreferencesvaluedocument",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcpersonandorganization",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcrelflowcontrolelements",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcrelassignstoprocess",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcstructurallinearaction",&STEP::ObjectHelper<IfcStructuralLinearAction,1>::Construct ) -+, SchemaEntry("ifcstructurallinearactionvarying",&STEP::ObjectHelper<IfcStructuralLinearActionVarying,2>::Construct ) -+, SchemaEntry("ifcbuildingelementproxytype",&STEP::ObjectHelper<IfcBuildingElementProxyType,1>::Construct ) -+, SchemaEntry("ifcprojectionelement",&STEP::ObjectHelper<IfcProjectionElement,0>::Construct ) -+, SchemaEntry("ifcderivedunit",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcapprovalactorrelationship",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcconversionbasedunit",&STEP::ObjectHelper<IfcConversionBasedUnit,2>::Construct ) -+, SchemaEntry("ifcmaterial",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcgeometricrepresentationsubcontext",&STEP::ObjectHelper<IfcGeometricRepresentationSubContext,4>::Construct ) -+, SchemaEntry("ifcannotationsurfaceoccurrence",&STEP::ObjectHelper<IfcAnnotationSurfaceOccurrence,0>::Construct ) -+, SchemaEntry("ifcpredefineddimensionsymbol",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcroundededgefeature",&STEP::ObjectHelper<IfcRoundedEdgeFeature,1>::Construct ) -+, SchemaEntry("ifcrelcoversbldgelements",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcelectricdistributionpoint",&STEP::ObjectHelper<IfcElectricDistributionPoint,2>::Construct ) -+, SchemaEntry("ifccablecarriersegmenttype",&STEP::ObjectHelper<IfcCableCarrierSegmentType,1>::Construct ) -+, SchemaEntry("ifcstructuralloadlinearforce",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcgridaxis",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcirregulartimeseriesvalue",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcwallstandardcase",&STEP::ObjectHelper<IfcWallStandardCase,0>::Construct ) -+, SchemaEntry("ifcreloccupiesspaces",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcderivedunitelement",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifccsgsolid",&STEP::ObjectHelper<IfcCsgSolid,1>::Construct ) -+, SchemaEntry("ifcbeamtype",&STEP::ObjectHelper<IfcBeamType,1>::Construct ) -+, SchemaEntry("ifcannotationfillarea",&STEP::ObjectHelper<IfcAnnotationFillArea,2>::Construct ) -+, SchemaEntry("ifcrelaxation",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcstructuralcurvemembervarying",&STEP::ObjectHelper<IfcStructuralCurveMemberVarying,0>::Construct ) -+, SchemaEntry("ifcpointonsurface",&STEP::ObjectHelper<IfcPointOnSurface,3>::Construct ) -+, SchemaEntry("ifcpropertydependencyrelationship",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcvertexbasedtexturemap",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcorderaction",&STEP::ObjectHelper<IfcOrderAction,1>::Construct ) -+, SchemaEntry("ifclibraryreference",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcedgeloop",&STEP::ObjectHelper<IfcEdgeLoop,1>::Construct ) -+, SchemaEntry("ifcannotationfillareaoccurrence",&STEP::ObjectHelper<IfcAnnotationFillAreaOccurrence,2>::Construct ) -+, SchemaEntry("ifcrelconnectsstructuralelement",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcworkplan",&STEP::ObjectHelper<IfcWorkPlan,0>::Construct ) -+, SchemaEntry("ifcellipse",&STEP::ObjectHelper<IfcEllipse,2>::Construct ) -+, SchemaEntry("ifcproductdefinitionshape",&STEP::ObjectHelper<IfcProductDefinitionShape,0>::Construct ) -+, SchemaEntry("ifcprojectioncurve",&STEP::ObjectHelper<IfcProjectionCurve,0>::Construct ) -+, SchemaEntry("ifcelectricalcircuit",&STEP::ObjectHelper<IfcElectricalCircuit,0>::Construct ) -+, SchemaEntry("ifcrationalbeziercurve",&STEP::ObjectHelper<IfcRationalBezierCurve,1>::Construct ) -+, SchemaEntry("ifcstructuralpointaction",&STEP::ObjectHelper<IfcStructuralPointAction,0>::Construct ) -+, SchemaEntry("ifcservicelifefactor",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcthermalmaterialproperties",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifctexturecoordinategenerator",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcpipesegmenttype",&STEP::ObjectHelper<IfcPipeSegmentType,1>::Construct ) -+, SchemaEntry("ifctwodirectionrepeatfactor",&STEP::ObjectHelper<IfcTwoDirectionRepeatFactor,1>::Construct ) -+, SchemaEntry("ifcshaperepresentation",&STEP::ObjectHelper<IfcShapeRepresentation,0>::Construct ) -+, SchemaEntry("ifcpropertyset",&STEP::ObjectHelper<IfcPropertySet,1>::Construct ) -+, SchemaEntry("ifcsurfacestylerendering",&STEP::ObjectHelper<IfcSurfaceStyleRendering,8>::Construct ) -+, SchemaEntry("ifcdistributionport",&STEP::ObjectHelper<IfcDistributionPort,1>::Construct ) -+, SchemaEntry("ifcimagetexture",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcpipefittingtype",&STEP::ObjectHelper<IfcPipeFittingType,1>::Construct ) -+, SchemaEntry("ifctransportelement",&STEP::ObjectHelper<IfcTransportElement,3>::Construct ) -+, SchemaEntry("ifcannotationtextoccurrence",&STEP::ObjectHelper<IfcAnnotationTextOccurrence,0>::Construct ) -+, SchemaEntry("ifcconnectionsurfacegeometry",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcstructuralanalysismodel",&STEP::ObjectHelper<IfcStructuralAnalysisModel,4>::Construct ) -+, SchemaEntry("ifcconnectioncurvegeometry",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcconditioncriterion",&STEP::ObjectHelper<IfcConditionCriterion,2>::Construct ) -+, SchemaEntry("ifcwaterproperties",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifcmateriallayer",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+, SchemaEntry("ifccostvalue",&STEP::ObjectHelper<NotImplemented,0>::Construct ) -+ -+ }; -+} -+ -+// ----------------------------------------------------------------------------------------------------------- -+void IFC::GetSchema(EXPRESS::ConversionSchema& out) -+{ -+ out = EXPRESS::ConversionSchema(schema_raw); -+} -+ -+namespace STEP { -+ -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<NotImplemented>(const STEP::DB& db, const LIST& params, NotImplemented* in) -+{ -+ return 0; -+} -+ -+ -+ -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcRoot>(const DB& db, const LIST& params, IfcRoot* in) -+{ -+ size_t base = 0; -+ if (params.GetSize() < 4) { throw STEP::TypeError("expected 4 arguments to IfcRoot"); } do { // convert the 'GlobalId' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcRoot,4>::aux_is_derived[0]=true; break; } -+ try { GenericConvert( in->GlobalId, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcRoot to be a `IfcGloballyUniqueId`")); } -+ } while(0); -+ do { // convert the 'OwnerHistory' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcRoot,4>::aux_is_derived[1]=true; break; } -+ try { GenericConvert( in->OwnerHistory, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 1 to IfcRoot to be a `IfcOwnerHistory`")); } -+ } while(0); -+ do { // convert the 'Name' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcRoot,4>::aux_is_derived[2]=true; break; } -+ if (dynamic_cast<const UNSET*>(&*arg)) break; -+ try { GenericConvert( in->Name, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 2 to IfcRoot to be a `IfcLabel`")); } -+ } while(0); -+ do { // convert the 'Description' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcRoot,4>::aux_is_derived[3]=true; break; } -+ if (dynamic_cast<const UNSET*>(&*arg)) break; -+ try { GenericConvert( in->Description, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 3 to IfcRoot to be a `IfcText`")); } -+ } while(0); -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcObjectDefinition>(const DB& db, const LIST& params, IfcObjectDefinition* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcRoot*>(in)); -+ if (params.GetSize() < 4) { throw STEP::TypeError("expected 4 arguments to IfcObjectDefinition"); } return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcTypeObject>(const DB& db, const LIST& params, IfcTypeObject* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcObjectDefinition*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcTypeProduct>(const DB& db, const LIST& params, IfcTypeProduct* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcTypeObject*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcElementType>(const DB& db, const LIST& params, IfcElementType* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcTypeProduct*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcDistributionElementType>(const DB& db, const LIST& params, IfcDistributionElementType* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcElementType*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcDistributionFlowElementType>(const DB& db, const LIST& params, IfcDistributionFlowElementType* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcDistributionElementType*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcFlowControllerType>(const DB& db, const LIST& params, IfcFlowControllerType* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcDistributionFlowElementType*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcElectricTimeControlType>(const DB& db, const LIST& params, IfcElectricTimeControlType* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcFlowControllerType*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcRepresentation>(const DB& db, const LIST& params, IfcRepresentation* in) -+{ -+ size_t base = 0; -+ if (params.GetSize() < 4) { throw STEP::TypeError("expected 4 arguments to IfcRepresentation"); } do { // convert the 'ContextOfItems' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcRepresentation,4>::aux_is_derived[0]=true; break; } -+ try { GenericConvert( in->ContextOfItems, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcRepresentation to be a `IfcRepresentationContext`")); } -+ } while(0); -+ do { // convert the 'RepresentationIdentifier' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcRepresentation,4>::aux_is_derived[1]=true; break; } -+ if (dynamic_cast<const UNSET*>(&*arg)) break; -+ try { GenericConvert( in->RepresentationIdentifier, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 1 to IfcRepresentation to be a `IfcLabel`")); } -+ } while(0); -+ do { // convert the 'RepresentationType' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcRepresentation,4>::aux_is_derived[2]=true; break; } -+ if (dynamic_cast<const UNSET*>(&*arg)) break; -+ try { GenericConvert( in->RepresentationType, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 2 to IfcRepresentation to be a `IfcLabel`")); } -+ } while(0); -+ do { // convert the 'Items' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcRepresentation,4>::aux_is_derived[3]=true; break; } -+ try { GenericConvert( in->Items, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 3 to IfcRepresentation to be a `SET [1:?] OF IfcRepresentationItem`")); } -+ } while(0); -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcShapeModel>(const DB& db, const LIST& params, IfcShapeModel* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcRepresentation*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcTopologyRepresentation>(const DB& db, const LIST& params, IfcTopologyRepresentation* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcShapeModel*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcRelationship>(const DB& db, const LIST& params, IfcRelationship* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcRoot*>(in)); -+ if (params.GetSize() < 4) { throw STEP::TypeError("expected 4 arguments to IfcRelationship"); } return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcRelConnects>(const DB& db, const LIST& params, IfcRelConnects* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcRelationship*>(in)); -+ if (params.GetSize() < 4) { throw STEP::TypeError("expected 4 arguments to IfcRelConnects"); } return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcFlowFittingType>(const DB& db, const LIST& params, IfcFlowFittingType* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcDistributionFlowElementType*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcCableCarrierFittingType>(const DB& db, const LIST& params, IfcCableCarrierFittingType* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcFlowFittingType*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcEnergyConversionDeviceType>(const DB& db, const LIST& params, IfcEnergyConversionDeviceType* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcDistributionFlowElementType*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcCoilType>(const DB& db, const LIST& params, IfcCoilType* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcEnergyConversionDeviceType*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcObject>(const DB& db, const LIST& params, IfcObject* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcObjectDefinition*>(in)); -+ if (params.GetSize() < 5) { throw STEP::TypeError("expected 5 arguments to IfcObject"); } do { // convert the 'ObjectType' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcObject,1>::aux_is_derived[0]=true; break; } -+ if (dynamic_cast<const UNSET*>(&*arg)) break; -+ try { GenericConvert( in->ObjectType, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 4 to IfcObject to be a `IfcLabel`")); } -+ } while(0); -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcControl>(const DB& db, const LIST& params, IfcControl* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcObject*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcPerformanceHistory>(const DB& db, const LIST& params, IfcPerformanceHistory* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcControl*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcRepresentationItem>(const DB& db, const LIST& params, IfcRepresentationItem* in) -+{ -+ size_t base = 0; -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcGeometricRepresentationItem>(const DB& db, const LIST& params, IfcGeometricRepresentationItem* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcRepresentationItem*>(in)); -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcTextLiteral>(const DB& db, const LIST& params, IfcTextLiteral* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcGeometricRepresentationItem*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcTextLiteralWithExtent>(const DB& db, const LIST& params, IfcTextLiteralWithExtent* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcTextLiteral*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcProductRepresentation>(const DB& db, const LIST& params, IfcProductRepresentation* in) -+{ -+ size_t base = 0; -+ if (params.GetSize() < 3) { throw STEP::TypeError("expected 3 arguments to IfcProductRepresentation"); } do { // convert the 'Name' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcProductRepresentation,3>::aux_is_derived[0]=true; break; } -+ if (dynamic_cast<const UNSET*>(&*arg)) break; -+ try { GenericConvert( in->Name, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcProductRepresentation to be a `IfcLabel`")); } -+ } while(0); -+ do { // convert the 'Description' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcProductRepresentation,3>::aux_is_derived[1]=true; break; } -+ if (dynamic_cast<const UNSET*>(&*arg)) break; -+ try { GenericConvert( in->Description, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 1 to IfcProductRepresentation to be a `IfcText`")); } -+ } while(0); -+ do { // convert the 'Representations' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcProductRepresentation,3>::aux_is_derived[2]=true; break; } -+ try { GenericConvert( in->Representations, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 2 to IfcProductRepresentation to be a `LIST [1:?] OF IfcRepresentation`")); } -+ } while(0); -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcProduct>(const DB& db, const LIST& params, IfcProduct* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcObject*>(in)); -+ if (params.GetSize() < 7) { throw STEP::TypeError("expected 7 arguments to IfcProduct"); } do { // convert the 'ObjectPlacement' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcProduct,2>::aux_is_derived[0]=true; break; } -+ if (dynamic_cast<const UNSET*>(&*arg)) break; -+ try { GenericConvert( in->ObjectPlacement, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 5 to IfcProduct to be a `IfcObjectPlacement`")); } -+ } while(0); -+ do { // convert the 'Representation' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcProduct,2>::aux_is_derived[1]=true; break; } -+ if (dynamic_cast<const UNSET*>(&*arg)) break; -+ try { GenericConvert( in->Representation, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 6 to IfcProduct to be a `IfcProductRepresentation`")); } -+ } while(0); -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcElement>(const DB& db, const LIST& params, IfcElement* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcProduct*>(in)); -+ if (params.GetSize() < 8) { throw STEP::TypeError("expected 8 arguments to IfcElement"); } do { // convert the 'Tag' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcElement,1>::aux_is_derived[0]=true; break; } -+ if (dynamic_cast<const UNSET*>(&*arg)) break; -+ try { GenericConvert( in->Tag, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 7 to IfcElement to be a `IfcIdentifier`")); } -+ } while(0); -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcDistributionElement>(const DB& db, const LIST& params, IfcDistributionElement* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcElement*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcDistributionFlowElement>(const DB& db, const LIST& params, IfcDistributionFlowElement* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcDistributionElement*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcCurve>(const DB& db, const LIST& params, IfcCurve* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcGeometricRepresentationItem*>(in)); -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcBoundedCurve>(const DB& db, const LIST& params, IfcBoundedCurve* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcCurve*>(in)); -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcCompositeCurve>(const DB& db, const LIST& params, IfcCompositeCurve* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcBoundedCurve*>(in)); -+ if (params.GetSize() < 2) { throw STEP::TypeError("expected 2 arguments to IfcCompositeCurve"); } do { // convert the 'Segments' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcCompositeCurve,2>::aux_is_derived[0]=true; break; } -+ try { GenericConvert( in->Segments, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcCompositeCurve to be a `LIST [1:?] OF IfcCompositeCurveSegment`")); } -+ } while(0); -+ do { // convert the 'SelfIntersect' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcCompositeCurve,2>::aux_is_derived[1]=true; break; } -+ try { GenericConvert( in->SelfIntersect, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 1 to IfcCompositeCurve to be a `LOGICAL`")); } -+ } while(0); -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<Ifc2DCompositeCurve>(const DB& db, const LIST& params, Ifc2DCompositeCurve* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcCompositeCurve*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcCartesianTransformationOperator>(const DB& db, const LIST& params, IfcCartesianTransformationOperator* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcGeometricRepresentationItem*>(in)); -+ if (params.GetSize() < 4) { throw STEP::TypeError("expected 4 arguments to IfcCartesianTransformationOperator"); } do { // convert the 'Axis1' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcCartesianTransformationOperator,4>::aux_is_derived[0]=true; break; } -+ if (dynamic_cast<const UNSET*>(&*arg)) break; -+ try { GenericConvert( in->Axis1, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcCartesianTransformationOperator to be a `IfcDirection`")); } -+ } while(0); -+ do { // convert the 'Axis2' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcCartesianTransformationOperator,4>::aux_is_derived[1]=true; break; } -+ if (dynamic_cast<const UNSET*>(&*arg)) break; -+ try { GenericConvert( in->Axis2, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 1 to IfcCartesianTransformationOperator to be a `IfcDirection`")); } -+ } while(0); -+ do { // convert the 'LocalOrigin' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcCartesianTransformationOperator,4>::aux_is_derived[2]=true; break; } -+ try { GenericConvert( in->LocalOrigin, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 2 to IfcCartesianTransformationOperator to be a `IfcCartesianPoint`")); } -+ } while(0); -+ do { // convert the 'Scale' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcCartesianTransformationOperator,4>::aux_is_derived[3]=true; break; } -+ if (dynamic_cast<const UNSET*>(&*arg)) break; -+ try { GenericConvert( in->Scale, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 3 to IfcCartesianTransformationOperator to be a `REAL`")); } -+ } while(0); -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcCartesianTransformationOperator3D>(const DB& db, const LIST& params, IfcCartesianTransformationOperator3D* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcCartesianTransformationOperator*>(in)); -+ if (params.GetSize() < 5) { throw STEP::TypeError("expected 5 arguments to IfcCartesianTransformationOperator3D"); } do { // convert the 'Axis3' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcCartesianTransformationOperator3D,1>::aux_is_derived[0]=true; break; } -+ if (dynamic_cast<const UNSET*>(&*arg)) break; -+ try { GenericConvert( in->Axis3, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 4 to IfcCartesianTransformationOperator3D to be a `IfcDirection`")); } -+ } while(0); -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcProperty>(const DB& db, const LIST& params, IfcProperty* in) -+{ -+ size_t base = 0; -+ if (params.GetSize() < 2) { throw STEP::TypeError("expected 2 arguments to IfcProperty"); } do { // convert the 'Name' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcProperty,2>::aux_is_derived[0]=true; break; } -+ try { GenericConvert( in->Name, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcProperty to be a `IfcIdentifier`")); } -+ } while(0); -+ do { // convert the 'Description' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcProperty,2>::aux_is_derived[1]=true; break; } -+ if (dynamic_cast<const UNSET*>(&*arg)) break; -+ try { GenericConvert( in->Description, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 1 to IfcProperty to be a `IfcText`")); } -+ } while(0); -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcSimpleProperty>(const DB& db, const LIST& params, IfcSimpleProperty* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcProperty*>(in)); -+ if (params.GetSize() < 2) { throw STEP::TypeError("expected 2 arguments to IfcSimpleProperty"); } return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcPropertyEnumeratedValue>(const DB& db, const LIST& params, IfcPropertyEnumeratedValue* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcSimpleProperty*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcBuildingElementType>(const DB& db, const LIST& params, IfcBuildingElementType* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcElementType*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcStairFlightType>(const DB& db, const LIST& params, IfcStairFlightType* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcBuildingElementType*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcSurface>(const DB& db, const LIST& params, IfcSurface* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcGeometricRepresentationItem*>(in)); -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcElementarySurface>(const DB& db, const LIST& params, IfcElementarySurface* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcSurface*>(in)); -+ if (params.GetSize() < 1) { throw STEP::TypeError("expected 1 arguments to IfcElementarySurface"); } do { // convert the 'Position' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcElementarySurface,1>::aux_is_derived[0]=true; break; } -+ try { GenericConvert( in->Position, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcElementarySurface to be a `IfcAxis2Placement3D`")); } -+ } while(0); -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcPlane>(const DB& db, const LIST& params, IfcPlane* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcElementarySurface*>(in)); -+ if (params.GetSize() < 1) { throw STEP::TypeError("expected 1 arguments to IfcPlane"); } return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcBooleanResult>(const DB& db, const LIST& params, IfcBooleanResult* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcGeometricRepresentationItem*>(in)); -+ if (params.GetSize() < 3) { throw STEP::TypeError("expected 3 arguments to IfcBooleanResult"); } do { // convert the 'Operator' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcBooleanResult,3>::aux_is_derived[0]=true; break; } -+ try { GenericConvert( in->Operator, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcBooleanResult to be a `IfcBooleanOperator`")); } -+ } while(0); -+ do { // convert the 'FirstOperand' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcBooleanResult,3>::aux_is_derived[1]=true; break; } -+ try { GenericConvert( in->FirstOperand, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 1 to IfcBooleanResult to be a `IfcBooleanOperand`")); } -+ } while(0); -+ do { // convert the 'SecondOperand' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcBooleanResult,3>::aux_is_derived[2]=true; break; } -+ try { GenericConvert( in->SecondOperand, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 2 to IfcBooleanResult to be a `IfcBooleanOperand`")); } -+ } while(0); -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcBooleanClippingResult>(const DB& db, const LIST& params, IfcBooleanClippingResult* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcBooleanResult*>(in)); -+ if (params.GetSize() < 3) { throw STEP::TypeError("expected 3 arguments to IfcBooleanClippingResult"); } return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcSolidModel>(const DB& db, const LIST& params, IfcSolidModel* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcGeometricRepresentationItem*>(in)); -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcManifoldSolidBrep>(const DB& db, const LIST& params, IfcManifoldSolidBrep* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcSolidModel*>(in)); -+ if (params.GetSize() < 1) { throw STEP::TypeError("expected 1 arguments to IfcManifoldSolidBrep"); } do { // convert the 'Outer' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcManifoldSolidBrep,1>::aux_is_derived[0]=true; break; } -+ try { GenericConvert( in->Outer, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcManifoldSolidBrep to be a `IfcClosedShell`")); } -+ } while(0); -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcFlowTerminalType>(const DB& db, const LIST& params, IfcFlowTerminalType* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcDistributionFlowElementType*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcStackTerminalType>(const DB& db, const LIST& params, IfcStackTerminalType* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcFlowTerminalType*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcStructuralItem>(const DB& db, const LIST& params, IfcStructuralItem* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcProduct*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcStructuralConnection>(const DB& db, const LIST& params, IfcStructuralConnection* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcStructuralItem*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcStructuralCurveConnection>(const DB& db, const LIST& params, IfcStructuralCurveConnection* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcStructuralConnection*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcJunctionBoxType>(const DB& db, const LIST& params, IfcJunctionBoxType* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcFlowFittingType*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcPropertyDefinition>(const DB& db, const LIST& params, IfcPropertyDefinition* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcRoot*>(in)); -+ if (params.GetSize() < 4) { throw STEP::TypeError("expected 4 arguments to IfcPropertyDefinition"); } return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcPropertySetDefinition>(const DB& db, const LIST& params, IfcPropertySetDefinition* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcPropertyDefinition*>(in)); -+ if (params.GetSize() < 4) { throw STEP::TypeError("expected 4 arguments to IfcPropertySetDefinition"); } return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcProcess>(const DB& db, const LIST& params, IfcProcess* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcObject*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcTask>(const DB& db, const LIST& params, IfcTask* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcProcess*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcRelFillsElement>(const DB& db, const LIST& params, IfcRelFillsElement* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcRelConnects*>(in)); -+ if (params.GetSize() < 6) { throw STEP::TypeError("expected 6 arguments to IfcRelFillsElement"); } do { // convert the 'RelatingOpeningElement' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ try { GenericConvert( in->RelatingOpeningElement, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 4 to IfcRelFillsElement to be a `IfcOpeningElement`")); } -+ } while(0); -+ do { // convert the 'RelatedBuildingElement' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ try { GenericConvert( in->RelatedBuildingElement, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 5 to IfcRelFillsElement to be a `IfcElement`")); } -+ } while(0); -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcProcedure>(const DB& db, const LIST& params, IfcProcedure* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcProcess*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcProxy>(const DB& db, const LIST& params, IfcProxy* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcProduct*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcResource>(const DB& db, const LIST& params, IfcResource* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcObject*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcConstructionResource>(const DB& db, const LIST& params, IfcConstructionResource* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcResource*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcSubContractResource>(const DB& db, const LIST& params, IfcSubContractResource* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcConstructionResource*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcRelContainedInSpatialStructure>(const DB& db, const LIST& params, IfcRelContainedInSpatialStructure* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcRelConnects*>(in)); -+ if (params.GetSize() < 6) { throw STEP::TypeError("expected 6 arguments to IfcRelContainedInSpatialStructure"); } do { // convert the 'RelatedElements' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ try { GenericConvert( in->RelatedElements, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 4 to IfcRelContainedInSpatialStructure to be a `SET [1:?] OF IfcProduct`")); } -+ } while(0); -+ do { // convert the 'RelatingStructure' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ try { GenericConvert( in->RelatingStructure, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 5 to IfcRelContainedInSpatialStructure to be a `IfcSpatialStructureElement`")); } -+ } while(0); -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcTopologicalRepresentationItem>(const DB& db, const LIST& params, IfcTopologicalRepresentationItem* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcRepresentationItem*>(in)); -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcEdge>(const DB& db, const LIST& params, IfcEdge* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcTopologicalRepresentationItem*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcEdgeCurve>(const DB& db, const LIST& params, IfcEdgeCurve* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcEdge*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcPlateType>(const DB& db, const LIST& params, IfcPlateType* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcBuildingElementType*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcObjectPlacement>(const DB& db, const LIST& params, IfcObjectPlacement* in) -+{ -+ size_t base = 0; -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcGridPlacement>(const DB& db, const LIST& params, IfcGridPlacement* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcObjectPlacement*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcFireSuppressionTerminalType>(const DB& db, const LIST& params, IfcFireSuppressionTerminalType* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcFlowTerminalType*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcFlowStorageDevice>(const DB& db, const LIST& params, IfcFlowStorageDevice* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcDistributionFlowElement*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcSweptSurface>(const DB& db, const LIST& params, IfcSweptSurface* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcSurface*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcSurfaceOfRevolution>(const DB& db, const LIST& params, IfcSurfaceOfRevolution* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcSweptSurface*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcOrientedEdge>(const DB& db, const LIST& params, IfcOrientedEdge* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcEdge*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcDirection>(const DB& db, const LIST& params, IfcDirection* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcGeometricRepresentationItem*>(in)); -+ if (params.GetSize() < 1) { throw STEP::TypeError("expected 1 arguments to IfcDirection"); } do { // convert the 'DirectionRatios' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ try { GenericConvert( in->DirectionRatios, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcDirection to be a `LIST [2:3] OF REAL`")); } -+ } while(0); -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcProfileDef>(const DB& db, const LIST& params, IfcProfileDef* in) -+{ -+ size_t base = 0; -+ if (params.GetSize() < 2) { throw STEP::TypeError("expected 2 arguments to IfcProfileDef"); } do { // convert the 'ProfileType' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcProfileDef,2>::aux_is_derived[0]=true; break; } -+ try { GenericConvert( in->ProfileType, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcProfileDef to be a `IfcProfileTypeEnum`")); } -+ } while(0); -+ do { // convert the 'ProfileName' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcProfileDef,2>::aux_is_derived[1]=true; break; } -+ if (dynamic_cast<const UNSET*>(&*arg)) break; -+ try { GenericConvert( in->ProfileName, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 1 to IfcProfileDef to be a `IfcLabel`")); } -+ } while(0); -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcParameterizedProfileDef>(const DB& db, const LIST& params, IfcParameterizedProfileDef* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcProfileDef*>(in)); -+ if (params.GetSize() < 3) { throw STEP::TypeError("expected 3 arguments to IfcParameterizedProfileDef"); } do { // convert the 'Position' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcParameterizedProfileDef,1>::aux_is_derived[0]=true; break; } -+ try { GenericConvert( in->Position, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 2 to IfcParameterizedProfileDef to be a `IfcAxis2Placement2D`")); } -+ } while(0); -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcCShapeProfileDef>(const DB& db, const LIST& params, IfcCShapeProfileDef* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcParameterizedProfileDef*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcFeatureElement>(const DB& db, const LIST& params, IfcFeatureElement* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcElement*>(in)); -+ if (params.GetSize() < 8) { throw STEP::TypeError("expected 8 arguments to IfcFeatureElement"); } return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcFeatureElementSubtraction>(const DB& db, const LIST& params, IfcFeatureElementSubtraction* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcFeatureElement*>(in)); -+ if (params.GetSize() < 8) { throw STEP::TypeError("expected 8 arguments to IfcFeatureElementSubtraction"); } return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcEdgeFeature>(const DB& db, const LIST& params, IfcEdgeFeature* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcFeatureElementSubtraction*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcChamferEdgeFeature>(const DB& db, const LIST& params, IfcChamferEdgeFeature* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcEdgeFeature*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcBuildingElement>(const DB& db, const LIST& params, IfcBuildingElement* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcElement*>(in)); -+ if (params.GetSize() < 8) { throw STEP::TypeError("expected 8 arguments to IfcBuildingElement"); } return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcColumn>(const DB& db, const LIST& params, IfcColumn* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcBuildingElement*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcPropertyReferenceValue>(const DB& db, const LIST& params, IfcPropertyReferenceValue* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcSimpleProperty*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcElectricMotorType>(const DB& db, const LIST& params, IfcElectricMotorType* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcEnergyConversionDeviceType*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcSpatialStructureElementType>(const DB& db, const LIST& params, IfcSpatialStructureElementType* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcElementType*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcSpaceType>(const DB& db, const LIST& params, IfcSpaceType* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcSpatialStructureElementType*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcColumnType>(const DB& db, const LIST& params, IfcColumnType* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcBuildingElementType*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcCraneRailAShapeProfileDef>(const DB& db, const LIST& params, IfcCraneRailAShapeProfileDef* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcParameterizedProfileDef*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcCondenserType>(const DB& db, const LIST& params, IfcCondenserType* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcEnergyConversionDeviceType*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcCircleProfileDef>(const DB& db, const LIST& params, IfcCircleProfileDef* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcParameterizedProfileDef*>(in)); -+ if (params.GetSize() < 4) { throw STEP::TypeError("expected 4 arguments to IfcCircleProfileDef"); } do { // convert the 'Radius' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcCircleProfileDef,1>::aux_is_derived[0]=true; break; } -+ try { GenericConvert( in->Radius, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 3 to IfcCircleProfileDef to be a `IfcPositiveLengthMeasure`")); } -+ } while(0); -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcCircleHollowProfileDef>(const DB& db, const LIST& params, IfcCircleHollowProfileDef* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcCircleProfileDef*>(in)); -+ if (params.GetSize() < 5) { throw STEP::TypeError("expected 5 arguments to IfcCircleHollowProfileDef"); } do { // convert the 'WallThickness' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ try { GenericConvert( in->WallThickness, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 4 to IfcCircleHollowProfileDef to be a `IfcPositiveLengthMeasure`")); } -+ } while(0); -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcPlacement>(const DB& db, const LIST& params, IfcPlacement* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcGeometricRepresentationItem*>(in)); -+ if (params.GetSize() < 1) { throw STEP::TypeError("expected 1 arguments to IfcPlacement"); } do { // convert the 'Location' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcPlacement,1>::aux_is_derived[0]=true; break; } -+ try { GenericConvert( in->Location, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcPlacement to be a `IfcCartesianPoint`")); } -+ } while(0); -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcAxis2Placement3D>(const DB& db, const LIST& params, IfcAxis2Placement3D* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcPlacement*>(in)); -+ if (params.GetSize() < 3) { throw STEP::TypeError("expected 3 arguments to IfcAxis2Placement3D"); } do { // convert the 'Axis' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ if (dynamic_cast<const UNSET*>(&*arg)) break; -+ try { GenericConvert( in->Axis, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 1 to IfcAxis2Placement3D to be a `IfcDirection`")); } -+ } while(0); -+ do { // convert the 'RefDirection' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ if (dynamic_cast<const UNSET*>(&*arg)) break; -+ try { GenericConvert( in->RefDirection, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 2 to IfcAxis2Placement3D to be a `IfcDirection`")); } -+ } while(0); -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcPresentationStyle>(const DB& db, const LIST& params, IfcPresentationStyle* in) -+{ -+ size_t base = 0; -+ if (params.GetSize() < 1) { throw STEP::TypeError("expected 1 arguments to IfcPresentationStyle"); } do { // convert the 'Name' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcPresentationStyle,1>::aux_is_derived[0]=true; break; } -+ if (dynamic_cast<const UNSET*>(&*arg)) break; -+ try { GenericConvert( in->Name, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcPresentationStyle to be a `IfcLabel`")); } -+ } while(0); -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcEquipmentElement>(const DB& db, const LIST& params, IfcEquipmentElement* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcElement*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcCompositeCurveSegment>(const DB& db, const LIST& params, IfcCompositeCurveSegment* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcGeometricRepresentationItem*>(in)); -+ if (params.GetSize() < 3) { throw STEP::TypeError("expected 3 arguments to IfcCompositeCurveSegment"); } do { // convert the 'Transition' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ try { GenericConvert( in->Transition, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcCompositeCurveSegment to be a `IfcTransitionCode`")); } -+ } while(0); -+ do { // convert the 'SameSense' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ try { GenericConvert( in->SameSense, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 1 to IfcCompositeCurveSegment to be a `BOOLEAN`")); } -+ } while(0); -+ do { // convert the 'ParentCurve' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ try { GenericConvert( in->ParentCurve, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 2 to IfcCompositeCurveSegment to be a `IfcCurve`")); } -+ } while(0); -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcRectangleProfileDef>(const DB& db, const LIST& params, IfcRectangleProfileDef* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcParameterizedProfileDef*>(in)); -+ if (params.GetSize() < 5) { throw STEP::TypeError("expected 5 arguments to IfcRectangleProfileDef"); } do { // convert the 'XDim' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcRectangleProfileDef,2>::aux_is_derived[0]=true; break; } -+ try { GenericConvert( in->XDim, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 3 to IfcRectangleProfileDef to be a `IfcPositiveLengthMeasure`")); } -+ } while(0); -+ do { // convert the 'YDim' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcRectangleProfileDef,2>::aux_is_derived[1]=true; break; } -+ try { GenericConvert( in->YDim, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 4 to IfcRectangleProfileDef to be a `IfcPositiveLengthMeasure`")); } -+ } while(0); -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcBuildingElementProxy>(const DB& db, const LIST& params, IfcBuildingElementProxy* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcBuildingElement*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcDistributionControlElementType>(const DB& db, const LIST& params, IfcDistributionControlElementType* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcDistributionElementType*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcFlowInstrumentType>(const DB& db, const LIST& params, IfcFlowInstrumentType* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcDistributionControlElementType*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcDraughtingCallout>(const DB& db, const LIST& params, IfcDraughtingCallout* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcGeometricRepresentationItem*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcDimensionCurveDirectedCallout>(const DB& db, const LIST& params, IfcDimensionCurveDirectedCallout* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcDraughtingCallout*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcLinearDimension>(const DB& db, const LIST& params, IfcLinearDimension* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcDimensionCurveDirectedCallout*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcElementAssembly>(const DB& db, const LIST& params, IfcElementAssembly* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcElement*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcCsgPrimitive3D>(const DB& db, const LIST& params, IfcCsgPrimitive3D* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcGeometricRepresentationItem*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcRightCircularCone>(const DB& db, const LIST& params, IfcRightCircularCone* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcCsgPrimitive3D*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcProjectOrder>(const DB& db, const LIST& params, IfcProjectOrder* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcControl*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcLShapeProfileDef>(const DB& db, const LIST& params, IfcLShapeProfileDef* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcParameterizedProfileDef*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcAngularDimension>(const DB& db, const LIST& params, IfcAngularDimension* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcDimensionCurveDirectedCallout*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcLocalPlacement>(const DB& db, const LIST& params, IfcLocalPlacement* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcObjectPlacement*>(in)); -+ if (params.GetSize() < 2) { throw STEP::TypeError("expected 2 arguments to IfcLocalPlacement"); } do { // convert the 'PlacementRelTo' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ if (dynamic_cast<const UNSET*>(&*arg)) break; -+ try { GenericConvert( in->PlacementRelTo, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcLocalPlacement to be a `IfcObjectPlacement`")); } -+ } while(0); -+ do { // convert the 'RelativePlacement' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ try { GenericConvert( in->RelativePlacement, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 1 to IfcLocalPlacement to be a `IfcAxis2Placement`")); } -+ } while(0); -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcSweptAreaSolid>(const DB& db, const LIST& params, IfcSweptAreaSolid* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcSolidModel*>(in)); -+ if (params.GetSize() < 2) { throw STEP::TypeError("expected 2 arguments to IfcSweptAreaSolid"); } do { // convert the 'SweptArea' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcSweptAreaSolid,2>::aux_is_derived[0]=true; break; } -+ try { GenericConvert( in->SweptArea, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcSweptAreaSolid to be a `IfcProfileDef`")); } -+ } while(0); -+ do { // convert the 'Position' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcSweptAreaSolid,2>::aux_is_derived[1]=true; break; } -+ try { GenericConvert( in->Position, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 1 to IfcSweptAreaSolid to be a `IfcAxis2Placement3D`")); } -+ } while(0); -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcRevolvedAreaSolid>(const DB& db, const LIST& params, IfcRevolvedAreaSolid* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcSweptAreaSolid*>(in)); -+ if (params.GetSize() < 4) { throw STEP::TypeError("expected 4 arguments to IfcRevolvedAreaSolid"); } do { // convert the 'Axis' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ try { GenericConvert( in->Axis, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 2 to IfcRevolvedAreaSolid to be a `IfcAxis1Placement`")); } -+ } while(0); -+ do { // convert the 'Angle' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ try { GenericConvert( in->Angle, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 3 to IfcRevolvedAreaSolid to be a `IfcPlaneAngleMeasure`")); } -+ } while(0); -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcStructuralSurfaceConnection>(const DB& db, const LIST& params, IfcStructuralSurfaceConnection* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcStructuralConnection*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcRadiusDimension>(const DB& db, const LIST& params, IfcRadiusDimension* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcDimensionCurveDirectedCallout*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcSweptDiskSolid>(const DB& db, const LIST& params, IfcSweptDiskSolid* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcSolidModel*>(in)); -+ if (params.GetSize() < 5) { throw STEP::TypeError("expected 5 arguments to IfcSweptDiskSolid"); } do { // convert the 'Directrix' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ try { GenericConvert( in->Directrix, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcSweptDiskSolid to be a `IfcCurve`")); } -+ } while(0); -+ do { // convert the 'Radius' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ try { GenericConvert( in->Radius, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 1 to IfcSweptDiskSolid to be a `IfcPositiveLengthMeasure`")); } -+ } while(0); -+ do { // convert the 'InnerRadius' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ if (dynamic_cast<const UNSET*>(&*arg)) break; -+ try { GenericConvert( in->InnerRadius, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 2 to IfcSweptDiskSolid to be a `IfcPositiveLengthMeasure`")); } -+ } while(0); -+ do { // convert the 'StartParam' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ try { GenericConvert( in->StartParam, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 3 to IfcSweptDiskSolid to be a `IfcParameterValue`")); } -+ } while(0); -+ do { // convert the 'EndParam' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ try { GenericConvert( in->EndParam, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 4 to IfcSweptDiskSolid to be a `IfcParameterValue`")); } -+ } while(0); -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcHalfSpaceSolid>(const DB& db, const LIST& params, IfcHalfSpaceSolid* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcGeometricRepresentationItem*>(in)); -+ if (params.GetSize() < 2) { throw STEP::TypeError("expected 2 arguments to IfcHalfSpaceSolid"); } do { // convert the 'BaseSurface' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcHalfSpaceSolid,2>::aux_is_derived[0]=true; break; } -+ try { GenericConvert( in->BaseSurface, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcHalfSpaceSolid to be a `IfcSurface`")); } -+ } while(0); -+ do { // convert the 'AgreementFlag' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcHalfSpaceSolid,2>::aux_is_derived[1]=true; break; } -+ try { GenericConvert( in->AgreementFlag, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 1 to IfcHalfSpaceSolid to be a `BOOLEAN`")); } -+ } while(0); -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcPolygonalBoundedHalfSpace>(const DB& db, const LIST& params, IfcPolygonalBoundedHalfSpace* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcHalfSpaceSolid*>(in)); -+ if (params.GetSize() < 4) { throw STEP::TypeError("expected 4 arguments to IfcPolygonalBoundedHalfSpace"); } do { // convert the 'Position' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ try { GenericConvert( in->Position, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 2 to IfcPolygonalBoundedHalfSpace to be a `IfcAxis2Placement3D`")); } -+ } while(0); -+ do { // convert the 'PolygonalBoundary' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ try { GenericConvert( in->PolygonalBoundary, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 3 to IfcPolygonalBoundedHalfSpace to be a `IfcBoundedCurve`")); } -+ } while(0); -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcTimeSeriesSchedule>(const DB& db, const LIST& params, IfcTimeSeriesSchedule* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcControl*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcCooledBeamType>(const DB& db, const LIST& params, IfcCooledBeamType* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcEnergyConversionDeviceType*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcProject>(const DB& db, const LIST& params, IfcProject* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcObject*>(in)); -+ if (params.GetSize() < 9) { throw STEP::TypeError("expected 9 arguments to IfcProject"); } do { // convert the 'LongName' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ if (dynamic_cast<const UNSET*>(&*arg)) break; -+ try { GenericConvert( in->LongName, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 5 to IfcProject to be a `IfcLabel`")); } -+ } while(0); -+ do { // convert the 'Phase' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ if (dynamic_cast<const UNSET*>(&*arg)) break; -+ try { GenericConvert( in->Phase, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 6 to IfcProject to be a `IfcLabel`")); } -+ } while(0); -+ do { // convert the 'RepresentationContexts' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ try { GenericConvert( in->RepresentationContexts, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 7 to IfcProject to be a `SET [1:?] OF IfcRepresentationContext`")); } -+ } while(0); -+ do { // convert the 'UnitsInContext' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ try { GenericConvert( in->UnitsInContext, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 8 to IfcProject to be a `IfcUnitAssignment`")); } -+ } while(0); -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcEvaporatorType>(const DB& db, const LIST& params, IfcEvaporatorType* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcEnergyConversionDeviceType*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcLaborResource>(const DB& db, const LIST& params, IfcLaborResource* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcConstructionResource*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcPropertyBoundedValue>(const DB& db, const LIST& params, IfcPropertyBoundedValue* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcSimpleProperty*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcRampFlightType>(const DB& db, const LIST& params, IfcRampFlightType* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcBuildingElementType*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcMember>(const DB& db, const LIST& params, IfcMember* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcBuildingElement*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcTubeBundleType>(const DB& db, const LIST& params, IfcTubeBundleType* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcEnergyConversionDeviceType*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcValveType>(const DB& db, const LIST& params, IfcValveType* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcFlowControllerType*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcTrimmedCurve>(const DB& db, const LIST& params, IfcTrimmedCurve* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcBoundedCurve*>(in)); -+ if (params.GetSize() < 5) { throw STEP::TypeError("expected 5 arguments to IfcTrimmedCurve"); } do { // convert the 'BasisCurve' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ try { GenericConvert( in->BasisCurve, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcTrimmedCurve to be a `IfcCurve`")); } -+ } while(0); -+ do { // convert the 'Trim1' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ try { GenericConvert( in->Trim1, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 1 to IfcTrimmedCurve to be a `SET [1:2] OF IfcTrimmingSelect`")); } -+ } while(0); -+ do { // convert the 'Trim2' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ try { GenericConvert( in->Trim2, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 2 to IfcTrimmedCurve to be a `SET [1:2] OF IfcTrimmingSelect`")); } -+ } while(0); -+ do { // convert the 'SenseAgreement' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ try { GenericConvert( in->SenseAgreement, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 3 to IfcTrimmedCurve to be a `BOOLEAN`")); } -+ } while(0); -+ do { // convert the 'MasterRepresentation' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ try { GenericConvert( in->MasterRepresentation, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 4 to IfcTrimmedCurve to be a `IfcTrimmingPreference`")); } -+ } while(0); -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcRelDefines>(const DB& db, const LIST& params, IfcRelDefines* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcRelationship*>(in)); -+ if (params.GetSize() < 5) { throw STEP::TypeError("expected 5 arguments to IfcRelDefines"); } do { // convert the 'RelatedObjects' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcRelDefines,1>::aux_is_derived[0]=true; break; } -+ try { GenericConvert( in->RelatedObjects, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 4 to IfcRelDefines to be a `SET [1:?] OF IfcObject`")); } -+ } while(0); -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcRelDefinesByProperties>(const DB& db, const LIST& params, IfcRelDefinesByProperties* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcRelDefines*>(in)); -+ if (params.GetSize() < 6) { throw STEP::TypeError("expected 6 arguments to IfcRelDefinesByProperties"); } do { // convert the 'RelatingPropertyDefinition' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcRelDefinesByProperties,1>::aux_is_derived[0]=true; break; } -+ try { GenericConvert( in->RelatingPropertyDefinition, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 5 to IfcRelDefinesByProperties to be a `IfcPropertySetDefinition`")); } -+ } while(0); -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcActor>(const DB& db, const LIST& params, IfcActor* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcObject*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcOccupant>(const DB& db, const LIST& params, IfcOccupant* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcActor*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcHumidifierType>(const DB& db, const LIST& params, IfcHumidifierType* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcEnergyConversionDeviceType*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcArbitraryOpenProfileDef>(const DB& db, const LIST& params, IfcArbitraryOpenProfileDef* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcProfileDef*>(in)); -+ if (params.GetSize() < 3) { throw STEP::TypeError("expected 3 arguments to IfcArbitraryOpenProfileDef"); } do { // convert the 'Curve' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcArbitraryOpenProfileDef,1>::aux_is_derived[0]=true; break; } -+ try { GenericConvert( in->Curve, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 2 to IfcArbitraryOpenProfileDef to be a `IfcBoundedCurve`")); } -+ } while(0); -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcPermit>(const DB& db, const LIST& params, IfcPermit* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcControl*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcOffsetCurve3D>(const DB& db, const LIST& params, IfcOffsetCurve3D* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcCurve*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcLightSource>(const DB& db, const LIST& params, IfcLightSource* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcGeometricRepresentationItem*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcLightSourcePositional>(const DB& db, const LIST& params, IfcLightSourcePositional* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcLightSource*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcCompositeProfileDef>(const DB& db, const LIST& params, IfcCompositeProfileDef* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcProfileDef*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcRamp>(const DB& db, const LIST& params, IfcRamp* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcBuildingElement*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcFlowMovingDevice>(const DB& db, const LIST& params, IfcFlowMovingDevice* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcDistributionFlowElement*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcSpaceHeaterType>(const DB& db, const LIST& params, IfcSpaceHeaterType* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcEnergyConversionDeviceType*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcLampType>(const DB& db, const LIST& params, IfcLampType* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcFlowTerminalType*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcBuildingElementComponent>(const DB& db, const LIST& params, IfcBuildingElementComponent* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcBuildingElement*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcReinforcingElement>(const DB& db, const LIST& params, IfcReinforcingElement* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcBuildingElementComponent*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcReinforcingBar>(const DB& db, const LIST& params, IfcReinforcingBar* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcReinforcingElement*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcElectricHeaterType>(const DB& db, const LIST& params, IfcElectricHeaterType* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcFlowTerminalType*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcTShapeProfileDef>(const DB& db, const LIST& params, IfcTShapeProfileDef* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcParameterizedProfileDef*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcStructuralActivity>(const DB& db, const LIST& params, IfcStructuralActivity* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcProduct*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcStructuralAction>(const DB& db, const LIST& params, IfcStructuralAction* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcStructuralActivity*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcDuctFittingType>(const DB& db, const LIST& params, IfcDuctFittingType* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcFlowFittingType*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcCartesianTransformationOperator2D>(const DB& db, const LIST& params, IfcCartesianTransformationOperator2D* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcCartesianTransformationOperator*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcCartesianTransformationOperator2DnonUniform>(const DB& db, const LIST& params, IfcCartesianTransformationOperator2DnonUniform* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcCartesianTransformationOperator2D*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcVirtualElement>(const DB& db, const LIST& params, IfcVirtualElement* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcElement*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcRightCircularCylinder>(const DB& db, const LIST& params, IfcRightCircularCylinder* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcCsgPrimitive3D*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcOutletType>(const DB& db, const LIST& params, IfcOutletType* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcFlowTerminalType*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcRelDecomposes>(const DB& db, const LIST& params, IfcRelDecomposes* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcRelationship*>(in)); -+ if (params.GetSize() < 6) { throw STEP::TypeError("expected 6 arguments to IfcRelDecomposes"); } do { // convert the 'RelatingObject' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcRelDecomposes,2>::aux_is_derived[0]=true; break; } -+ try { GenericConvert( in->RelatingObject, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 4 to IfcRelDecomposes to be a `IfcObjectDefinition`")); } -+ } while(0); -+ do { // convert the 'RelatedObjects' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcRelDecomposes,2>::aux_is_derived[1]=true; break; } -+ try { GenericConvert( in->RelatedObjects, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 5 to IfcRelDecomposes to be a `SET [1:?] OF IfcObjectDefinition`")); } -+ } while(0); -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcCovering>(const DB& db, const LIST& params, IfcCovering* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcBuildingElement*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcPolyline>(const DB& db, const LIST& params, IfcPolyline* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcBoundedCurve*>(in)); -+ if (params.GetSize() < 1) { throw STEP::TypeError("expected 1 arguments to IfcPolyline"); } do { // convert the 'Points' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ try { GenericConvert( in->Points, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcPolyline to be a `LIST [2:?] OF IfcCartesianPoint`")); } -+ } while(0); -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcPath>(const DB& db, const LIST& params, IfcPath* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcTopologicalRepresentationItem*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcElementComponent>(const DB& db, const LIST& params, IfcElementComponent* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcElement*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcFastener>(const DB& db, const LIST& params, IfcFastener* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcElementComponent*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcMappedItem>(const DB& db, const LIST& params, IfcMappedItem* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcRepresentationItem*>(in)); -+ if (params.GetSize() < 2) { throw STEP::TypeError("expected 2 arguments to IfcMappedItem"); } do { // convert the 'MappingSource' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ try { GenericConvert( in->MappingSource, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcMappedItem to be a `IfcRepresentationMap`")); } -+ } while(0); -+ do { // convert the 'MappingTarget' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ try { GenericConvert( in->MappingTarget, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 1 to IfcMappedItem to be a `IfcCartesianTransformationOperator`")); } -+ } while(0); -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcRectangularPyramid>(const DB& db, const LIST& params, IfcRectangularPyramid* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcCsgPrimitive3D*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcCrewResource>(const DB& db, const LIST& params, IfcCrewResource* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcConstructionResource*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcNamedUnit>(const DB& db, const LIST& params, IfcNamedUnit* in) -+{ -+ size_t base = 0; -+ if (params.GetSize() < 2) { throw STEP::TypeError("expected 2 arguments to IfcNamedUnit"); } do { // convert the 'Dimensions' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcNamedUnit,2>::aux_is_derived[0]=true; break; } -+ try { GenericConvert( in->Dimensions, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcNamedUnit to be a `IfcDimensionalExponents`")); } -+ } while(0); -+ do { // convert the 'UnitType' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcNamedUnit,2>::aux_is_derived[1]=true; break; } -+ try { GenericConvert( in->UnitType, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 1 to IfcNamedUnit to be a `IfcUnitEnum`")); } -+ } while(0); -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcContextDependentUnit>(const DB& db, const LIST& params, IfcContextDependentUnit* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcNamedUnit*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcUnitaryEquipmentType>(const DB& db, const LIST& params, IfcUnitaryEquipmentType* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcEnergyConversionDeviceType*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcRoof>(const DB& db, const LIST& params, IfcRoof* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcBuildingElement*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcStructuralMember>(const DB& db, const LIST& params, IfcStructuralMember* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcStructuralItem*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcStyleModel>(const DB& db, const LIST& params, IfcStyleModel* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcRepresentation*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcStyledRepresentation>(const DB& db, const LIST& params, IfcStyledRepresentation* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcStyleModel*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcSpatialStructureElement>(const DB& db, const LIST& params, IfcSpatialStructureElement* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcProduct*>(in)); -+ if (params.GetSize() < 9) { throw STEP::TypeError("expected 9 arguments to IfcSpatialStructureElement"); } do { // convert the 'LongName' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcSpatialStructureElement,2>::aux_is_derived[0]=true; break; } -+ if (dynamic_cast<const UNSET*>(&*arg)) break; -+ try { GenericConvert( in->LongName, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 7 to IfcSpatialStructureElement to be a `IfcLabel`")); } -+ } while(0); -+ do { // convert the 'CompositionType' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcSpatialStructureElement,2>::aux_is_derived[1]=true; break; } -+ try { GenericConvert( in->CompositionType, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 8 to IfcSpatialStructureElement to be a `IfcElementCompositionEnum`")); } -+ } while(0); -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcBuilding>(const DB& db, const LIST& params, IfcBuilding* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcSpatialStructureElement*>(in)); -+ if (params.GetSize() < 12) { throw STEP::TypeError("expected 12 arguments to IfcBuilding"); } do { // convert the 'ElevationOfRefHeight' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ if (dynamic_cast<const UNSET*>(&*arg)) break; -+ try { GenericConvert( in->ElevationOfRefHeight, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 9 to IfcBuilding to be a `IfcLengthMeasure`")); } -+ } while(0); -+ do { // convert the 'ElevationOfTerrain' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ if (dynamic_cast<const UNSET*>(&*arg)) break; -+ try { GenericConvert( in->ElevationOfTerrain, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 10 to IfcBuilding to be a `IfcLengthMeasure`")); } -+ } while(0); -+ do { // convert the 'BuildingAddress' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ if (dynamic_cast<const UNSET*>(&*arg)) break; -+ try { GenericConvert( in->BuildingAddress, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 11 to IfcBuilding to be a `IfcPostalAddress`")); } -+ } while(0); -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcConnectedFaceSet>(const DB& db, const LIST& params, IfcConnectedFaceSet* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcTopologicalRepresentationItem*>(in)); -+ if (params.GetSize() < 1) { throw STEP::TypeError("expected 1 arguments to IfcConnectedFaceSet"); } do { // convert the 'CfsFaces' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcConnectedFaceSet,1>::aux_is_derived[0]=true; break; } -+ try { GenericConvert( in->CfsFaces, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcConnectedFaceSet to be a `SET [1:?] OF IfcFace`")); } -+ } while(0); -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcOpenShell>(const DB& db, const LIST& params, IfcOpenShell* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcConnectedFaceSet*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcFacetedBrep>(const DB& db, const LIST& params, IfcFacetedBrep* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcManifoldSolidBrep*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcConic>(const DB& db, const LIST& params, IfcConic* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcCurve*>(in)); -+ if (params.GetSize() < 1) { throw STEP::TypeError("expected 1 arguments to IfcConic"); } do { // convert the 'Position' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcConic,1>::aux_is_derived[0]=true; break; } -+ try { GenericConvert( in->Position, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcConic to be a `IfcAxis2Placement`")); } -+ } while(0); -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcCoveringType>(const DB& db, const LIST& params, IfcCoveringType* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcBuildingElementType*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcRoundedRectangleProfileDef>(const DB& db, const LIST& params, IfcRoundedRectangleProfileDef* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcRectangleProfileDef*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcAirTerminalType>(const DB& db, const LIST& params, IfcAirTerminalType* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcFlowTerminalType*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcFlowMovingDeviceType>(const DB& db, const LIST& params, IfcFlowMovingDeviceType* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcDistributionFlowElementType*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcCompressorType>(const DB& db, const LIST& params, IfcCompressorType* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcFlowMovingDeviceType*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcIShapeProfileDef>(const DB& db, const LIST& params, IfcIShapeProfileDef* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcParameterizedProfileDef*>(in)); -+ if (params.GetSize() < 8) { throw STEP::TypeError("expected 8 arguments to IfcIShapeProfileDef"); } do { // convert the 'OverallWidth' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcIShapeProfileDef,5>::aux_is_derived[0]=true; break; } -+ try { GenericConvert( in->OverallWidth, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 3 to IfcIShapeProfileDef to be a `IfcPositiveLengthMeasure`")); } -+ } while(0); -+ do { // convert the 'OverallDepth' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcIShapeProfileDef,5>::aux_is_derived[1]=true; break; } -+ try { GenericConvert( in->OverallDepth, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 4 to IfcIShapeProfileDef to be a `IfcPositiveLengthMeasure`")); } -+ } while(0); -+ do { // convert the 'WebThickness' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcIShapeProfileDef,5>::aux_is_derived[2]=true; break; } -+ try { GenericConvert( in->WebThickness, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 5 to IfcIShapeProfileDef to be a `IfcPositiveLengthMeasure`")); } -+ } while(0); -+ do { // convert the 'FlangeThickness' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcIShapeProfileDef,5>::aux_is_derived[3]=true; break; } -+ try { GenericConvert( in->FlangeThickness, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 6 to IfcIShapeProfileDef to be a `IfcPositiveLengthMeasure`")); } -+ } while(0); -+ do { // convert the 'FilletRadius' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcIShapeProfileDef,5>::aux_is_derived[4]=true; break; } -+ if (dynamic_cast<const UNSET*>(&*arg)) break; -+ try { GenericConvert( in->FilletRadius, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 7 to IfcIShapeProfileDef to be a `IfcPositiveLengthMeasure`")); } -+ } while(0); -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcAsymmetricIShapeProfileDef>(const DB& db, const LIST& params, IfcAsymmetricIShapeProfileDef* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcIShapeProfileDef*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcControllerType>(const DB& db, const LIST& params, IfcControllerType* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcDistributionControlElementType*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcRailing>(const DB& db, const LIST& params, IfcRailing* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcBuildingElement*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcGroup>(const DB& db, const LIST& params, IfcGroup* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcObject*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcAsset>(const DB& db, const LIST& params, IfcAsset* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcGroup*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcMaterialDefinitionRepresentation>(const DB& db, const LIST& params, IfcMaterialDefinitionRepresentation* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcProductRepresentation*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcRailingType>(const DB& db, const LIST& params, IfcRailingType* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcBuildingElementType*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcWall>(const DB& db, const LIST& params, IfcWall* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcBuildingElement*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcStructuralPointConnection>(const DB& db, const LIST& params, IfcStructuralPointConnection* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcStructuralConnection*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcPropertyListValue>(const DB& db, const LIST& params, IfcPropertyListValue* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcSimpleProperty*>(in)); -+ if (params.GetSize() < 4) { throw STEP::TypeError("expected 4 arguments to IfcPropertyListValue"); } do { // convert the 'ListValues' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ try { GenericConvert( in->ListValues, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 2 to IfcPropertyListValue to be a `LIST [1:?] OF IfcValue`")); } -+ } while(0); -+ do { // convert the 'Unit' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ if (dynamic_cast<const UNSET*>(&*arg)) break; -+ try { GenericConvert( in->Unit, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 3 to IfcPropertyListValue to be a `IfcUnit`")); } -+ } while(0); -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcFurnitureStandard>(const DB& db, const LIST& params, IfcFurnitureStandard* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcControl*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcElectricGeneratorType>(const DB& db, const LIST& params, IfcElectricGeneratorType* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcEnergyConversionDeviceType*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcDoor>(const DB& db, const LIST& params, IfcDoor* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcBuildingElement*>(in)); -+ if (params.GetSize() < 10) { throw STEP::TypeError("expected 10 arguments to IfcDoor"); } do { // convert the 'OverallHeight' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ if (dynamic_cast<const UNSET*>(&*arg)) break; -+ try { GenericConvert( in->OverallHeight, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 8 to IfcDoor to be a `IfcPositiveLengthMeasure`")); } -+ } while(0); -+ do { // convert the 'OverallWidth' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ if (dynamic_cast<const UNSET*>(&*arg)) break; -+ try { GenericConvert( in->OverallWidth, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 9 to IfcDoor to be a `IfcPositiveLengthMeasure`")); } -+ } while(0); -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcStyledItem>(const DB& db, const LIST& params, IfcStyledItem* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcRepresentationItem*>(in)); -+ if (params.GetSize() < 3) { throw STEP::TypeError("expected 3 arguments to IfcStyledItem"); } do { // convert the 'Item' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcStyledItem,3>::aux_is_derived[0]=true; break; } -+ if (dynamic_cast<const UNSET*>(&*arg)) break; -+ try { GenericConvert( in->Item, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcStyledItem to be a `IfcRepresentationItem`")); } -+ } while(0); -+ do { // convert the 'Styles' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcStyledItem,3>::aux_is_derived[1]=true; break; } -+ try { GenericConvert( in->Styles, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 1 to IfcStyledItem to be a `SET [1:?] OF IfcPresentationStyleAssignment`")); } -+ } while(0); -+ do { // convert the 'Name' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcStyledItem,3>::aux_is_derived[2]=true; break; } -+ if (dynamic_cast<const UNSET*>(&*arg)) break; -+ try { GenericConvert( in->Name, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 2 to IfcStyledItem to be a `IfcLabel`")); } -+ } while(0); -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcAnnotationOccurrence>(const DB& db, const LIST& params, IfcAnnotationOccurrence* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcStyledItem*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcAnnotationSymbolOccurrence>(const DB& db, const LIST& params, IfcAnnotationSymbolOccurrence* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcAnnotationOccurrence*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcArbitraryClosedProfileDef>(const DB& db, const LIST& params, IfcArbitraryClosedProfileDef* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcProfileDef*>(in)); -+ if (params.GetSize() < 3) { throw STEP::TypeError("expected 3 arguments to IfcArbitraryClosedProfileDef"); } do { // convert the 'OuterCurve' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcArbitraryClosedProfileDef,1>::aux_is_derived[0]=true; break; } -+ try { GenericConvert( in->OuterCurve, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 2 to IfcArbitraryClosedProfileDef to be a `IfcCurve`")); } -+ } while(0); -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcArbitraryProfileDefWithVoids>(const DB& db, const LIST& params, IfcArbitraryProfileDefWithVoids* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcArbitraryClosedProfileDef*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcLine>(const DB& db, const LIST& params, IfcLine* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcCurve*>(in)); -+ if (params.GetSize() < 2) { throw STEP::TypeError("expected 2 arguments to IfcLine"); } do { // convert the 'Pnt' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ try { GenericConvert( in->Pnt, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcLine to be a `IfcCartesianPoint`")); } -+ } while(0); -+ do { // convert the 'Dir' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ try { GenericConvert( in->Dir, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 1 to IfcLine to be a `IfcVector`")); } -+ } while(0); -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcFlowSegmentType>(const DB& db, const LIST& params, IfcFlowSegmentType* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcDistributionFlowElementType*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcAirTerminalBoxType>(const DB& db, const LIST& params, IfcAirTerminalBoxType* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcFlowControllerType*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcPropertySingleValue>(const DB& db, const LIST& params, IfcPropertySingleValue* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcSimpleProperty*>(in)); -+ if (params.GetSize() < 4) { throw STEP::TypeError("expected 4 arguments to IfcPropertySingleValue"); } do { // convert the 'NominalValue' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ if (dynamic_cast<const UNSET*>(&*arg)) break; -+ try { GenericConvert( in->NominalValue, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 2 to IfcPropertySingleValue to be a `IfcValue`")); } -+ } while(0); -+ do { // convert the 'Unit' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ if (dynamic_cast<const UNSET*>(&*arg)) break; -+ try { GenericConvert( in->Unit, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 3 to IfcPropertySingleValue to be a `IfcUnit`")); } -+ } while(0); -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcAlarmType>(const DB& db, const LIST& params, IfcAlarmType* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcDistributionControlElementType*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcEllipseProfileDef>(const DB& db, const LIST& params, IfcEllipseProfileDef* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcParameterizedProfileDef*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcStair>(const DB& db, const LIST& params, IfcStair* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcBuildingElement*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcSurfaceStyleShading>(const DB& db, const LIST& params, IfcSurfaceStyleShading* in) -+{ -+ size_t base = 0; -+ if (params.GetSize() < 1) { throw STEP::TypeError("expected 1 arguments to IfcSurfaceStyleShading"); } do { // convert the 'SurfaceColour' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcSurfaceStyleShading,1>::aux_is_derived[0]=true; break; } -+ try { GenericConvert( in->SurfaceColour, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcSurfaceStyleShading to be a `IfcColourRgb`")); } -+ } while(0); -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcPumpType>(const DB& db, const LIST& params, IfcPumpType* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcFlowMovingDeviceType*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcDefinedSymbol>(const DB& db, const LIST& params, IfcDefinedSymbol* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcGeometricRepresentationItem*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcElementComponentType>(const DB& db, const LIST& params, IfcElementComponentType* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcElementType*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcFastenerType>(const DB& db, const LIST& params, IfcFastenerType* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcElementComponentType*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcMechanicalFastenerType>(const DB& db, const LIST& params, IfcMechanicalFastenerType* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcFastenerType*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcFlowFitting>(const DB& db, const LIST& params, IfcFlowFitting* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcDistributionFlowElement*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcLightSourceDirectional>(const DB& db, const LIST& params, IfcLightSourceDirectional* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcLightSource*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+ -+} // ! STEP -+} // ! Assimp -+ -+#endif -diff --git a/src/3rdparty/assimp/code/IFCReaderGen2.cpp b/src/3rdparty/assimp/code/IFCReaderGen2.cpp -new file mode 100644 -index 0000000..c8d0800 ---- /dev/null -+++ b/src/3rdparty/assimp/code/IFCReaderGen2.cpp -@@ -0,0 +1,1917 @@ -+/* -+Open Asset Import Library (ASSIMP) -+---------------------------------------------------------------------- -+ -+Copyright (c) 2006-2010, ASSIMP Development Team -+All rights reserved. -+ -+Redistribution and use of this software in source and binary forms, -+with or without modification, are permitted provided that the -+following conditions are met: -+ -+* Redistributions of source code must retain the above -+ copyright notice, this list of conditions and the -+ following disclaimer. -+ -+* Redistributions in binary form must reproduce the above -+ copyright notice, this list of conditions and the -+ following disclaimer in the documentation and/or other -+ materials provided with the distribution. -+ -+* Neither the name of the ASSIMP team, nor the names of its -+ contributors may be used to endorse or promote products -+ derived from this software without specific prior -+ written permission of the ASSIMP Development Team. -+ -+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -+"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -+LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -+A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -+OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -+SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -+LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -+DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -+THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -+(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -+OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -+ -+---------------------------------------------------------------------- -+*/ -+ -+#include "AssimpPCH.h" -+#ifndef ASSIMP_BUILD_NO_IFC_IMPORTER -+ -+#include "IFCReaderGen.h" -+ -+namespace Assimp { -+using namespace IFC; -+ -+namespace STEP { -+ -+template <> size_t GenericFill<IfcSurfaceStyle>(const DB& db, const LIST& params, IfcSurfaceStyle* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcPresentationStyle*>(in)); -+ if (params.GetSize() < 3) { throw STEP::TypeError("expected 3 arguments to IfcSurfaceStyle"); } do { // convert the 'Side' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ try { GenericConvert( in->Side, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 1 to IfcSurfaceStyle to be a `IfcSurfaceSide`")); } -+ } while(0); -+ do { // convert the 'Styles' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ try { GenericConvert( in->Styles, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 2 to IfcSurfaceStyle to be a `SET [1:5] OF IfcSurfaceStyleElementSelect`")); } -+ } while(0); -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcAnnotationSurface>(const DB& db, const LIST& params, IfcAnnotationSurface* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcGeometricRepresentationItem*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcFlowController>(const DB& db, const LIST& params, IfcFlowController* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcDistributionFlowElement*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcBuildingStorey>(const DB& db, const LIST& params, IfcBuildingStorey* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcSpatialStructureElement*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcWorkControl>(const DB& db, const LIST& params, IfcWorkControl* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcControl*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcWorkSchedule>(const DB& db, const LIST& params, IfcWorkSchedule* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcWorkControl*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcDuctSegmentType>(const DB& db, const LIST& params, IfcDuctSegmentType* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcFlowSegmentType*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcFace>(const DB& db, const LIST& params, IfcFace* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcTopologicalRepresentationItem*>(in)); -+ if (params.GetSize() < 1) { throw STEP::TypeError("expected 1 arguments to IfcFace"); } do { // convert the 'Bounds' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcFace,1>::aux_is_derived[0]=true; break; } -+ try { GenericConvert( in->Bounds, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcFace to be a `SET [1:?] OF IfcFaceBound`")); } -+ } while(0); -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcStructuralSurfaceMember>(const DB& db, const LIST& params, IfcStructuralSurfaceMember* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcStructuralMember*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcStructuralSurfaceMemberVarying>(const DB& db, const LIST& params, IfcStructuralSurfaceMemberVarying* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcStructuralSurfaceMember*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcFaceSurface>(const DB& db, const LIST& params, IfcFaceSurface* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcFace*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcCostSchedule>(const DB& db, const LIST& params, IfcCostSchedule* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcControl*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcPlanarExtent>(const DB& db, const LIST& params, IfcPlanarExtent* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcGeometricRepresentationItem*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcPlanarBox>(const DB& db, const LIST& params, IfcPlanarBox* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcPlanarExtent*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcColourSpecification>(const DB& db, const LIST& params, IfcColourSpecification* in) -+{ -+ size_t base = 0; -+ if (params.GetSize() < 1) { throw STEP::TypeError("expected 1 arguments to IfcColourSpecification"); } do { // convert the 'Name' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcColourSpecification,1>::aux_is_derived[0]=true; break; } -+ if (dynamic_cast<const UNSET*>(&*arg)) break; -+ try { GenericConvert( in->Name, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcColourSpecification to be a `IfcLabel`")); } -+ } while(0); -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcVector>(const DB& db, const LIST& params, IfcVector* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcGeometricRepresentationItem*>(in)); -+ if (params.GetSize() < 2) { throw STEP::TypeError("expected 2 arguments to IfcVector"); } do { // convert the 'Orientation' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ try { GenericConvert( in->Orientation, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcVector to be a `IfcDirection`")); } -+ } while(0); -+ do { // convert the 'Magnitude' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ try { GenericConvert( in->Magnitude, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 1 to IfcVector to be a `IfcLengthMeasure`")); } -+ } while(0); -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcBeam>(const DB& db, const LIST& params, IfcBeam* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcBuildingElement*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcColourRgb>(const DB& db, const LIST& params, IfcColourRgb* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcColourSpecification*>(in)); -+ if (params.GetSize() < 4) { throw STEP::TypeError("expected 4 arguments to IfcColourRgb"); } do { // convert the 'Red' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ try { GenericConvert( in->Red, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 1 to IfcColourRgb to be a `IfcNormalisedRatioMeasure`")); } -+ } while(0); -+ do { // convert the 'Green' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ try { GenericConvert( in->Green, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 2 to IfcColourRgb to be a `IfcNormalisedRatioMeasure`")); } -+ } while(0); -+ do { // convert the 'Blue' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ try { GenericConvert( in->Blue, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 3 to IfcColourRgb to be a `IfcNormalisedRatioMeasure`")); } -+ } while(0); -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcStructuralPlanarAction>(const DB& db, const LIST& params, IfcStructuralPlanarAction* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcStructuralAction*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcStructuralPlanarActionVarying>(const DB& db, const LIST& params, IfcStructuralPlanarActionVarying* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcStructuralPlanarAction*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcSite>(const DB& db, const LIST& params, IfcSite* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcSpatialStructureElement*>(in)); -+ if (params.GetSize() < 14) { throw STEP::TypeError("expected 14 arguments to IfcSite"); } do { // convert the 'RefLatitude' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ if (dynamic_cast<const UNSET*>(&*arg)) break; -+ try { GenericConvert( in->RefLatitude, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 9 to IfcSite to be a `IfcCompoundPlaneAngleMeasure`")); } -+ } while(0); -+ do { // convert the 'RefLongitude' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ if (dynamic_cast<const UNSET*>(&*arg)) break; -+ try { GenericConvert( in->RefLongitude, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 10 to IfcSite to be a `IfcCompoundPlaneAngleMeasure`")); } -+ } while(0); -+ do { // convert the 'RefElevation' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ if (dynamic_cast<const UNSET*>(&*arg)) break; -+ try { GenericConvert( in->RefElevation, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 11 to IfcSite to be a `IfcLengthMeasure`")); } -+ } while(0); -+ do { // convert the 'LandTitleNumber' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ if (dynamic_cast<const UNSET*>(&*arg)) break; -+ try { GenericConvert( in->LandTitleNumber, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 12 to IfcSite to be a `IfcLabel`")); } -+ } while(0); -+ do { // convert the 'SiteAddress' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ if (dynamic_cast<const UNSET*>(&*arg)) break; -+ try { GenericConvert( in->SiteAddress, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 13 to IfcSite to be a `IfcPostalAddress`")); } -+ } while(0); -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcDiscreteAccessoryType>(const DB& db, const LIST& params, IfcDiscreteAccessoryType* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcElementComponentType*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcVibrationIsolatorType>(const DB& db, const LIST& params, IfcVibrationIsolatorType* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcDiscreteAccessoryType*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcEvaporativeCoolerType>(const DB& db, const LIST& params, IfcEvaporativeCoolerType* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcEnergyConversionDeviceType*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcDistributionChamberElementType>(const DB& db, const LIST& params, IfcDistributionChamberElementType* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcDistributionFlowElementType*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcFeatureElementAddition>(const DB& db, const LIST& params, IfcFeatureElementAddition* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcFeatureElement*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcStructuredDimensionCallout>(const DB& db, const LIST& params, IfcStructuredDimensionCallout* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcDraughtingCallout*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcCoolingTowerType>(const DB& db, const LIST& params, IfcCoolingTowerType* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcEnergyConversionDeviceType*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcCenterLineProfileDef>(const DB& db, const LIST& params, IfcCenterLineProfileDef* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcArbitraryOpenProfileDef*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcWindowStyle>(const DB& db, const LIST& params, IfcWindowStyle* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcTypeProduct*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcLightSourceGoniometric>(const DB& db, const LIST& params, IfcLightSourceGoniometric* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcLightSource*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcTransformerType>(const DB& db, const LIST& params, IfcTransformerType* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcEnergyConversionDeviceType*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcMemberType>(const DB& db, const LIST& params, IfcMemberType* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcBuildingElementType*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcSurfaceOfLinearExtrusion>(const DB& db, const LIST& params, IfcSurfaceOfLinearExtrusion* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcSweptSurface*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcMotorConnectionType>(const DB& db, const LIST& params, IfcMotorConnectionType* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcEnergyConversionDeviceType*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcFlowTreatmentDeviceType>(const DB& db, const LIST& params, IfcFlowTreatmentDeviceType* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcDistributionFlowElementType*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcDuctSilencerType>(const DB& db, const LIST& params, IfcDuctSilencerType* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcFlowTreatmentDeviceType*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcFurnishingElementType>(const DB& db, const LIST& params, IfcFurnishingElementType* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcElementType*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcSystemFurnitureElementType>(const DB& db, const LIST& params, IfcSystemFurnitureElementType* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcFurnishingElementType*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcWasteTerminalType>(const DB& db, const LIST& params, IfcWasteTerminalType* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcFlowTerminalType*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcBSplineCurve>(const DB& db, const LIST& params, IfcBSplineCurve* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcBoundedCurve*>(in)); -+ if (params.GetSize() < 5) { throw STEP::TypeError("expected 5 arguments to IfcBSplineCurve"); } do { // convert the 'Degree' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcBSplineCurve,5>::aux_is_derived[0]=true; break; } -+ try { GenericConvert( in->Degree, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcBSplineCurve to be a `INTEGER`")); } -+ } while(0); -+ do { // convert the 'ControlPointsList' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcBSplineCurve,5>::aux_is_derived[1]=true; break; } -+ try { GenericConvert( in->ControlPointsList, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 1 to IfcBSplineCurve to be a `LIST [2:?] OF IfcCartesianPoint`")); } -+ } while(0); -+ do { // convert the 'CurveForm' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcBSplineCurve,5>::aux_is_derived[2]=true; break; } -+ try { GenericConvert( in->CurveForm, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 2 to IfcBSplineCurve to be a `IfcBSplineCurveForm`")); } -+ } while(0); -+ do { // convert the 'ClosedCurve' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcBSplineCurve,5>::aux_is_derived[3]=true; break; } -+ try { GenericConvert( in->ClosedCurve, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 3 to IfcBSplineCurve to be a `LOGICAL`")); } -+ } while(0); -+ do { // convert the 'SelfIntersect' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcBSplineCurve,5>::aux_is_derived[4]=true; break; } -+ try { GenericConvert( in->SelfIntersect, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 4 to IfcBSplineCurve to be a `LOGICAL`")); } -+ } while(0); -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcBezierCurve>(const DB& db, const LIST& params, IfcBezierCurve* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcBSplineCurve*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcActuatorType>(const DB& db, const LIST& params, IfcActuatorType* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcDistributionControlElementType*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcDistributionControlElement>(const DB& db, const LIST& params, IfcDistributionControlElement* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcDistributionElement*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcAnnotation>(const DB& db, const LIST& params, IfcAnnotation* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcProduct*>(in)); -+ if (params.GetSize() < 7) { throw STEP::TypeError("expected 7 arguments to IfcAnnotation"); } return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcShellBasedSurfaceModel>(const DB& db, const LIST& params, IfcShellBasedSurfaceModel* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcGeometricRepresentationItem*>(in)); -+ if (params.GetSize() < 1) { throw STEP::TypeError("expected 1 arguments to IfcShellBasedSurfaceModel"); } do { // convert the 'SbsmBoundary' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ try { GenericConvert( in->SbsmBoundary, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcShellBasedSurfaceModel to be a `SET [1:?] OF IfcShell`")); } -+ } while(0); -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcActionRequest>(const DB& db, const LIST& params, IfcActionRequest* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcControl*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcExtrudedAreaSolid>(const DB& db, const LIST& params, IfcExtrudedAreaSolid* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcSweptAreaSolid*>(in)); -+ if (params.GetSize() < 4) { throw STEP::TypeError("expected 4 arguments to IfcExtrudedAreaSolid"); } do { // convert the 'ExtrudedDirection' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ try { GenericConvert( in->ExtrudedDirection, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 2 to IfcExtrudedAreaSolid to be a `IfcDirection`")); } -+ } while(0); -+ do { // convert the 'Depth' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ try { GenericConvert( in->Depth, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 3 to IfcExtrudedAreaSolid to be a `IfcPositiveLengthMeasure`")); } -+ } while(0); -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcSystem>(const DB& db, const LIST& params, IfcSystem* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcGroup*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcFillAreaStyleHatching>(const DB& db, const LIST& params, IfcFillAreaStyleHatching* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcGeometricRepresentationItem*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcRelVoidsElement>(const DB& db, const LIST& params, IfcRelVoidsElement* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcRelConnects*>(in)); -+ if (params.GetSize() < 6) { throw STEP::TypeError("expected 6 arguments to IfcRelVoidsElement"); } do { // convert the 'RelatingBuildingElement' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ try { GenericConvert( in->RelatingBuildingElement, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 4 to IfcRelVoidsElement to be a `IfcElement`")); } -+ } while(0); -+ do { // convert the 'RelatedOpeningElement' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ try { GenericConvert( in->RelatedOpeningElement, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 5 to IfcRelVoidsElement to be a `IfcFeatureElementSubtraction`")); } -+ } while(0); -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcSurfaceCurveSweptAreaSolid>(const DB& db, const LIST& params, IfcSurfaceCurveSweptAreaSolid* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcSweptAreaSolid*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcCartesianTransformationOperator3DnonUniform>(const DB& db, const LIST& params, IfcCartesianTransformationOperator3DnonUniform* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcCartesianTransformationOperator3D*>(in)); -+ if (params.GetSize() < 7) { throw STEP::TypeError("expected 7 arguments to IfcCartesianTransformationOperator3DnonUniform"); } do { // convert the 'Scale2' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ if (dynamic_cast<const UNSET*>(&*arg)) break; -+ try { GenericConvert( in->Scale2, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 5 to IfcCartesianTransformationOperator3DnonUniform to be a `REAL`")); } -+ } while(0); -+ do { // convert the 'Scale3' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ if (dynamic_cast<const UNSET*>(&*arg)) break; -+ try { GenericConvert( in->Scale3, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 6 to IfcCartesianTransformationOperator3DnonUniform to be a `REAL`")); } -+ } while(0); -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcCurtainWallType>(const DB& db, const LIST& params, IfcCurtainWallType* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcBuildingElementType*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcEquipmentStandard>(const DB& db, const LIST& params, IfcEquipmentStandard* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcControl*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcFlowStorageDeviceType>(const DB& db, const LIST& params, IfcFlowStorageDeviceType* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcDistributionFlowElementType*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcDiameterDimension>(const DB& db, const LIST& params, IfcDiameterDimension* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcDimensionCurveDirectedCallout*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcSwitchingDeviceType>(const DB& db, const LIST& params, IfcSwitchingDeviceType* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcFlowControllerType*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcWindow>(const DB& db, const LIST& params, IfcWindow* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcBuildingElement*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcFlowTreatmentDevice>(const DB& db, const LIST& params, IfcFlowTreatmentDevice* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcDistributionFlowElement*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcChillerType>(const DB& db, const LIST& params, IfcChillerType* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcEnergyConversionDeviceType*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcRectangleHollowProfileDef>(const DB& db, const LIST& params, IfcRectangleHollowProfileDef* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcRectangleProfileDef*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcBoxedHalfSpace>(const DB& db, const LIST& params, IfcBoxedHalfSpace* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcHalfSpaceSolid*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcAxis2Placement2D>(const DB& db, const LIST& params, IfcAxis2Placement2D* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcPlacement*>(in)); -+ if (params.GetSize() < 2) { throw STEP::TypeError("expected 2 arguments to IfcAxis2Placement2D"); } do { // convert the 'RefDirection' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ if (dynamic_cast<const UNSET*>(&*arg)) break; -+ try { GenericConvert( in->RefDirection, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 1 to IfcAxis2Placement2D to be a `IfcDirection`")); } -+ } while(0); -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcSpaceProgram>(const DB& db, const LIST& params, IfcSpaceProgram* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcControl*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcPoint>(const DB& db, const LIST& params, IfcPoint* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcGeometricRepresentationItem*>(in)); -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcCartesianPoint>(const DB& db, const LIST& params, IfcCartesianPoint* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcPoint*>(in)); -+ if (params.GetSize() < 1) { throw STEP::TypeError("expected 1 arguments to IfcCartesianPoint"); } do { // convert the 'Coordinates' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ try { GenericConvert( in->Coordinates, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcCartesianPoint to be a `LIST [1:3] OF IfcLengthMeasure`")); } -+ } while(0); -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcBoundedSurface>(const DB& db, const LIST& params, IfcBoundedSurface* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcSurface*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcLoop>(const DB& db, const LIST& params, IfcLoop* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcTopologicalRepresentationItem*>(in)); -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcPolyLoop>(const DB& db, const LIST& params, IfcPolyLoop* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcLoop*>(in)); -+ if (params.GetSize() < 1) { throw STEP::TypeError("expected 1 arguments to IfcPolyLoop"); } do { // convert the 'Polygon' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ try { GenericConvert( in->Polygon, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcPolyLoop to be a `LIST [3:?] OF IfcCartesianPoint`")); } -+ } while(0); -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcTerminatorSymbol>(const DB& db, const LIST& params, IfcTerminatorSymbol* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcAnnotationSymbolOccurrence*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcDimensionCurveTerminator>(const DB& db, const LIST& params, IfcDimensionCurveTerminator* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcTerminatorSymbol*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcTrapeziumProfileDef>(const DB& db, const LIST& params, IfcTrapeziumProfileDef* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcParameterizedProfileDef*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcRepresentationContext>(const DB& db, const LIST& params, IfcRepresentationContext* in) -+{ -+ size_t base = 0; -+ if (params.GetSize() < 2) { throw STEP::TypeError("expected 2 arguments to IfcRepresentationContext"); } do { // convert the 'ContextIdentifier' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcRepresentationContext,2>::aux_is_derived[0]=true; break; } -+ if (dynamic_cast<const UNSET*>(&*arg)) break; -+ try { GenericConvert( in->ContextIdentifier, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcRepresentationContext to be a `IfcLabel`")); } -+ } while(0); -+ do { // convert the 'ContextType' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcRepresentationContext,2>::aux_is_derived[1]=true; break; } -+ if (dynamic_cast<const UNSET*>(&*arg)) break; -+ try { GenericConvert( in->ContextType, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 1 to IfcRepresentationContext to be a `IfcLabel`")); } -+ } while(0); -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcGeometricRepresentationContext>(const DB& db, const LIST& params, IfcGeometricRepresentationContext* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcRepresentationContext*>(in)); -+ if (params.GetSize() < 6) { throw STEP::TypeError("expected 6 arguments to IfcGeometricRepresentationContext"); } do { // convert the 'CoordinateSpaceDimension' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcGeometricRepresentationContext,4>::aux_is_derived[0]=true; break; } -+ try { GenericConvert( in->CoordinateSpaceDimension, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 2 to IfcGeometricRepresentationContext to be a `IfcDimensionCount`")); } -+ } while(0); -+ do { // convert the 'Precision' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcGeometricRepresentationContext,4>::aux_is_derived[1]=true; break; } -+ if (dynamic_cast<const UNSET*>(&*arg)) break; -+ try { GenericConvert( in->Precision, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 3 to IfcGeometricRepresentationContext to be a `REAL`")); } -+ } while(0); -+ do { // convert the 'WorldCoordinateSystem' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcGeometricRepresentationContext,4>::aux_is_derived[2]=true; break; } -+ try { GenericConvert( in->WorldCoordinateSystem, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 4 to IfcGeometricRepresentationContext to be a `IfcAxis2Placement`")); } -+ } while(0); -+ do { // convert the 'TrueNorth' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcGeometricRepresentationContext,4>::aux_is_derived[3]=true; break; } -+ if (dynamic_cast<const UNSET*>(&*arg)) break; -+ try { GenericConvert( in->TrueNorth, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 5 to IfcGeometricRepresentationContext to be a `IfcDirection`")); } -+ } while(0); -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcCurveBoundedPlane>(const DB& db, const LIST& params, IfcCurveBoundedPlane* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcBoundedSurface*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcSIUnit>(const DB& db, const LIST& params, IfcSIUnit* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcNamedUnit*>(in)); -+ if (params.GetSize() < 4) { throw STEP::TypeError("expected 4 arguments to IfcSIUnit"); } do { // convert the 'Prefix' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ if (dynamic_cast<const UNSET*>(&*arg)) break; -+ try { GenericConvert( in->Prefix, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 2 to IfcSIUnit to be a `IfcSIPrefix`")); } -+ } while(0); -+ do { // convert the 'Name' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ try { GenericConvert( in->Name, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 3 to IfcSIUnit to be a `IfcSIUnitName`")); } -+ } while(0); -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcStructuralReaction>(const DB& db, const LIST& params, IfcStructuralReaction* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcStructuralActivity*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcStructuralPointReaction>(const DB& db, const LIST& params, IfcStructuralPointReaction* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcStructuralReaction*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcAxis1Placement>(const DB& db, const LIST& params, IfcAxis1Placement* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcPlacement*>(in)); -+ if (params.GetSize() < 2) { throw STEP::TypeError("expected 2 arguments to IfcAxis1Placement"); } do { // convert the 'Axis' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ if (dynamic_cast<const UNSET*>(&*arg)) break; -+ try { GenericConvert( in->Axis, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 1 to IfcAxis1Placement to be a `IfcDirection`")); } -+ } while(0); -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcElectricApplianceType>(const DB& db, const LIST& params, IfcElectricApplianceType* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcFlowTerminalType*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcSensorType>(const DB& db, const LIST& params, IfcSensorType* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcDistributionControlElementType*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcFurnishingElement>(const DB& db, const LIST& params, IfcFurnishingElement* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcElement*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcProtectiveDeviceType>(const DB& db, const LIST& params, IfcProtectiveDeviceType* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcFlowControllerType*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcZShapeProfileDef>(const DB& db, const LIST& params, IfcZShapeProfileDef* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcParameterizedProfileDef*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcScheduleTimeControl>(const DB& db, const LIST& params, IfcScheduleTimeControl* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcControl*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcRepresentationMap>(const DB& db, const LIST& params, IfcRepresentationMap* in) -+{ -+ size_t base = 0; -+ if (params.GetSize() < 2) { throw STEP::TypeError("expected 2 arguments to IfcRepresentationMap"); } do { // convert the 'MappingOrigin' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ try { GenericConvert( in->MappingOrigin, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcRepresentationMap to be a `IfcAxis2Placement`")); } -+ } while(0); -+ do { // convert the 'MappedRepresentation' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ try { GenericConvert( in->MappedRepresentation, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 1 to IfcRepresentationMap to be a `IfcRepresentation`")); } -+ } while(0); -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcClosedShell>(const DB& db, const LIST& params, IfcClosedShell* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcConnectedFaceSet*>(in)); -+ if (params.GetSize() < 1) { throw STEP::TypeError("expected 1 arguments to IfcClosedShell"); } return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcBuildingElementPart>(const DB& db, const LIST& params, IfcBuildingElementPart* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcBuildingElementComponent*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcBlock>(const DB& db, const LIST& params, IfcBlock* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcCsgPrimitive3D*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcLightFixtureType>(const DB& db, const LIST& params, IfcLightFixtureType* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcFlowTerminalType*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcOpeningElement>(const DB& db, const LIST& params, IfcOpeningElement* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcFeatureElementSubtraction*>(in)); -+ if (params.GetSize() < 8) { throw STEP::TypeError("expected 8 arguments to IfcOpeningElement"); } return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcLightSourceSpot>(const DB& db, const LIST& params, IfcLightSourceSpot* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcLightSourcePositional*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcTendonAnchor>(const DB& db, const LIST& params, IfcTendonAnchor* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcReinforcingElement*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcElectricFlowStorageDeviceType>(const DB& db, const LIST& params, IfcElectricFlowStorageDeviceType* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcFlowStorageDeviceType*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcSphere>(const DB& db, const LIST& params, IfcSphere* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcCsgPrimitive3D*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcDamperType>(const DB& db, const LIST& params, IfcDamperType* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcFlowControllerType*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcProjectOrderRecord>(const DB& db, const LIST& params, IfcProjectOrderRecord* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcControl*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcDistributionChamberElement>(const DB& db, const LIST& params, IfcDistributionChamberElement* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcDistributionFlowElement*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcMechanicalFastener>(const DB& db, const LIST& params, IfcMechanicalFastener* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcFastener*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcRectangularTrimmedSurface>(const DB& db, const LIST& params, IfcRectangularTrimmedSurface* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcBoundedSurface*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcZone>(const DB& db, const LIST& params, IfcZone* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcGroup*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcFanType>(const DB& db, const LIST& params, IfcFanType* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcFlowMovingDeviceType*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcGeometricSet>(const DB& db, const LIST& params, IfcGeometricSet* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcGeometricRepresentationItem*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcFillAreaStyleTiles>(const DB& db, const LIST& params, IfcFillAreaStyleTiles* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcGeometricRepresentationItem*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcCableSegmentType>(const DB& db, const LIST& params, IfcCableSegmentType* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcFlowSegmentType*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcRelOverridesProperties>(const DB& db, const LIST& params, IfcRelOverridesProperties* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcRelDefinesByProperties*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcMeasureWithUnit>(const DB& db, const LIST& params, IfcMeasureWithUnit* in) -+{ -+ size_t base = 0; -+ if (params.GetSize() < 2) { throw STEP::TypeError("expected 2 arguments to IfcMeasureWithUnit"); } do { // convert the 'ValueComponent' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ try { GenericConvert( in->ValueComponent, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcMeasureWithUnit to be a `IfcValue`")); } -+ } while(0); -+ do { // convert the 'UnitComponent' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ try { GenericConvert( in->UnitComponent, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 1 to IfcMeasureWithUnit to be a `IfcUnit`")); } -+ } while(0); -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcSlabType>(const DB& db, const LIST& params, IfcSlabType* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcBuildingElementType*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcServiceLife>(const DB& db, const LIST& params, IfcServiceLife* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcControl*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcFurnitureType>(const DB& db, const LIST& params, IfcFurnitureType* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcFurnishingElementType*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcCostItem>(const DB& db, const LIST& params, IfcCostItem* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcControl*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcReinforcingMesh>(const DB& db, const LIST& params, IfcReinforcingMesh* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcReinforcingElement*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcFacetedBrepWithVoids>(const DB& db, const LIST& params, IfcFacetedBrepWithVoids* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcManifoldSolidBrep*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcGasTerminalType>(const DB& db, const LIST& params, IfcGasTerminalType* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcFlowTerminalType*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcPile>(const DB& db, const LIST& params, IfcPile* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcBuildingElement*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcFillAreaStyleTileSymbolWithStyle>(const DB& db, const LIST& params, IfcFillAreaStyleTileSymbolWithStyle* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcGeometricRepresentationItem*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcConstructionMaterialResource>(const DB& db, const LIST& params, IfcConstructionMaterialResource* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcConstructionResource*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcAnnotationCurveOccurrence>(const DB& db, const LIST& params, IfcAnnotationCurveOccurrence* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcAnnotationOccurrence*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcDimensionCurve>(const DB& db, const LIST& params, IfcDimensionCurve* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcAnnotationCurveOccurrence*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcGeometricCurveSet>(const DB& db, const LIST& params, IfcGeometricCurveSet* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcGeometricSet*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcRelAggregates>(const DB& db, const LIST& params, IfcRelAggregates* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcRelDecomposes*>(in)); -+ if (params.GetSize() < 6) { throw STEP::TypeError("expected 6 arguments to IfcRelAggregates"); } return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcFaceBasedSurfaceModel>(const DB& db, const LIST& params, IfcFaceBasedSurfaceModel* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcGeometricRepresentationItem*>(in)); -+ if (params.GetSize() < 1) { throw STEP::TypeError("expected 1 arguments to IfcFaceBasedSurfaceModel"); } do { // convert the 'FbsmFaces' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ try { GenericConvert( in->FbsmFaces, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcFaceBasedSurfaceModel to be a `SET [1:?] OF IfcConnectedFaceSet`")); } -+ } while(0); -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcEnergyConversionDevice>(const DB& db, const LIST& params, IfcEnergyConversionDevice* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcDistributionFlowElement*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcRampFlight>(const DB& db, const LIST& params, IfcRampFlight* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcBuildingElement*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcVertexLoop>(const DB& db, const LIST& params, IfcVertexLoop* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcLoop*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcPlate>(const DB& db, const LIST& params, IfcPlate* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcBuildingElement*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcUShapeProfileDef>(const DB& db, const LIST& params, IfcUShapeProfileDef* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcParameterizedProfileDef*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcFaceBound>(const DB& db, const LIST& params, IfcFaceBound* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcTopologicalRepresentationItem*>(in)); -+ if (params.GetSize() < 2) { throw STEP::TypeError("expected 2 arguments to IfcFaceBound"); } do { // convert the 'Bound' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcFaceBound,2>::aux_is_derived[0]=true; break; } -+ try { GenericConvert( in->Bound, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcFaceBound to be a `IfcLoop`")); } -+ } while(0); -+ do { // convert the 'Orientation' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcFaceBound,2>::aux_is_derived[1]=true; break; } -+ try { GenericConvert( in->Orientation, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 1 to IfcFaceBound to be a `BOOLEAN`")); } -+ } while(0); -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcFaceOuterBound>(const DB& db, const LIST& params, IfcFaceOuterBound* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcFaceBound*>(in)); -+ if (params.GetSize() < 2) { throw STEP::TypeError("expected 2 arguments to IfcFaceOuterBound"); } return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcOneDirectionRepeatFactor>(const DB& db, const LIST& params, IfcOneDirectionRepeatFactor* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcGeometricRepresentationItem*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcBoilerType>(const DB& db, const LIST& params, IfcBoilerType* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcEnergyConversionDeviceType*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcConstructionEquipmentResource>(const DB& db, const LIST& params, IfcConstructionEquipmentResource* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcConstructionResource*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcComplexProperty>(const DB& db, const LIST& params, IfcComplexProperty* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcProperty*>(in)); -+ if (params.GetSize() < 4) { throw STEP::TypeError("expected 4 arguments to IfcComplexProperty"); } do { // convert the 'UsageName' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ try { GenericConvert( in->UsageName, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 2 to IfcComplexProperty to be a `IfcIdentifier`")); } -+ } while(0); -+ do { // convert the 'HasProperties' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ try { GenericConvert( in->HasProperties, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 3 to IfcComplexProperty to be a `SET [1:?] OF IfcProperty`")); } -+ } while(0); -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcFooting>(const DB& db, const LIST& params, IfcFooting* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcBuildingElement*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcConstructionProductResource>(const DB& db, const LIST& params, IfcConstructionProductResource* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcConstructionResource*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcDerivedProfileDef>(const DB& db, const LIST& params, IfcDerivedProfileDef* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcProfileDef*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcPropertyTableValue>(const DB& db, const LIST& params, IfcPropertyTableValue* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcSimpleProperty*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcFlowMeterType>(const DB& db, const LIST& params, IfcFlowMeterType* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcFlowControllerType*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcDoorStyle>(const DB& db, const LIST& params, IfcDoorStyle* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcTypeProduct*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcUnitAssignment>(const DB& db, const LIST& params, IfcUnitAssignment* in) -+{ -+ size_t base = 0; -+ if (params.GetSize() < 1) { throw STEP::TypeError("expected 1 arguments to IfcUnitAssignment"); } do { // convert the 'Units' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ try { GenericConvert( in->Units, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcUnitAssignment to be a `SET [1:?] OF IfcUnit`")); } -+ } while(0); -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcFlowTerminal>(const DB& db, const LIST& params, IfcFlowTerminal* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcDistributionFlowElement*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcCraneRailFShapeProfileDef>(const DB& db, const LIST& params, IfcCraneRailFShapeProfileDef* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcParameterizedProfileDef*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcFlowSegment>(const DB& db, const LIST& params, IfcFlowSegment* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcDistributionFlowElement*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcElementQuantity>(const DB& db, const LIST& params, IfcElementQuantity* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcPropertySetDefinition*>(in)); -+ if (params.GetSize() < 6) { throw STEP::TypeError("expected 6 arguments to IfcElementQuantity"); } do { // convert the 'MethodOfMeasurement' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ if (dynamic_cast<const UNSET*>(&*arg)) break; -+ try { GenericConvert( in->MethodOfMeasurement, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 4 to IfcElementQuantity to be a `IfcLabel`")); } -+ } while(0); -+ do { // convert the 'Quantities' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ try { GenericConvert( in->Quantities, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 5 to IfcElementQuantity to be a `SET [1:?] OF IfcPhysicalQuantity`")); } -+ } while(0); -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcCurtainWall>(const DB& db, const LIST& params, IfcCurtainWall* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcBuildingElement*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcDiscreteAccessory>(const DB& db, const LIST& params, IfcDiscreteAccessory* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcElementComponent*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcGrid>(const DB& db, const LIST& params, IfcGrid* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcProduct*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcSanitaryTerminalType>(const DB& db, const LIST& params, IfcSanitaryTerminalType* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcFlowTerminalType*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcSubedge>(const DB& db, const LIST& params, IfcSubedge* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcEdge*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcFilterType>(const DB& db, const LIST& params, IfcFilterType* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcFlowTreatmentDeviceType*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcTendon>(const DB& db, const LIST& params, IfcTendon* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcReinforcingElement*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcStructuralLoadGroup>(const DB& db, const LIST& params, IfcStructuralLoadGroup* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcGroup*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcPresentationStyleAssignment>(const DB& db, const LIST& params, IfcPresentationStyleAssignment* in) -+{ -+ size_t base = 0; -+ if (params.GetSize() < 1) { throw STEP::TypeError("expected 1 arguments to IfcPresentationStyleAssignment"); } do { // convert the 'Styles' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ try { GenericConvert( in->Styles, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcPresentationStyleAssignment to be a `SET [1:?] OF IfcPresentationStyleSelect`")); } -+ } while(0); -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcStructuralCurveMember>(const DB& db, const LIST& params, IfcStructuralCurveMember* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcStructuralMember*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcLightSourceAmbient>(const DB& db, const LIST& params, IfcLightSourceAmbient* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcLightSource*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcCondition>(const DB& db, const LIST& params, IfcCondition* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcGroup*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcPort>(const DB& db, const LIST& params, IfcPort* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcProduct*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcSpace>(const DB& db, const LIST& params, IfcSpace* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcSpatialStructureElement*>(in)); -+ if (params.GetSize() < 11) { throw STEP::TypeError("expected 11 arguments to IfcSpace"); } do { // convert the 'InteriorOrExteriorSpace' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ try { GenericConvert( in->InteriorOrExteriorSpace, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 9 to IfcSpace to be a `IfcInternalOrExternalEnum`")); } -+ } while(0); -+ do { // convert the 'ElevationWithFlooring' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ if (dynamic_cast<const UNSET*>(&*arg)) break; -+ try { GenericConvert( in->ElevationWithFlooring, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 10 to IfcSpace to be a `IfcLengthMeasure`")); } -+ } while(0); -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcHeatExchangerType>(const DB& db, const LIST& params, IfcHeatExchangerType* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcEnergyConversionDeviceType*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcTankType>(const DB& db, const LIST& params, IfcTankType* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcFlowStorageDeviceType*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcInventory>(const DB& db, const LIST& params, IfcInventory* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcGroup*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcTransportElementType>(const DB& db, const LIST& params, IfcTransportElementType* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcElementType*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcAirToAirHeatRecoveryType>(const DB& db, const LIST& params, IfcAirToAirHeatRecoveryType* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcEnergyConversionDeviceType*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcStairFlight>(const DB& db, const LIST& params, IfcStairFlight* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcBuildingElement*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcElectricalElement>(const DB& db, const LIST& params, IfcElectricalElement* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcElement*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcSurfaceStyleWithTextures>(const DB& db, const LIST& params, IfcSurfaceStyleWithTextures* in) -+{ -+ size_t base = 0; -+ if (params.GetSize() < 1) { throw STEP::TypeError("expected 1 arguments to IfcSurfaceStyleWithTextures"); } do { // convert the 'Textures' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ try { GenericConvert( in->Textures, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcSurfaceStyleWithTextures to be a `LIST [1:?] OF IfcSurfaceTexture`")); } -+ } while(0); -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcBoundingBox>(const DB& db, const LIST& params, IfcBoundingBox* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcGeometricRepresentationItem*>(in)); -+ if (params.GetSize() < 4) { throw STEP::TypeError("expected 4 arguments to IfcBoundingBox"); } do { // convert the 'Corner' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ try { GenericConvert( in->Corner, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcBoundingBox to be a `IfcCartesianPoint`")); } -+ } while(0); -+ do { // convert the 'XDim' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ try { GenericConvert( in->XDim, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 1 to IfcBoundingBox to be a `IfcPositiveLengthMeasure`")); } -+ } while(0); -+ do { // convert the 'YDim' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ try { GenericConvert( in->YDim, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 2 to IfcBoundingBox to be a `IfcPositiveLengthMeasure`")); } -+ } while(0); -+ do { // convert the 'ZDim' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ try { GenericConvert( in->ZDim, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 3 to IfcBoundingBox to be a `IfcPositiveLengthMeasure`")); } -+ } while(0); -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcWallType>(const DB& db, const LIST& params, IfcWallType* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcBuildingElementType*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcMove>(const DB& db, const LIST& params, IfcMove* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcTask*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcCircle>(const DB& db, const LIST& params, IfcCircle* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcConic*>(in)); -+ if (params.GetSize() < 2) { throw STEP::TypeError("expected 2 arguments to IfcCircle"); } do { // convert the 'Radius' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ try { GenericConvert( in->Radius, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 1 to IfcCircle to be a `IfcPositiveLengthMeasure`")); } -+ } while(0); -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcOffsetCurve2D>(const DB& db, const LIST& params, IfcOffsetCurve2D* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcCurve*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcPointOnCurve>(const DB& db, const LIST& params, IfcPointOnCurve* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcPoint*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcStructuralResultGroup>(const DB& db, const LIST& params, IfcStructuralResultGroup* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcGroup*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcSectionedSpine>(const DB& db, const LIST& params, IfcSectionedSpine* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcGeometricRepresentationItem*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcSlab>(const DB& db, const LIST& params, IfcSlab* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcBuildingElement*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcVertex>(const DB& db, const LIST& params, IfcVertex* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcTopologicalRepresentationItem*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcVertexPoint>(const DB& db, const LIST& params, IfcVertexPoint* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcVertex*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcStructuralLinearAction>(const DB& db, const LIST& params, IfcStructuralLinearAction* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcStructuralAction*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcStructuralLinearActionVarying>(const DB& db, const LIST& params, IfcStructuralLinearActionVarying* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcStructuralLinearAction*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcBuildingElementProxyType>(const DB& db, const LIST& params, IfcBuildingElementProxyType* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcBuildingElementType*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcProjectionElement>(const DB& db, const LIST& params, IfcProjectionElement* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcFeatureElementAddition*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcConversionBasedUnit>(const DB& db, const LIST& params, IfcConversionBasedUnit* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcNamedUnit*>(in)); -+ if (params.GetSize() < 4) { throw STEP::TypeError("expected 4 arguments to IfcConversionBasedUnit"); } do { // convert the 'Name' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ try { GenericConvert( in->Name, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 2 to IfcConversionBasedUnit to be a `IfcLabel`")); } -+ } while(0); -+ do { // convert the 'ConversionFactor' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ try { GenericConvert( in->ConversionFactor, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 3 to IfcConversionBasedUnit to be a `IfcMeasureWithUnit`")); } -+ } while(0); -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcGeometricRepresentationSubContext>(const DB& db, const LIST& params, IfcGeometricRepresentationSubContext* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcGeometricRepresentationContext*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcAnnotationSurfaceOccurrence>(const DB& db, const LIST& params, IfcAnnotationSurfaceOccurrence* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcAnnotationOccurrence*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcRoundedEdgeFeature>(const DB& db, const LIST& params, IfcRoundedEdgeFeature* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcEdgeFeature*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcElectricDistributionPoint>(const DB& db, const LIST& params, IfcElectricDistributionPoint* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcFlowController*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcCableCarrierSegmentType>(const DB& db, const LIST& params, IfcCableCarrierSegmentType* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcFlowSegmentType*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcWallStandardCase>(const DB& db, const LIST& params, IfcWallStandardCase* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcWall*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcCsgSolid>(const DB& db, const LIST& params, IfcCsgSolid* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcSolidModel*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcBeamType>(const DB& db, const LIST& params, IfcBeamType* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcBuildingElementType*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcAnnotationFillArea>(const DB& db, const LIST& params, IfcAnnotationFillArea* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcGeometricRepresentationItem*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcStructuralCurveMemberVarying>(const DB& db, const LIST& params, IfcStructuralCurveMemberVarying* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcStructuralCurveMember*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcPointOnSurface>(const DB& db, const LIST& params, IfcPointOnSurface* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcPoint*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcOrderAction>(const DB& db, const LIST& params, IfcOrderAction* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcTask*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcEdgeLoop>(const DB& db, const LIST& params, IfcEdgeLoop* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcLoop*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcAnnotationFillAreaOccurrence>(const DB& db, const LIST& params, IfcAnnotationFillAreaOccurrence* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcAnnotationOccurrence*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcWorkPlan>(const DB& db, const LIST& params, IfcWorkPlan* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcWorkControl*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcEllipse>(const DB& db, const LIST& params, IfcEllipse* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcConic*>(in)); -+ if (params.GetSize() < 3) { throw STEP::TypeError("expected 3 arguments to IfcEllipse"); } do { // convert the 'SemiAxis1' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ try { GenericConvert( in->SemiAxis1, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 1 to IfcEllipse to be a `IfcPositiveLengthMeasure`")); } -+ } while(0); -+ do { // convert the 'SemiAxis2' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ try { GenericConvert( in->SemiAxis2, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 2 to IfcEllipse to be a `IfcPositiveLengthMeasure`")); } -+ } while(0); -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcProductDefinitionShape>(const DB& db, const LIST& params, IfcProductDefinitionShape* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcProductRepresentation*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcProjectionCurve>(const DB& db, const LIST& params, IfcProjectionCurve* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcAnnotationCurveOccurrence*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcElectricalCircuit>(const DB& db, const LIST& params, IfcElectricalCircuit* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcSystem*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcRationalBezierCurve>(const DB& db, const LIST& params, IfcRationalBezierCurve* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcBezierCurve*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcStructuralPointAction>(const DB& db, const LIST& params, IfcStructuralPointAction* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcStructuralAction*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcPipeSegmentType>(const DB& db, const LIST& params, IfcPipeSegmentType* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcFlowSegmentType*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcTwoDirectionRepeatFactor>(const DB& db, const LIST& params, IfcTwoDirectionRepeatFactor* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcOneDirectionRepeatFactor*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcShapeRepresentation>(const DB& db, const LIST& params, IfcShapeRepresentation* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcShapeModel*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcPropertySet>(const DB& db, const LIST& params, IfcPropertySet* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcPropertySetDefinition*>(in)); -+ if (params.GetSize() < 5) { throw STEP::TypeError("expected 5 arguments to IfcPropertySet"); } do { // convert the 'HasProperties' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ try { GenericConvert( in->HasProperties, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 4 to IfcPropertySet to be a `SET [1:?] OF IfcProperty`")); } -+ } while(0); -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcSurfaceStyleRendering>(const DB& db, const LIST& params, IfcSurfaceStyleRendering* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcSurfaceStyleShading*>(in)); -+ if (params.GetSize() < 9) { throw STEP::TypeError("expected 9 arguments to IfcSurfaceStyleRendering"); } do { // convert the 'Transparency' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ if (dynamic_cast<const UNSET*>(&*arg)) break; -+ try { GenericConvert( in->Transparency, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 1 to IfcSurfaceStyleRendering to be a `IfcNormalisedRatioMeasure`")); } -+ } while(0); -+ do { // convert the 'DiffuseColour' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ if (dynamic_cast<const UNSET*>(&*arg)) break; -+ try { GenericConvert( in->DiffuseColour, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 2 to IfcSurfaceStyleRendering to be a `IfcColourOrFactor`")); } -+ } while(0); -+ do { // convert the 'TransmissionColour' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ if (dynamic_cast<const UNSET*>(&*arg)) break; -+ try { GenericConvert( in->TransmissionColour, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 3 to IfcSurfaceStyleRendering to be a `IfcColourOrFactor`")); } -+ } while(0); -+ do { // convert the 'DiffuseTransmissionColour' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ if (dynamic_cast<const UNSET*>(&*arg)) break; -+ try { GenericConvert( in->DiffuseTransmissionColour, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 4 to IfcSurfaceStyleRendering to be a `IfcColourOrFactor`")); } -+ } while(0); -+ do { // convert the 'ReflectionColour' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ if (dynamic_cast<const UNSET*>(&*arg)) break; -+ try { GenericConvert( in->ReflectionColour, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 5 to IfcSurfaceStyleRendering to be a `IfcColourOrFactor`")); } -+ } while(0); -+ do { // convert the 'SpecularColour' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ if (dynamic_cast<const UNSET*>(&*arg)) break; -+ try { GenericConvert( in->SpecularColour, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 6 to IfcSurfaceStyleRendering to be a `IfcColourOrFactor`")); } -+ } while(0); -+ do { // convert the 'SpecularHighlight' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ if (dynamic_cast<const UNSET*>(&*arg)) break; -+ try { GenericConvert( in->SpecularHighlight, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 7 to IfcSurfaceStyleRendering to be a `IfcSpecularHighlightSelect`")); } -+ } while(0); -+ do { // convert the 'ReflectanceMethod' argument -+ boost::shared_ptr<const DataType> arg = params[base++]; -+ try { GenericConvert( in->ReflectanceMethod, arg, db ); break; } -+ catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 8 to IfcSurfaceStyleRendering to be a `IfcReflectanceMethodEnum`")); } -+ } while(0); -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcDistributionPort>(const DB& db, const LIST& params, IfcDistributionPort* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcPort*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcPipeFittingType>(const DB& db, const LIST& params, IfcPipeFittingType* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcFlowFittingType*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcTransportElement>(const DB& db, const LIST& params, IfcTransportElement* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcElement*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcAnnotationTextOccurrence>(const DB& db, const LIST& params, IfcAnnotationTextOccurrence* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcAnnotationOccurrence*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcStructuralAnalysisModel>(const DB& db, const LIST& params, IfcStructuralAnalysisModel* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcSystem*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+// ----------------------------------------------------------------------------------------------------------- -+template <> size_t GenericFill<IfcConditionCriterion>(const DB& db, const LIST& params, IfcConditionCriterion* in) -+{ -+ size_t base = GenericFill(db,params,static_cast<IfcControl*>(in)); -+// this data structure is not used yet, so there is no code generated to fill its members -+ return base; -+} -+ -+} // ! STEP -+} // ! Assimp -+ -+#endif -\ No newline at end of file --- -1.8.1.msysgit.1 - diff --git a/src/3rdparty/patches/0003-assimp-Add-missing-case-option.patch b/src/3rdparty/patches/0003-assimp-Add-missing-case-option.patch new file mode 100644 index 000000000..1b62209ad --- /dev/null +++ b/src/3rdparty/patches/0003-assimp-Add-missing-case-option.patch @@ -0,0 +1,11 @@ +diff -ur assimpGIT/code/ColladaExporter.cpp assimp/code/ColladaExporter.cpp +--- assimpGIT/code/ColladaExporter.cpp 2016-12-08 14:13:07.000000000 -0500 ++++ assimp/code/ColladaExporter.cpp 2016-12-08 09:23:22.000000000 -0500 +@@ -383,6 +383,7 @@ + case aiLightSource_SPOT: + WriteSpotLight(light); + break; ++ case aiLightSource_AREA: + case aiLightSource_UNDEFINED: + case _aiLightSource_Force32Bit: + break; diff --git a/src/3rdparty/patches/0003-assimp-Remove-usage-of-deprecated-keyword-register.patch b/src/3rdparty/patches/0003-assimp-Remove-usage-of-deprecated-keyword-register.patch deleted file mode 100644 index f469831c8..000000000 --- a/src/3rdparty/patches/0003-assimp-Remove-usage-of-deprecated-keyword-register.patch +++ /dev/null @@ -1,382 +0,0 @@ -From 662d2cabc5b5546c61f8596887c3a9a5cfc0f87b Mon Sep 17 00:00:00 2001 -From: Andy Nichols <andy.nichols@theqtcompany.com> -Date: Tue, 3 Nov 2015 12:32:50 +0100 -Subject: [PATCH] assimp: Remove usage of deprecated keyword register - -Change-Id: I1a85b0602c9e2729bab9582dc5325213f3598988 ---- - src/3rdparty/assimp/code/3DSConverter.cpp | 2 +- - src/3rdparty/assimp/code/ACLoader.cpp | 4 ++-- - src/3rdparty/assimp/code/CalcTangentsProcess.cpp | 2 +- - src/3rdparty/assimp/code/FindDegenerates.cpp | 4 ++-- - src/3rdparty/assimp/code/FindInvalidDataProcess.cpp | 2 +- - src/3rdparty/assimp/code/GenVertexNormalsProcess.cpp | 2 +- - src/3rdparty/assimp/code/ImproveCacheLocality.cpp | 2 +- - src/3rdparty/assimp/code/LWOFileData.h | 2 +- - src/3rdparty/assimp/code/LWOLoader.cpp | 10 +++++----- - src/3rdparty/assimp/code/MD2Loader.cpp | 2 +- - src/3rdparty/assimp/code/NFFLoader.cpp | 2 +- - src/3rdparty/assimp/code/OptimizeMeshes.cpp | 2 +- - src/3rdparty/assimp/code/PlyParser.cpp | 4 ++-- - src/3rdparty/assimp/code/Q3DLoader.cpp | 2 +- - src/3rdparty/assimp/code/RemoveVCProcess.cpp | 4 ++-- - src/3rdparty/assimp/code/SmoothingGroups.inl | 2 +- - src/3rdparty/assimp/code/SortByPTypeProcess.cpp | 2 +- - src/3rdparty/assimp/code/StringComparison.h | 6 +++--- - src/3rdparty/assimp/code/TerragenLoader.cpp | 2 +- - src/3rdparty/assimp/contrib/unzip/crypt.h | 2 +- - 20 files changed, 30 insertions(+), 30 deletions(-) - -diff --git a/src/3rdparty/assimp/code/3DSConverter.cpp b/src/3rdparty/assimp/code/3DSConverter.cpp -index 7bff38f..3498a4b 100644 ---- a/src/3rdparty/assimp/code/3DSConverter.cpp -+++ b/src/3rdparty/assimp/code/3DSConverter.cpp -@@ -396,7 +396,7 @@ void Discreet3DSImporter::ConvertMeshes(aiScene* pcOut) - } - for (unsigned int q = 0, base = 0; q < aiSplit[p].size();++q) - { -- register unsigned int index = aiSplit[p][q]; -+ unsigned int index = aiSplit[p][q]; - aiFace& face = meshOut->mFaces[q]; - - face.mIndices = new unsigned int[3]; -diff --git a/src/3rdparty/assimp/code/ACLoader.cpp b/src/3rdparty/assimp/code/ACLoader.cpp -index 93e739b..687e9ac 100644 ---- a/src/3rdparty/assimp/code/ACLoader.cpp -+++ b/src/3rdparty/assimp/code/ACLoader.cpp -@@ -489,7 +489,7 @@ aiNode* AC3DImporter::ConvertObjectSection(Object& object, - - for (it = object.surfaces.begin(); it != end; ++it) - { -- register unsigned int idx = (*it).mat; -+ unsigned int idx = (*it).mat; - if (idx >= needMat.size()) - { - DefaultLogger::get()->error("AC3D: material index is out of range"); -@@ -617,7 +617,7 @@ aiNode* AC3DImporter::ConvertObjectSection(Object& object, - it2 = (*it).entries.begin(); - - // either a closed or an unclosed line -- register unsigned int tmp = (unsigned int)(*it).entries.size(); -+ unsigned int tmp = (unsigned int)(*it).entries.size(); - if (0x2 == type)--tmp; - for (unsigned int m = 0; m < tmp;++m) - { -diff --git a/src/3rdparty/assimp/code/CalcTangentsProcess.cpp b/src/3rdparty/assimp/code/CalcTangentsProcess.cpp -index 20ed3ea..1d5e1bd 100644 ---- a/src/3rdparty/assimp/code/CalcTangentsProcess.cpp -+++ b/src/3rdparty/assimp/code/CalcTangentsProcess.cpp -@@ -167,7 +167,7 @@ bool CalcTangentsProcess::ProcessMesh( aiMesh* pMesh, unsigned int meshIndex) - // their tangent vectors are set to qnan. - for (unsigned int i = 0; i < face.mNumIndices;++i) - { -- register unsigned int idx = face.mIndices[i]; -+ unsigned int idx = face.mIndices[i]; - vertexDone [idx] = true; - meshTang [idx] = aiVector3D(qnan); - meshBitang [idx] = aiVector3D(qnan); -diff --git a/src/3rdparty/assimp/code/FindDegenerates.cpp b/src/3rdparty/assimp/code/FindDegenerates.cpp -index 3870e04..04ca925 100644 ---- a/src/3rdparty/assimp/code/FindDegenerates.cpp -+++ b/src/3rdparty/assimp/code/FindDegenerates.cpp -@@ -107,7 +107,7 @@ void FindDegeneratesProcess::ExecuteOnMesh( aiMesh* mesh) - bool first = true; - - // check whether the face contains degenerated entries -- for (register unsigned int i = 0; i < face.mNumIndices; ++i) -+ for (unsigned int i = 0; i < face.mNumIndices; ++i) - { - // Polygons with more than 4 points are allowed to have double points, that is - // simulating polygons with holes just with concave polygons. However, -@@ -116,7 +116,7 @@ void FindDegeneratesProcess::ExecuteOnMesh( aiMesh* mesh) - if (face.mNumIndices > 4) - limit = std::min(limit,i+2); - -- for (register unsigned int t = i+1; t < limit; ++t) -+ for (unsigned int t = i+1; t < limit; ++t) - { - if (mesh->mVertices[face.mIndices[i]] == mesh->mVertices[face.mIndices[t]]) - { -diff --git a/src/3rdparty/assimp/code/FindInvalidDataProcess.cpp b/src/3rdparty/assimp/code/FindInvalidDataProcess.cpp -index 6b7659a..618e7d3 100644 ---- a/src/3rdparty/assimp/code/FindInvalidDataProcess.cpp -+++ b/src/3rdparty/assimp/code/FindInvalidDataProcess.cpp -@@ -89,7 +89,7 @@ void UpdateMeshReferences(aiNode* node, const std::vector<unsigned int>& meshMap - unsigned int out = 0; - for (unsigned int a = 0; a < node->mNumMeshes;++a) { - -- register unsigned int ref = node->mMeshes[a]; -+ unsigned int ref = node->mMeshes[a]; - if (UINT_MAX != (ref = meshMapping[ref])) { - node->mMeshes[out++] = ref; - } -diff --git a/src/3rdparty/assimp/code/GenVertexNormalsProcess.cpp b/src/3rdparty/assimp/code/GenVertexNormalsProcess.cpp -index e4f96b6..643dc8f 100644 ---- a/src/3rdparty/assimp/code/GenVertexNormalsProcess.cpp -+++ b/src/3rdparty/assimp/code/GenVertexNormalsProcess.cpp -@@ -195,7 +195,7 @@ bool GenVertexNormalsProcess::GenMeshVertexNormals (aiMesh* pMesh, unsigned int - // Write the smoothed normal back to all affected normals - for (unsigned int a = 0; a < verticesFound.size(); ++a) - { -- register unsigned int vidx = verticesFound[a]; -+ unsigned int vidx = verticesFound[a]; - pcNew[vidx] = pcNor; - abHad[vidx] = true; - } -diff --git a/src/3rdparty/assimp/code/ImproveCacheLocality.cpp b/src/3rdparty/assimp/code/ImproveCacheLocality.cpp -index 8cd4ee6..b6aa338 100644 ---- a/src/3rdparty/assimp/code/ImproveCacheLocality.cpp -+++ b/src/3rdparty/assimp/code/ImproveCacheLocality.cpp -@@ -303,7 +303,7 @@ float ImproveCacheLocalityProcess::ProcessMesh( aiMesh* pMesh, unsigned int mesh - ivdx = -1; - int max_priority = -1; - for (unsigned int* piCur = piCandidates;piCur != piCurCandidate;++piCur) { -- register const unsigned int dp = *piCur; -+ const unsigned int dp = *piCur; - - // must have live triangles - if (piNumTriPtr[dp] > 0) { -diff --git a/src/3rdparty/assimp/code/LWOFileData.h b/src/3rdparty/assimp/code/LWOFileData.h -index d8f4b8d..88ca9c5 100644 ---- a/src/3rdparty/assimp/code/LWOFileData.h -+++ b/src/3rdparty/assimp/code/LWOFileData.h -@@ -346,7 +346,7 @@ struct VColorChannel : public VMapEntry - if (!rawData.empty()) - return; // return if already allocated - -- register unsigned int m = num*dims; -+ unsigned int m = num*dims; - rawData.reserve(m + (m>>2u)); // 25% as extra storage for VMADs - rawData.resize(m); - -diff --git a/src/3rdparty/assimp/code/LWOLoader.cpp b/src/3rdparty/assimp/code/LWOLoader.cpp -index 5e5aa83..e0891b7 100644 ---- a/src/3rdparty/assimp/code/LWOLoader.cpp -+++ b/src/3rdparty/assimp/code/LWOLoader.cpp -@@ -344,7 +344,7 @@ void LWOImporter::InternReadFile( const std::string& pFile, - - // copy all vertices - for (unsigned int q = 0; q < face.mNumIndices;++q,++vert) { -- register unsigned int idx = face.mIndices[q]; -+ unsigned int idx = face.mIndices[q]; - *pv++ = layer.mTempPoints[idx] /*- layer.mPivot*/; - - // process UV coordinates -@@ -491,7 +491,7 @@ void LWOImporter::ComputeNormals(aiMesh* mesh, const std::vector<unsigned int>& - aiFace& face = *begin; - for (unsigned int i = 0; i < face.mNumIndices;++i) - { -- register unsigned int tt = face.mIndices[i]; -+ unsigned int tt = face.mIndices[i]; - sSort.Add(mesh->mVertices[tt],tt,*it); - } - } -@@ -510,7 +510,7 @@ void LWOImporter::ComputeNormals(aiMesh* mesh, const std::vector<unsigned int>& - unsigned int* beginIdx = face.mIndices, *const endIdx = face.mIndices+face.mNumIndices; - for (; beginIdx != endIdx; ++beginIdx) - { -- register unsigned int idx = *beginIdx; -+ unsigned int idx = *beginIdx; - sSort.FindPositions(mesh->mVertices[idx],*it,posEpsilon,poResult,true); - std::vector<unsigned int>::const_iterator a, end = poResult.end(); - -@@ -533,7 +533,7 @@ void LWOImporter::ComputeNormals(aiMesh* mesh, const std::vector<unsigned int>& - unsigned int* beginIdx = face.mIndices, *const endIdx = face.mIndices+face.mNumIndices; - for (; beginIdx != endIdx; ++beginIdx) - { -- register unsigned int idx = *beginIdx; -+ unsigned int idx = *beginIdx; - if (vertexDone[idx]) - continue; - sSort.FindPositions(mesh->mVertices[idx],*it,posEpsilon,poResult,true); -@@ -730,7 +730,7 @@ void LWOImporter::LoadLWOPoints(unsigned int length) - // --- this function is used for both LWO2 and LWOB but for - // LWO2 we need to allocate 25% more storage - it could be we'll - // need to duplicate some points later. -- register unsigned int regularSize = (unsigned int)mCurLayer->mTempPoints.size() + length / 12; -+ unsigned int regularSize = (unsigned int)mCurLayer->mTempPoints.size() + length / 12; - if (mIsLWO2) - { - mCurLayer->mTempPoints.reserve ( regularSize + (regularSize>>2u) ); -diff --git a/src/3rdparty/assimp/code/MD2Loader.cpp b/src/3rdparty/assimp/code/MD2Loader.cpp -index e27ea4b..050555b 100644 ---- a/src/3rdparty/assimp/code/MD2Loader.cpp -+++ b/src/3rdparty/assimp/code/MD2Loader.cpp -@@ -377,7 +377,7 @@ void MD2Importer::InternReadFile( const std::string& pFile, - for (unsigned int c = 0; c < 3;++c,++iCurrent) { - - // validate vertex indices -- register unsigned int iIndex = (unsigned int)pcTriangles[i].vertexIndices[c]; -+ unsigned int iIndex = (unsigned int)pcTriangles[i].vertexIndices[c]; - if (iIndex >= m_pcHeader->numVertices) { - DefaultLogger::get()->error("MD2: Vertex index is outside the allowed range"); - iIndex = m_pcHeader->numVertices-1; -diff --git a/src/3rdparty/assimp/code/NFFLoader.cpp b/src/3rdparty/assimp/code/NFFLoader.cpp -index b3cbef3..b81698a 100644 ---- a/src/3rdparty/assimp/code/NFFLoader.cpp -+++ b/src/3rdparty/assimp/code/NFFLoader.cpp -@@ -400,7 +400,7 @@ void NFFImporter::InternReadFile( const std::string& pFile, - if (TokenMatch(sz,"0x",2)) - { - hasColor = true; -- register unsigned int numIdx = ::strtoul16(sz,&sz); -+ unsigned int numIdx = ::strtoul16(sz,&sz); - aiColor4D clr; - clr.a = 1.f; - -diff --git a/src/3rdparty/assimp/code/OptimizeMeshes.cpp b/src/3rdparty/assimp/code/OptimizeMeshes.cpp -index dce0ebd..85961de 100644 ---- a/src/3rdparty/assimp/code/OptimizeMeshes.cpp -+++ b/src/3rdparty/assimp/code/OptimizeMeshes.cpp -@@ -162,7 +162,7 @@ void OptimizeMeshesProcess::ProcessNode( aiNode* pNode) - - // Find meshes to merge with us - for (unsigned int a = i+1; a < pNode->mNumMeshes;++a) { -- register unsigned int am = pNode->mMeshes[a]; -+ unsigned int am = pNode->mMeshes[a]; - if (meshes[am].instance_cnt == 1 && CanJoin(im,am,verts,faces)) { - - merge_list.push_back(mScene->mMeshes[am]); -diff --git a/src/3rdparty/assimp/code/PlyParser.cpp b/src/3rdparty/assimp/code/PlyParser.cpp -index 048fd5e..a168535 100644 ---- a/src/3rdparty/assimp/code/PlyParser.cpp -+++ b/src/3rdparty/assimp/code/PlyParser.cpp -@@ -794,7 +794,7 @@ bool PLY::PropertyInstance::ParseValue( - { - ai_assert(NULL != pCur && NULL != pCurOut && NULL != out); - -- register bool ret = true; -+ bool ret = true; - *pCurOut = pCur; - switch (eType) - { -@@ -841,7 +841,7 @@ bool PLY::PropertyInstance::ParseValueBinary( - { - ai_assert(NULL != pCur && NULL != pCurOut && NULL != out); - -- register bool ret = true; -+ bool ret = true; - switch (eType) - { - case EDT_UInt: -diff --git a/src/3rdparty/assimp/code/Q3DLoader.cpp b/src/3rdparty/assimp/code/Q3DLoader.cpp -index 54b5456..0e436e3 100644 ---- a/src/3rdparty/assimp/code/Q3DLoader.cpp -+++ b/src/3rdparty/assimp/code/Q3DLoader.cpp -@@ -314,7 +314,7 @@ void Q3DImporter::InternReadFile( const std::string& pFile, - if (!tex->mWidth || !tex->mHeight) - throw DeadlyImportError("Quick3D: Invalid texture. Width or height is zero"); - -- register unsigned int mul = tex->mWidth * tex->mHeight; -+ unsigned int mul = tex->mWidth * tex->mHeight; - aiTexel* begin = tex->pcData = new aiTexel[mul]; - aiTexel* const end = & begin [mul]; - -diff --git a/src/3rdparty/assimp/code/RemoveVCProcess.cpp b/src/3rdparty/assimp/code/RemoveVCProcess.cpp -index 346d84a..7c4908f 100644 ---- a/src/3rdparty/assimp/code/RemoveVCProcess.cpp -+++ b/src/3rdparty/assimp/code/RemoveVCProcess.cpp -@@ -84,7 +84,7 @@ inline void ArrayDelete(T**& in, unsigned int& num) - // "don't remove" flag not set. Nodes with meshes are never deleted. - bool UpdateNodeGraph(aiNode* node,std::list<aiNode*>& childsOfParent,bool root) - { -- register bool b = false; -+ bool b = false; - - std::list<aiNode*> mine; - for (unsigned int i = 0; i < node->mNumChildren;++i) -@@ -271,7 +271,7 @@ bool RemoveVCProcess::ProcessMesh(aiMesh* pMesh) - } - - // handle texture coordinates -- register bool b = (0 != (configDeleteFlags & aiComponent_TEXCOORDS)); -+ bool b = (0 != (configDeleteFlags & aiComponent_TEXCOORDS)); - for (unsigned int i = 0, real = 0; real < AI_MAX_NUMBER_OF_TEXTURECOORDS; ++real) - { - if (!pMesh->mTextureCoords[i])break; -diff --git a/src/3rdparty/assimp/code/SmoothingGroups.inl b/src/3rdparty/assimp/code/SmoothingGroups.inl -index 55a9394..156ebf7 100644 ---- a/src/3rdparty/assimp/code/SmoothingGroups.inl -+++ b/src/3rdparty/assimp/code/SmoothingGroups.inl -@@ -106,7 +106,7 @@ void ComputeNormalsWithSmoothingsGroups(MeshWithSmoothingGroups<T>& sMesh) - std::vector<unsigned int> poResult; - for (unsigned int c = 0; c < 3;++c) - { -- register unsigned int idx = (*i).mIndices[c]; -+ unsigned int idx = (*i).mIndices[c]; - if (vertexDone[idx])continue; - - sSort.FindPositions(sMesh.mPositions[idx],(*i).iSmoothGroup, -diff --git a/src/3rdparty/assimp/code/SortByPTypeProcess.cpp b/src/3rdparty/assimp/code/SortByPTypeProcess.cpp -index 2b3c9d5..7165f44 100644 ---- a/src/3rdparty/assimp/code/SortByPTypeProcess.cpp -+++ b/src/3rdparty/assimp/code/SortByPTypeProcess.cpp -@@ -289,7 +289,7 @@ void SortByPTypeProcess::Execute( aiScene* pScene) - - for (unsigned int q = 0; q < in.mNumIndices; ++q) - { -- register unsigned int idx = in.mIndices[q]; -+ unsigned int idx = in.mIndices[q]; - - // process all bones of this index - if (avw) -diff --git a/src/3rdparty/assimp/code/StringComparison.h b/src/3rdparty/assimp/code/StringComparison.h -index 72dee86..d38fc86 100644 ---- a/src/3rdparty/assimp/code/StringComparison.h -+++ b/src/3rdparty/assimp/code/StringComparison.h -@@ -137,7 +137,7 @@ inline int ASSIMP_stricmp(const char *s1, const char *s2) - return ::strcasecmp(s1,s2); - #else - -- register char c1, c2; -+ char c1, c2; - do { - c1 = tolower(*s1++); - c2 = tolower(*s2++); -@@ -156,7 +156,7 @@ inline int ASSIMP_stricmp(const char *s1, const char *s2) - */ - inline int ASSIMP_stricmp(const std::string& a, const std::string& b) - { -- register int i = (int)b.length()-(int)a.length(); -+ int i = (int)b.length()-(int)a.length(); - return (i ? i : ASSIMP_stricmp(a.c_str(),b.c_str())); - } - -@@ -186,7 +186,7 @@ inline int ASSIMP_strincmp(const char *s1, const char *s2, unsigned int n) - return ::strncasecmp(s1,s2, n); - - #else -- register char c1, c2; -+ char c1, c2; - unsigned int p = 0; - do - { -diff --git a/src/3rdparty/assimp/code/TerragenLoader.cpp b/src/3rdparty/assimp/code/TerragenLoader.cpp -index 8c0ab1c..27775dd 100644 ---- a/src/3rdparty/assimp/code/TerragenLoader.cpp -+++ b/src/3rdparty/assimp/code/TerragenLoader.cpp -@@ -225,7 +225,7 @@ void TerragenImporter::InternReadFile( const std::string& pFile, - - // make verts - const float fy = (float)yy, fx = (float)xx; -- register unsigned tmp,tmp2; -+ unsigned tmp,tmp2; - *pv++ = aiVector3D(fx,fy, (float)data[(tmp2=x*yy) + xx] * hscale + bheight); - *pv++ = aiVector3D(fx,fy+1, (float)data[(tmp=x*(yy+1)) + xx] * hscale + bheight); - *pv++ = aiVector3D(fx+1,fy+1,(float)data[tmp + xx+1] * hscale + bheight); -diff --git a/src/3rdparty/assimp/contrib/unzip/crypt.h b/src/3rdparty/assimp/contrib/unzip/crypt.h -index 622f4bc..1362cfc 100644 ---- a/src/3rdparty/assimp/contrib/unzip/crypt.h -+++ b/src/3rdparty/assimp/contrib/unzip/crypt.h -@@ -51,7 +51,7 @@ static int update_keys(unsigned long* pkeys,const unsigned long* pcrc_32_tab,int - (*(pkeys+1)) += (*(pkeys+0)) & 0xff; - (*(pkeys+1)) = (*(pkeys+1)) * 134775813L + 1; - { -- register int keyshift = (int)((*(pkeys+1)) >> 24); -+ int keyshift = (int)((*(pkeys+1)) >> 24); - (*(pkeys+2)) = CRC32((*(pkeys+2)), keyshift); - } - return c; --- -2.4.9 (Apple Git-60) - diff --git a/src/3rdparty/patches/0004-assimp-Remove-register-keyword.patch b/src/3rdparty/patches/0004-assimp-Remove-register-keyword.patch new file mode 100644 index 000000000..a50248d7b --- /dev/null +++ b/src/3rdparty/patches/0004-assimp-Remove-register-keyword.patch @@ -0,0 +1,12 @@ +diff -ur assimpGIT/contrib/unzip/crypt.h assimp/contrib/unzip/crypt.h +--- assimpGIT/contrib/unzip/crypt.h 2016-12-07 20:20:54.000000000 -0500 ++++ assimp/contrib/unzip/crypt.h 2016-12-07 17:00:44.000000000 -0500 +@@ -51,7 +51,7 @@ + (*(pkeys+1)) += (*(pkeys+0)) & 0xff; + (*(pkeys+1)) = (*(pkeys+1)) * 134775813L + 1; + { +- register int keyshift = (int)((*(pkeys+1)) >> 24); ++ int keyshift = (int)((*(pkeys+1)) >> 24); + (*(pkeys+2)) = CRC32((*(pkeys+2)), keyshift); + } + return c; diff --git a/src/3rdparty/patches/0004-assimp-Use-std-namespace-for-most-cmath-functions.patch b/src/3rdparty/patches/0004-assimp-Use-std-namespace-for-most-cmath-functions.patch deleted file mode 100644 index c50dac07e..000000000 --- a/src/3rdparty/patches/0004-assimp-Use-std-namespace-for-most-cmath-functions.patch +++ /dev/null @@ -1,1281 +0,0 @@ -From f58bcc1100afc3f5df5e7c6c2796f211ee1824cb Mon Sep 17 00:00:00 2001 -From: Andy Nichols <andy.nichols@theqtcompany.com> -Date: Tue, 3 Nov 2015 13:09:13 +0100 -Subject: [PATCH] assimp: Use std namespace for most cmath functions - -This also fixes a couple of cases where the int version of abs was used -when it should be the float version. - -Change-Id: Id5063545e5a6e659e95262177217be98766794b0 ---- - src/3rdparty/assimp/code/BlenderTessellator.cpp | 4 +- - src/3rdparty/assimp/code/ColladaLoader.cpp | 2 +- - .../assimp/code/ComputeUVMappingProcess.cpp | 14 ++-- - src/3rdparty/assimp/code/FBXConverter.cpp | 10 +-- - .../assimp/code/FindInvalidDataProcess.cpp | 2 +- - src/3rdparty/assimp/code/FixNormalsStep.cpp | 6 +- - .../assimp/code/GenVertexNormalsProcess.cpp | 2 +- - src/3rdparty/assimp/code/IFCBoolean.cpp | 10 +-- - src/3rdparty/assimp/code/IFCCurve.cpp | 30 ++++----- - src/3rdparty/assimp/code/IFCGeometry.cpp | 14 ++-- - src/3rdparty/assimp/code/IFCOpenings.cpp | 78 +++++++++++----------- - src/3rdparty/assimp/code/IFCProfile.cpp | 2 +- - src/3rdparty/assimp/code/IFCUtil.cpp | 2 +- - src/3rdparty/assimp/code/IFCUtil.h | 2 +- - src/3rdparty/assimp/code/IRRLoader.cpp | 4 +- - src/3rdparty/assimp/code/LWOAnimation.cpp | 2 +- - src/3rdparty/assimp/code/LWOBLoader.cpp | 2 +- - src/3rdparty/assimp/code/LWOLoader.cpp | 2 +- - src/3rdparty/assimp/code/MD5Parser.h | 2 +- - src/3rdparty/assimp/code/PolyTools.h | 12 ++-- - src/3rdparty/assimp/code/SkeletonMeshBuilder.cpp | 2 +- - src/3rdparty/assimp/code/StandardShapes.cpp | 20 +++--- - src/3rdparty/assimp/code/TextureTransform.h | 14 ++-- - src/3rdparty/assimp/code/TriangulateProcess.cpp | 4 +- - src/3rdparty/assimp/code/XGLLoader.cpp | 2 +- - src/3rdparty/assimp/code/fast_atof.h | 2 +- - .../contrib/poly2tri/poly2tri/common/shapes.h | 2 +- - src/3rdparty/assimp/include/assimp/color4.inl | 2 +- - src/3rdparty/assimp/include/assimp/matrix3x3.inl | 6 +- - src/3rdparty/assimp/include/assimp/matrix4x4.inl | 38 +++++------ - src/3rdparty/assimp/include/assimp/quaternion.inl | 36 +++++----- - src/3rdparty/assimp/include/assimp/types.h | 2 +- - src/3rdparty/assimp/include/assimp/vector2.inl | 2 +- - src/3rdparty/assimp/include/assimp/vector3.inl | 2 +- - 34 files changed, 168 insertions(+), 168 deletions(-) - -diff --git a/src/3rdparty/assimp/code/BlenderTessellator.cpp b/src/3rdparty/assimp/code/BlenderTessellator.cpp -index ffe7949..98ccbad 100644 ---- a/src/3rdparty/assimp/code/BlenderTessellator.cpp -+++ b/src/3rdparty/assimp/code/BlenderTessellator.cpp -@@ -324,7 +324,7 @@ void BlenderTessellatorP2T::Copy3DVertices( const MLoop* polyLoop, int vertexCou - aiMatrix4x4 BlenderTessellatorP2T::GeneratePointTransformMatrix( const Blender::PlaneP2T& plane ) const - { - aiVector3D sideA( 1.0f, 0.0f, 0.0f ); -- if ( fabs( plane.normal * sideA ) > 0.999f ) -+ if ( std::fabs( plane.normal * sideA ) > 0.999f ) - { - sideA = aiVector3D( 0.0f, 1.0f, 0.0f ); - } -@@ -420,7 +420,7 @@ float BlenderTessellatorP2T::FindLargestMatrixElem( const aiMatrix3x3& mtx ) con - { - for ( int y = 0; y < 3; ++y ) - { -- result = p2tMax( fabs( mtx[ x ][ y ] ), result ); -+ result = p2tMax( std::fabs( mtx[ x ][ y ] ), result ); - } - } - -diff --git a/src/3rdparty/assimp/code/ColladaLoader.cpp b/src/3rdparty/assimp/code/ColladaLoader.cpp -index 058baf9..2096e95 100644 ---- a/src/3rdparty/assimp/code/ColladaLoader.cpp -+++ b/src/3rdparty/assimp/code/ColladaLoader.cpp -@@ -341,7 +341,7 @@ void ColladaLoader::BuildLightsForNode( const ColladaParser& pParser, const Coll - { - // Need to rely on falloff_exponent. I don't know how to interpret it, so I need to guess .... - // epsilon chosen to be 0.1 -- out->mAngleOuterCone = AI_DEG_TO_RAD (acos(pow(0.1f,1.f/srcLight->mFalloffExponent))+ -+ out->mAngleOuterCone = AI_DEG_TO_RAD (std::acos(std::pow(0.1f,1.f/srcLight->mFalloffExponent))+ - srcLight->mFalloffAngle); - } - else { -diff --git a/src/3rdparty/assimp/code/ComputeUVMappingProcess.cpp b/src/3rdparty/assimp/code/ComputeUVMappingProcess.cpp -index 091f6a0..c25a17c 100644 ---- a/src/3rdparty/assimp/code/ComputeUVMappingProcess.cpp -+++ b/src/3rdparty/assimp/code/ComputeUVMappingProcess.cpp -@@ -197,9 +197,9 @@ void ComputeUVMappingProcess::ComputeSphereMapping(aiMesh* mesh,const aiVector3D - // UV axes. Problems occur around the poles ... unsolvable. - // - // The spherical coordinate system looks like this: -- // x = cos(lon)*cos(lat) -- // y = sin(lon)*cos(lat) -- // z = sin(lat) -+ // x = std::cos(lon)*std::cos(lat) -+ // y = std::sin(lon)*std::cos(lat) -+ // z = std::sin(lat) - // - // Thus we can derive: - // lat = arcsin (z) -@@ -207,7 +207,7 @@ void ComputeUVMappingProcess::ComputeSphereMapping(aiMesh* mesh,const aiVector3D - for (unsigned int pnt = 0; pnt < mesh->mNumVertices;++pnt) { - const aiVector3D diff = (mesh->mVertices[pnt]-center).Normalize(); - out[pnt] = aiVector3D((atan2 (diff.z, diff.y) + AI_MATH_PI_F ) / AI_MATH_TWO_PI_F, -- (asin (diff.x) + AI_MATH_HALF_PI_F) / AI_MATH_PI_F, 0.f); -+ (std::asin (diff.x) + AI_MATH_HALF_PI_F) / AI_MATH_PI_F, 0.f); - } - } - else if (axis * base_axis_y >= angle_epsilon) { -@@ -215,7 +215,7 @@ void ComputeUVMappingProcess::ComputeSphereMapping(aiMesh* mesh,const aiVector3D - for (unsigned int pnt = 0; pnt < mesh->mNumVertices;++pnt) { - const aiVector3D diff = (mesh->mVertices[pnt]-center).Normalize(); - out[pnt] = aiVector3D((atan2 (diff.x, diff.z) + AI_MATH_PI_F ) / AI_MATH_TWO_PI_F, -- (asin (diff.y) + AI_MATH_HALF_PI_F) / AI_MATH_PI_F, 0.f); -+ (std::asin (diff.y) + AI_MATH_HALF_PI_F) / AI_MATH_PI_F, 0.f); - } - } - else if (axis * base_axis_z >= angle_epsilon) { -@@ -223,7 +223,7 @@ void ComputeUVMappingProcess::ComputeSphereMapping(aiMesh* mesh,const aiVector3D - for (unsigned int pnt = 0; pnt < mesh->mNumVertices;++pnt) { - const aiVector3D diff = (mesh->mVertices[pnt]-center).Normalize(); - out[pnt] = aiVector3D((atan2 (diff.y, diff.x) + AI_MATH_PI_F ) / AI_MATH_TWO_PI_F, -- (asin (diff.z) + AI_MATH_HALF_PI_F) / AI_MATH_PI_F, 0.f); -+ (std::asin (diff.z) + AI_MATH_HALF_PI_F) / AI_MATH_PI_F, 0.f); - } - } - // slower code path in case the mapping axis is not one of the coordinate system axes -@@ -235,7 +235,7 @@ void ComputeUVMappingProcess::ComputeSphereMapping(aiMesh* mesh,const aiVector3D - for (unsigned int pnt = 0; pnt < mesh->mNumVertices;++pnt) { - const aiVector3D diff = ((mTrafo*mesh->mVertices[pnt])-center).Normalize(); - out[pnt] = aiVector3D((atan2 (diff.y, diff.x) + AI_MATH_PI_F ) / AI_MATH_TWO_PI_F, -- (asin (diff.z) + AI_MATH_HALF_PI_F) / AI_MATH_PI_F, 0.f); -+ (std::asin (diff.z) + AI_MATH_HALF_PI_F) / AI_MATH_PI_F, 0.f); - } - } - -diff --git a/src/3rdparty/assimp/code/FBXConverter.cpp b/src/3rdparty/assimp/code/FBXConverter.cpp -index 89854fc..56643bc 100644 ---- a/src/3rdparty/assimp/code/FBXConverter.cpp -+++ b/src/3rdparty/assimp/code/FBXConverter.cpp -@@ -499,15 +499,15 @@ private: - bool is_id[3] = { true, true, true }; - - aiMatrix4x4 temp[3]; -- if(fabs(rotation.z) > angle_epsilon) { -+ if(std::fabs(rotation.z) > angle_epsilon) { - aiMatrix4x4::RotationZ(AI_DEG_TO_RAD(rotation.z),temp[2]); - is_id[2] = false; - } -- if(fabs(rotation.y) > angle_epsilon) { -+ if(std::fabs(rotation.y) > angle_epsilon) { - aiMatrix4x4::RotationY(AI_DEG_TO_RAD(rotation.y),temp[1]); - is_id[1] = false; - } -- if(fabs(rotation.x) > angle_epsilon) { -+ if(std::fabs(rotation.x) > angle_epsilon) { - aiMatrix4x4::RotationX(AI_DEG_TO_RAD(rotation.x),temp[0]); - is_id[0] = false; - } -@@ -676,7 +676,7 @@ private: - } - - const aiVector3D& Scaling = PropertyGet<aiVector3D>(props,"Lcl Scaling",ok); -- if(ok && fabs(Scaling.SquareLength()-1.0f) > zero_epsilon) { -+ if(ok && std::fabs(Scaling.SquareLength()-1.0f) > zero_epsilon) { - aiMatrix4x4::Scaling(Scaling,chain[TransformationComp_Scaling]); - } - -@@ -686,7 +686,7 @@ private: - } - - const aiVector3D& GeometricScaling = PropertyGet<aiVector3D>(props, "GeometricScaling", ok); -- if (ok && fabs(GeometricScaling.SquareLength() - 1.0f) > zero_epsilon) { -+ if (ok && std::fabs(GeometricScaling.SquareLength() - 1.0f) > zero_epsilon) { - aiMatrix4x4::Scaling(GeometricScaling, chain[TransformationComp_GeometricScaling]); - } - -diff --git a/src/3rdparty/assimp/code/FindInvalidDataProcess.cpp b/src/3rdparty/assimp/code/FindInvalidDataProcess.cpp -index 618e7d3..ba47810 100644 ---- a/src/3rdparty/assimp/code/FindInvalidDataProcess.cpp -+++ b/src/3rdparty/assimp/code/FindInvalidDataProcess.cpp -@@ -221,7 +221,7 @@ AI_FORCE_INLINE bool EpsilonCompare(const T& n, const T& s, float epsilon); - - // ------------------------------------------------------------------------------------------------ - AI_FORCE_INLINE bool EpsilonCompare(float n, float s, float epsilon) { -- return fabs(n-s)>epsilon; -+ return std::fabs(n-s)>epsilon; - } - - // ------------------------------------------------------------------------------------------------ -diff --git a/src/3rdparty/assimp/code/FixNormalsStep.cpp b/src/3rdparty/assimp/code/FixNormalsStep.cpp -index f95dfbc..9b85222 100644 ---- a/src/3rdparty/assimp/code/FixNormalsStep.cpp -+++ b/src/3rdparty/assimp/code/FixNormalsStep.cpp -@@ -144,9 +144,9 @@ bool FixInfacingNormalsProcess::ProcessMesh( aiMesh* pcMesh, unsigned int index) - // Check whether this is a planar surface - const float fDelta1_yz = fDelta1_y * fDelta1_z; - -- if (fDelta1_x < 0.05f * sqrtf( fDelta1_yz ))return false; -- if (fDelta1_y < 0.05f * sqrtf( fDelta1_z * fDelta1_x ))return false; -- if (fDelta1_z < 0.05f * sqrtf( fDelta1_y * fDelta1_x ))return false; -+ if (fDelta1_x < 0.05f * sqrtf( fDelta1_yz ))return false; -+ if (fDelta1_y < 0.05f * sqrtf( fDelta1_z * fDelta1_x ))return false; -+ if (fDelta1_z < 0.05f * sqrtf( fDelta1_y * fDelta1_x ))return false; - - // now compare the volumes of the bounding boxes - if (::fabsf(fDelta0_x * fDelta1_yz) < -diff --git a/src/3rdparty/assimp/code/GenVertexNormalsProcess.cpp b/src/3rdparty/assimp/code/GenVertexNormalsProcess.cpp -index 643dc8f..231b655 100644 ---- a/src/3rdparty/assimp/code/GenVertexNormalsProcess.cpp -+++ b/src/3rdparty/assimp/code/GenVertexNormalsProcess.cpp -@@ -204,7 +204,7 @@ bool GenVertexNormalsProcess::GenMeshVertexNormals (aiMesh* pMesh, unsigned int - // Slower code path if a smooth angle is set. There are many ways to achieve - // the effect, this one is the most straightforward one. - else { -- const float fLimit = ::cos(configMaxAngle); -+ const float fLimit = std::cos(configMaxAngle); - for (unsigned int i = 0; i < pMesh->mNumVertices;++i) { - // Get all vertices that share this one ... - vertexFinder->FindPositions( pMesh->mVertices[i] , posEpsilon, verticesFound); -diff --git a/src/3rdparty/assimp/code/IFCBoolean.cpp b/src/3rdparty/assimp/code/IFCBoolean.cpp -index 8573e4d..3581d2a 100644 ---- a/src/3rdparty/assimp/code/IFCBoolean.cpp -+++ b/src/3rdparty/assimp/code/IFCBoolean.cpp -@@ -69,8 +69,8 @@ Intersect IntersectSegmentPlane(const IfcVector3& p,const IfcVector3& n, const I - const IfcVector3 pdelta = e0 - p, seg = e1-e0; - const IfcFloat dotOne = n*seg, dotTwo = -(n*pdelta); - -- if (fabs(dotOne) < 1e-6) { -- return fabs(dotTwo) < 1e-6f ? Intersect_LiesOnPlane : Intersect_No; -+ if (std::fabs(dotOne) < 1e-6) { -+ return std::fabs(dotTwo) < 1e-6f ? Intersect_LiesOnPlane : Intersect_No; - } - - const IfcFloat t = dotTwo/dotOne; -@@ -210,7 +210,7 @@ bool IntersectsBoundaryProfile( const IfcVector3& e0, const IfcVector3& e1, cons - // segment-segment intersection - // solve b0 + b*s = e0 + e*t for (s,t) - const IfcFloat det = (-b.x * e.y + e.x * b.y); -- if(fabs(det) < 1e-6) { -+ if(std::fabs(det) < 1e-6) { - // no solutions (parallel lines) - continue; - } -@@ -234,7 +234,7 @@ bool IntersectsBoundaryProfile( const IfcVector3& e0, const IfcVector3& e1, cons - if (t >= -epsilon && (t <= 1.0+epsilon || half_open) && s >= -epsilon && s <= 1.0) { - - if (e0_hits_border && !*e0_hits_border) { -- *e0_hits_border = fabs(t) < 1e-5f; -+ *e0_hits_border = std::fabs(t) < 1e-5f; - } - - const IfcVector3& p = e0 + e*t; -@@ -419,7 +419,7 @@ void ProcessPolygonalBoundedBooleanHalfSpaceDifference(const IfcPolygonalBounded - - #ifdef ASSIMP_BUILD_DEBUG - if (isect == Intersect_Yes) { -- const IfcFloat f = fabs((isectpos - p)*n); -+ const IfcFloat f = std::fabs((isectpos - p)*n); - ai_assert(f < 1e-5); - } - #endif -diff --git a/src/3rdparty/assimp/code/IFCCurve.cpp b/src/3rdparty/assimp/code/IFCCurve.cpp -index 4919b52..1079c1e 100644 ---- a/src/3rdparty/assimp/code/IFCCurve.cpp -+++ b/src/3rdparty/assimp/code/IFCCurve.cpp -@@ -88,10 +88,10 @@ public: - a *= conv.angle_scale; - b *= conv.angle_scale; - -- a = fmod(a,static_cast<IfcFloat>( AI_MATH_TWO_PI )); -- b = fmod(b,static_cast<IfcFloat>( AI_MATH_TWO_PI )); -+ a = std::fmod(a,static_cast<IfcFloat>( AI_MATH_TWO_PI )); -+ b = std::fmod(b,static_cast<IfcFloat>( AI_MATH_TWO_PI )); - const IfcFloat setting = static_cast<IfcFloat>( AI_MATH_PI * conv.settings.conicSamplingAngle / 180.0 ); -- return static_cast<size_t>( ceil(abs( b-a)) / setting); -+ return static_cast<size_t>( std::ceil(std::abs( b-a)) / setting); - } - - // -------------------------------------------------- -@@ -124,8 +124,8 @@ public: - // -------------------------------------------------- - IfcVector3 Eval(IfcFloat u) const { - u = -conv.angle_scale * u; -- return location + static_cast<IfcFloat>(entity.Radius)*(static_cast<IfcFloat>(::cos(u))*p[0] + -- static_cast<IfcFloat>(::sin(u))*p[1]); -+ return location + static_cast<IfcFloat>(entity.Radius)*(static_cast<IfcFloat>(std::cos(u))*p[0] + -+ static_cast<IfcFloat>(std::sin(u))*p[1]); - } - - private: -@@ -153,8 +153,8 @@ public: - // -------------------------------------------------- - IfcVector3 Eval(IfcFloat u) const { - u = -conv.angle_scale * u; -- return location + static_cast<IfcFloat>(entity.SemiAxis1)*static_cast<IfcFloat>(::cos(u))*p[0] + -- static_cast<IfcFloat>(entity.SemiAxis2)*static_cast<IfcFloat>(::sin(u))*p[1]; -+ return location + static_cast<IfcFloat>(entity.SemiAxis1)*static_cast<IfcFloat>(std::cos(u))*p[0] + -+ static_cast<IfcFloat>(entity.SemiAxis2)*static_cast<IfcFloat>(std::sin(u))*p[1]; - } - - private: -@@ -276,7 +276,7 @@ public: - IfcFloat acc = 0; - BOOST_FOREACH(const CurveEntry& entry, curves) { - const ParamRange& range = entry.first->GetParametricRange(); -- const IfcFloat delta = abs(range.second-range.first); -+ const IfcFloat delta = std::abs(range.second-range.first); - if (u < acc+delta) { - return entry.first->Eval( entry.second ? (u-acc) + range.first : range.second-(u-acc)); - } -@@ -295,7 +295,7 @@ public: - IfcFloat acc = 0; - BOOST_FOREACH(const CurveEntry& entry, curves) { - const ParamRange& range = entry.first->GetParametricRange(); -- const IfcFloat delta = abs(range.second-range.first); -+ const IfcFloat delta = std::abs(range.second-range.first); - if (a <= acc+delta && b >= acc) { - const IfcFloat at = std::max(static_cast<IfcFloat>( 0. ),a-acc), bt = std::min(delta,b-acc); - cnt += entry.first->EstimateSampleCount( entry.second ? at + range.first : range.second - bt, entry.second ? bt + range.first : range.second - at ); -@@ -486,7 +486,7 @@ public: - IfcVector3 Eval(IfcFloat p) const { - ai_assert(InRange(p)); - -- const size_t b = static_cast<size_t>(floor(p)); -+ const size_t b = static_cast<size_t>(std::floor(p)); - if (b == points.size()-1) { - return points.back(); - } -@@ -498,7 +498,7 @@ public: - // -------------------------------------------------- - size_t EstimateSampleCount(IfcFloat a, IfcFloat b) const { - ai_assert(InRange(a) && InRange(b)); -- return static_cast<size_t>( ceil(b) - floor(a) ); -+ return static_cast<size_t>( std::ceil(b) - std::floor(a) ); - } - - // -------------------------------------------------- -@@ -558,7 +558,7 @@ bool Curve :: InRange(IfcFloat u) const - if (IsClosed()) { - return true; - //ai_assert(range.first != std::numeric_limits<IfcFloat>::infinity() && range.second != std::numeric_limits<IfcFloat>::infinity()); -- //u = range.first + fmod(u-range.first,range.second-range.first); -+ //u = range.first + std::fmod(u-range.first,range.second-range.first); - } - const IfcFloat epsilon = 1e-5; - return u - range.first > -epsilon && range.second - u > -epsilon; -@@ -569,7 +569,7 @@ bool Curve :: InRange(IfcFloat u) const - IfcFloat Curve :: GetParametricRangeDelta() const - { - const ParamRange& range = GetParametricRange(); -- return abs(range.second - range.first); -+ return std::abs(range.second - range.first); - } - - // ------------------------------------------------------------------------------------------------ -@@ -606,12 +606,12 @@ IfcFloat RecursiveSearch(const Curve* cv, const IfcVector3& val, IfcFloat a, Ifc - } - - ai_assert(min_diff[0] != inf && min_diff[1] != inf); -- if ( fabs(a-min_point[0]) < threshold || recurse >= max_recurse) { -+ if ( std::fabs(a-min_point[0]) < threshold || recurse >= max_recurse) { - return min_point[0]; - } - - // fix for closed curves to take their wrap-over into account -- if (cv->IsClosed() && fabs(min_point[0]-min_point[1]) > cv->GetParametricRangeDelta()*0.5 ) { -+ if (cv->IsClosed() && std::fabs(min_point[0]-min_point[1]) > cv->GetParametricRangeDelta()*0.5 ) { - const Curve::ParamRange& range = cv->GetParametricRange(); - const IfcFloat wrapdiff = (cv->Eval(range.first)-val).SquareLength(); - -diff --git a/src/3rdparty/assimp/code/IFCGeometry.cpp b/src/3rdparty/assimp/code/IFCGeometry.cpp -index a3c6711..96ccf29 100644 ---- a/src/3rdparty/assimp/code/IFCGeometry.cpp -+++ b/src/3rdparty/assimp/code/IFCGeometry.cpp -@@ -250,17 +250,17 @@ void ProcessRevolvedAreaSolid(const IfcRevolvedAreaSolid& solid, TempMesh& resul - - bool has_area = solid.SweptArea->ProfileType == "AREA" && size>2; - const IfcFloat max_angle = solid.Angle*conv.angle_scale; -- if(fabs(max_angle) < 1e-3) { -+ if(std::fabs(max_angle) < 1e-3) { - if(has_area) { - result = meshout; - } - return; - } - -- const unsigned int cnt_segments = std::max(2u,static_cast<unsigned int>(16 * fabs(max_angle)/AI_MATH_HALF_PI_F)); -+ const unsigned int cnt_segments = std::max(2u,static_cast<unsigned int>(16 * std::fabs(max_angle)/AI_MATH_HALF_PI_F)); - const IfcFloat delta = max_angle/cnt_segments; - -- has_area = has_area && fabs(max_angle) < AI_MATH_TWO_PI_F*0.99; -+ has_area = has_area && std::fabs(max_angle) < AI_MATH_TWO_PI_F*0.99; - - result.verts.reserve(size*((cnt_segments+1)*4+(has_area?2:0))); - result.vertcnt.reserve(size*cnt_segments+2); -@@ -375,21 +375,21 @@ void ProcessSweptDiskSolid(const IfcSweptDiskSolid solid, TempMesh& result, Conv - bool take_any = false; - - for (unsigned int i = 0; i < 2; ++i, take_any = true) { -- if ((last_dir == 0 || take_any) && abs(d.x) > 1e-6) { -+ if ((last_dir == 0 || take_any) && std::abs(d.x) > 1e-6) { - q.y = startvec.y; - q.z = startvec.z; - q.x = -(d.y * q.y + d.z * q.z) / d.x; - last_dir = 0; - break; - } -- else if ((last_dir == 1 || take_any) && abs(d.y) > 1e-6) { -+ else if ((last_dir == 1 || take_any) && std::abs(d.y) > 1e-6) { - q.x = startvec.x; - q.z = startvec.z; - q.y = -(d.x * q.x + d.z * q.z) / d.y; - last_dir = 1; - break; - } -- else if ((last_dir == 2 && abs(d.z) > 1e-6) || take_any) { -+ else if ((last_dir == 2 && std::abs(d.z) > 1e-6) || take_any) { - q.y = startvec.y; - q.x = startvec.x; - q.z = -(d.y * q.y + d.x * q.x) / d.z; -@@ -480,7 +480,7 @@ IfcMatrix3 DerivePlaneCoordinateSpace(const TempMesh& curmesh, bool& ok, IfcVect - for (i = 0; !done && i < s-2; done || ++i) { - for (j = i+1; j < s-1; ++j) { - nor = -((out[i]-any_point)^(out[j]-any_point)); -- if(fabs(nor.Length()) > 1e-8f) { -+ if(std::fabs(nor.Length()) > 1e-8f) { - done = true; - break; - } -diff --git a/src/3rdparty/assimp/code/IFCOpenings.cpp b/src/3rdparty/assimp/code/IFCOpenings.cpp -index c26574c..850403d 100644 ---- a/src/3rdparty/assimp/code/IFCOpenings.cpp -+++ b/src/3rdparty/assimp/code/IFCOpenings.cpp -@@ -303,20 +303,20 @@ void InsertWindowContours(const ContourVector& contours, - const IfcVector2& v = contour[n]; - - bool hit = false; -- if (fabs(v.x-bb.first.x)<epsilon) { -+ if (std::fabs(v.x-bb.first.x)<epsilon) { - edge.x = bb.first.x; - hit = true; - } -- else if (fabs(v.x-bb.second.x)<epsilon) { -+ else if (std::fabs(v.x-bb.second.x)<epsilon) { - edge.x = bb.second.x; - hit = true; - } - -- if (fabs(v.y-bb.first.y)<epsilon) { -+ if (std::fabs(v.y-bb.first.y)<epsilon) { - edge.y = bb.first.y; - hit = true; - } -- else if (fabs(v.y-bb.second.y)<epsilon) { -+ else if (std::fabs(v.y-bb.second.y)<epsilon) { - edge.y = bb.second.y; - hit = true; - } -@@ -343,17 +343,17 @@ void InsertWindowContours(const ContourVector& contours, - - IfcVector2 corner = edge; - -- if (fabs(contour[last_hit].x-bb.first.x)<epsilon) { -+ if (std::fabs(contour[last_hit].x-bb.first.x)<epsilon) { - corner.x = bb.first.x; - } -- else if (fabs(contour[last_hit].x-bb.second.x)<epsilon) { -+ else if (std::fabs(contour[last_hit].x-bb.second.x)<epsilon) { - corner.x = bb.second.x; - } - -- if (fabs(contour[last_hit].y-bb.first.y)<epsilon) { -+ if (std::fabs(contour[last_hit].y-bb.first.y)<epsilon) { - corner.y = bb.first.y; - } -- else if (fabs(contour[last_hit].y-bb.second.y)<epsilon) { -+ else if (std::fabs(contour[last_hit].y-bb.second.y)<epsilon) { - corner.y = bb.second.y; - } - -@@ -590,10 +590,10 @@ bool BoundingBoxesAdjacent(const BoundingBox& bb, const BoundingBox& ibb) - { - // TODO: I'm pretty sure there is a much more compact way to check this - const IfcFloat epsilon = 1e-5f; -- return (fabs(bb.second.x - ibb.first.x) < epsilon && bb.first.y <= ibb.second.y && bb.second.y >= ibb.first.y) || -- (fabs(bb.first.x - ibb.second.x) < epsilon && ibb.first.y <= bb.second.y && ibb.second.y >= bb.first.y) || -- (fabs(bb.second.y - ibb.first.y) < epsilon && bb.first.x <= ibb.second.x && bb.second.x >= ibb.first.x) || -- (fabs(bb.first.y - ibb.second.y) < epsilon && ibb.first.x <= bb.second.x && ibb.second.x >= bb.first.x); -+ return (std::fabs(bb.second.x - ibb.first.x) < epsilon && bb.first.y <= ibb.second.y && bb.second.y >= ibb.first.y) || -+ (std::fabs(bb.first.x - ibb.second.x) < epsilon && ibb.first.y <= bb.second.y && ibb.second.y >= bb.first.y) || -+ (std::fabs(bb.second.y - ibb.first.y) < epsilon && bb.first.x <= ibb.second.x && bb.second.x >= ibb.first.x) || -+ (std::fabs(bb.first.y - ibb.second.y) < epsilon && ibb.first.x <= bb.second.x && ibb.second.x >= bb.first.x); - } - - // ------------------------------------------------------------------------------------------------ -@@ -615,11 +615,11 @@ bool IntersectingLineSegments(const IfcVector2& n0, const IfcVector2& n1, - - static const IfcFloat inf = std::numeric_limits<IfcFloat>::infinity(); - -- if (!(n0_to_m0.SquareLength() < e*e || fabs(n0_to_m0 * n0_to_n1) / (n0_to_m0.Length() * n0_to_n1.Length()) > 1-1e-5 )) { -+ if (!(n0_to_m0.SquareLength() < e*e || std::fabs(n0_to_m0 * n0_to_n1) / (n0_to_m0.Length() * n0_to_n1.Length()) > 1-1e-5 )) { - return false; - } - -- if (!(n1_to_m1.SquareLength() < e*e || fabs(n1_to_m1 * n0_to_n1) / (n1_to_m1.Length() * n0_to_n1.Length()) > 1-1e-5 )) { -+ if (!(n1_to_m1.SquareLength() < e*e || std::fabs(n1_to_m1 * n0_to_n1) / (n1_to_m1.Length() * n0_to_n1.Length()) > 1-1e-5 )) { - return false; - } - -@@ -631,14 +631,14 @@ bool IntersectingLineSegments(const IfcVector2& n0, const IfcVector2& n1, - // the higher absolute difference is big enough as to avoid - // divisions by zero, the case 0/0 ~ infinity is detected and - // handled separately. -- if(fabs(n0_to_n1.x) > fabs(n0_to_n1.y)) { -+ if(std::fabs(n0_to_n1.x) > std::fabs(n0_to_n1.y)) { - s0 = n0_to_m0.x / n0_to_n1.x; - s1 = n0_to_m1.x / n0_to_n1.x; - -- if (fabs(s0) == inf && fabs(n0_to_m0.x) < smalle) { -+ if (std::fabs(s0) == inf && std::fabs(n0_to_m0.x) < smalle) { - s0 = 0.; - } -- if (fabs(s1) == inf && fabs(n0_to_m1.x) < smalle) { -+ if (std::fabs(s1) == inf && std::fabs(n0_to_m1.x) < smalle) { - s1 = 0.; - } - } -@@ -646,10 +646,10 @@ bool IntersectingLineSegments(const IfcVector2& n0, const IfcVector2& n1, - s0 = n0_to_m0.y / n0_to_n1.y; - s1 = n0_to_m1.y / n0_to_n1.y; - -- if (fabs(s0) == inf && fabs(n0_to_m0.y) < smalle) { -+ if (std::fabs(s0) == inf && std::fabs(n0_to_m0.y) < smalle) { - s0 = 0.; - } -- if (fabs(s1) == inf && fabs(n0_to_m1.y) < smalle) { -+ if (std::fabs(s1) == inf && std::fabs(n0_to_m1.y) < smalle) { - s1 = 0.; - } - } -@@ -664,7 +664,7 @@ bool IntersectingLineSegments(const IfcVector2& n0, const IfcVector2& n1, - s0 = std::min(1.0,s0); - s1 = std::min(1.0,s1); - -- if (fabs(s1-s0) < e) { -+ if (std::fabs(s1-s0) < e) { - return false; - } - -@@ -755,7 +755,7 @@ void FindAdjacentContours(ContourVector::iterator current, const ContourVector& - AI_FORCE_INLINE bool LikelyBorder(const IfcVector2& vdelta) - { - const IfcFloat dot_point_epsilon = static_cast<IfcFloat>(1e-5); -- return fabs(vdelta.x * vdelta.y) < dot_point_epsilon; -+ return std::fabs(vdelta.x * vdelta.y) < dot_point_epsilon; - } - - // ------------------------------------------------------------------------------------------------ -@@ -812,9 +812,9 @@ void FindBorderContours(ContourVector::iterator current) - // ------------------------------------------------------------------------------------------------ - AI_FORCE_INLINE bool LikelyDiagonal(IfcVector2 vdelta) - { -- vdelta.x = fabs(vdelta.x); -- vdelta.y = fabs(vdelta.y); -- return (fabs(vdelta.x-vdelta.y) < 0.8 * std::max(vdelta.x, vdelta.y)); -+ vdelta.x = std::fabs(vdelta.x); -+ vdelta.y = std::fabs(vdelta.y); -+ return (std::fabs(vdelta.x-vdelta.y) < 0.8 * std::max(vdelta.x, vdelta.y)); - } - - // ------------------------------------------------------------------------------------------------ -@@ -926,7 +926,7 @@ size_t CloseWindows(ContourVector& contours, - /* debug code to check for unwanted diagonal lines in window contours - if (cit != cbegin) { - const IfcVector2& vdelta = proj_point - last_proj; -- if (fabs(vdelta.x-vdelta.y) < 0.5 * std::max(vdelta.x, vdelta.y)) { -+ if (std::fabs(vdelta.x-vdelta.y) < 0.5 * std::max(vdelta.x, vdelta.y)) { - //continue; - } - } */ -@@ -1065,7 +1065,7 @@ IfcMatrix4 ProjectOntoPlane(std::vector<IfcVector2>& out_contour, const TempMesh - } - #ifdef ASSIMP_BUILD_DEBUG - const IfcFloat det = m.Determinant(); -- ai_assert(fabs(det-1) < 1e-5); -+ ai_assert(std::fabs(det-1) < 1e-5); - #endif - - IfcFloat zcoord = 0; -@@ -1085,7 +1085,7 @@ IfcMatrix4 ProjectOntoPlane(std::vector<IfcVector2>& out_contour, const TempMesh - // XXX this should be guarded, but we somehow need to pick a suitable - // epsilon - // if(coord != -1.0f) { -- // assert(fabs(coord - vv.z) < 1e-3f); -+ // assert(std::fabs(coord - vv.z) < 1e-3f); - // } - zcoord += vv.z; - vmin = std::min(vv, vmin); -@@ -1125,7 +1125,7 @@ IfcMatrix4 ProjectOntoPlane(std::vector<IfcVector2>& out_contour, const TempMesh - const IfcVector3& vv = m * x; - - out_contour2.push_back(IfcVector2(vv.x,vv.y)); -- ai_assert(fabs(vv.z) < vmax.z + 1e-8); -+ ai_assert(std::fabs(vv.z) < vmax.z + 1e-8); - } - - for(size_t i = 0; i < out_contour.size(); ++i) { -@@ -1188,9 +1188,9 @@ bool GenerateOpenings(std::vector<TempOpening>& openings, - bool is_2d_source = false; - if (opening.profileMesh2D && norm_extrusion_dir.SquareLength() > 0) { - -- if(fabs(norm_extrusion_dir * wall_extrusion_axis_norm) < 0.1) { -+ if(std::fabs(norm_extrusion_dir * wall_extrusion_axis_norm) < 0.1) { - // horizontal extrusion -- if (fabs(norm_extrusion_dir * nor) > 0.9) { -+ if (std::fabs(norm_extrusion_dir * nor) > 0.9) { - profile_data = opening.profileMesh2D.get(); - is_2d_source = true; - } -@@ -1200,7 +1200,7 @@ bool GenerateOpenings(std::vector<TempOpening>& openings, - } - else { - // vertical extrusion -- if (fabs(norm_extrusion_dir * nor) > 0.9) { -+ if (std::fabs(norm_extrusion_dir * nor) > 0.9) { - continue; - } - continue; -@@ -1244,7 +1244,7 @@ bool GenerateOpenings(std::vector<TempOpening>& openings, - const IfcVector3& face_nor = ((profile_verts[vi_total+2] - profile_verts[vi_total]) ^ - (profile_verts[vi_total+1] - profile_verts[vi_total])).Normalize(); - -- const IfcFloat abs_dot_face_nor = abs(nor * face_nor); -+ const IfcFloat abs_dot_face_nor = std::abs(nor * face_nor); - if (abs_dot_face_nor < 0.9) { - vi_total += profile_vertcnts[f]; - continue; -@@ -1289,7 +1289,7 @@ bool GenerateOpenings(std::vector<TempOpening>& openings, - ai_assert(!is_2d_source); - const IfcVector2 area = vpmax-vpmin; - const IfcVector2 area2 = vpmax2-vpmin2; -- if (temp_contour.size() <= 2 || fabs(area2.x * area2.y) > fabs(area.x * area.y)) { -+ if (temp_contour.size() <= 2 || std::fabs(area2.x * area2.y) > std::fabs(area.x * area.y)) { - temp_contour.swap(temp_contour2); - - vpmax = vpmax2; -@@ -1301,7 +1301,7 @@ bool GenerateOpenings(std::vector<TempOpening>& openings, - } - - // TODO: This epsilon may be too large -- const IfcFloat epsilon = fabs(dmax-dmin) * 0.0001; -+ const IfcFloat epsilon = std::fabs(dmax-dmin) * 0.0001; - if (!is_2d_source && check_intersection && (0 < dmin-epsilon || 0 > dmax+epsilon)) { - continue; - } -@@ -1310,7 +1310,7 @@ bool GenerateOpenings(std::vector<TempOpening>& openings, - - // Skip over very small openings - these are likely projection errors - // (i.e. they don't belong to this side of the wall) -- if(fabs(vpmax.x - vpmin.x) * fabs(vpmax.y - vpmin.y) < static_cast<IfcFloat>(1e-10)) { -+ if(std::fabs(vpmax.x - vpmin.x) * std::fabs(vpmax.y - vpmin.y) < static_cast<IfcFloat>(1e-10)) { - continue; - } - std::vector<TempOpening*> joined_openings(1, &opening); -@@ -1480,7 +1480,7 @@ bool TryAddOpenings_Poly2Tri(const std::vector<TempOpening>& openings,const std: - // XXX this should be guarded, but we somehow need to pick a suitable - // epsilon - // if(coord != -1.0f) { -- // assert(fabs(coord - vv.z) < 1e-3f); -+ // assert(std::fabs(coord - vv.z) < 1e-3f); - // } - - coord = vv.z; -@@ -1515,7 +1515,7 @@ bool TryAddOpenings_Poly2Tri(const std::vector<TempOpening>& openings,const std: - BOOST_FOREACH(const TempOpening& t,openings) { - const IfcVector3& outernor = nors[c++]; - const IfcFloat dot = nor * outernor; -- if (fabs(dot)<1.f-1e-6f) { -+ if (std::fabs(dot)<1.f-1e-6f) { - continue; - } - -@@ -1529,7 +1529,7 @@ bool TryAddOpenings_Poly2Tri(const std::vector<TempOpening>& openings,const std: - BOOST_FOREACH(const IfcVector3& xx, t.profileMesh->verts) { - IfcVector3 vv = m * xx, vv_extr = m * (xx + t.extrusionDir); - -- const bool is_extruded_side = fabs(vv.z - coord) > fabs(vv_extr.z - coord); -+ const bool is_extruded_side = std::fabs(vv.z - coord) > std::fabs(vv_extr.z - coord); - if (first) { - first = false; - if (dot > 0.f) { -@@ -1741,4 +1741,4 @@ bool TryAddOpenings_Poly2Tri(const std::vector<TempOpening>& openings,const std: - #undef from_int64 - #undef one_vec - --#endif -\ No newline at end of file -+#endif -diff --git a/src/3rdparty/assimp/code/IFCProfile.cpp b/src/3rdparty/assimp/code/IFCProfile.cpp -index 48ccd56..78f0381 100644 ---- a/src/3rdparty/assimp/code/IFCProfile.cpp -+++ b/src/3rdparty/assimp/code/IFCProfile.cpp -@@ -124,7 +124,7 @@ void ProcessParametrizedProfile(const IfcParameterizedProfileDef& def, TempMesh& - - IfcFloat angle = 0.f; - for(size_t i = 0; i < segments; ++i, angle += delta) { -- meshout.verts.push_back( IfcVector3( cos(angle)*radius, sin(angle)*radius, 0.f )); -+ meshout.verts.push_back( IfcVector3( std::cos(angle)*radius, std::sin(angle)*radius, 0.f )); - } - - meshout.vertcnt.push_back(segments); -diff --git a/src/3rdparty/assimp/code/IFCUtil.cpp b/src/3rdparty/assimp/code/IFCUtil.cpp -index 92e55c9..d28f91a 100644 ---- a/src/3rdparty/assimp/code/IFCUtil.cpp -+++ b/src/3rdparty/assimp/code/IFCUtil.cpp -@@ -278,7 +278,7 @@ void TempMesh::RemoveAdjacentDuplicates() - // continue; - // } - -- // const IfcFloat d = (d0/sqrt(l0))*(d1/sqrt(l1)); -+ // const IfcFloat d = (d0/std::sqrt(l0))*(d1/std::sqrt(l1)); - - // if ( d >= 1.f-dotepsilon ) { - // v1 = v0; -diff --git a/src/3rdparty/assimp/code/IFCUtil.h b/src/3rdparty/assimp/code/IFCUtil.h -index e78d779..81b8f11 100644 ---- a/src/3rdparty/assimp/code/IFCUtil.h -+++ b/src/3rdparty/assimp/code/IFCUtil.h -@@ -220,7 +220,7 @@ struct FuzzyVectorCompare { - - FuzzyVectorCompare(IfcFloat epsilon) : epsilon(epsilon) {} - bool operator()(const IfcVector3& a, const IfcVector3& b) { -- return fabs((a-b).SquareLength()) < epsilon; -+ return std::fabs((a-b).SquareLength()) < epsilon; - } - - const IfcFloat epsilon; -diff --git a/src/3rdparty/assimp/code/IRRLoader.cpp b/src/3rdparty/assimp/code/IRRLoader.cpp -index 4e1296d..03393f4 100644 ---- a/src/3rdparty/assimp/code/IRRLoader.cpp -+++ b/src/3rdparty/assimp/code/IRRLoader.cpp -@@ -533,8 +533,8 @@ void IRRImporter::ComputeAnimations(Node* root, aiNode* real, std::vector<aiNode - aiVectorKey& key = anim->mPositionKeys[i]; - - const float dt = (i * in.speed * 0.001f ); -- const float u = dt - floor(dt); -- const int idx = (int)floor(dt) % size; -+ const float u = dt - std::floor(dt); -+ const int idx = (int)std::floor(dt) % size; - - // get the 4 current points to evaluate the spline - const aiVector3D& p0 = in.splineKeys[ ClampSpline( idx - 1, size ) ].mValue; -diff --git a/src/3rdparty/assimp/code/LWOAnimation.cpp b/src/3rdparty/assimp/code/LWOAnimation.cpp -index e1ef576..68efa17 100644 ---- a/src/3rdparty/assimp/code/LWOAnimation.cpp -+++ b/src/3rdparty/assimp/code/LWOAnimation.cpp -@@ -156,7 +156,7 @@ void AnimResolver::UpdateAnimRangeSetup() - case LWO::PrePostBehaviour_Repeat: - case LWO::PrePostBehaviour_Oscillate: - { -- const double start_time = delta - fmod(my_first-first,delta); -+ const double start_time = delta - std::fmod(my_first-first,delta); - std::vector<LWO::Key>::iterator n = std::find_if((*it).keys.begin(),(*it).keys.end(), - std::bind1st(std::greater<double>(),start_time)),m; - -diff --git a/src/3rdparty/assimp/code/LWOBLoader.cpp b/src/3rdparty/assimp/code/LWOBLoader.cpp -index 5d874c5..9776b89 100644 ---- a/src/3rdparty/assimp/code/LWOBLoader.cpp -+++ b/src/3rdparty/assimp/code/LWOBLoader.cpp -@@ -303,7 +303,7 @@ void LWOImporter::LoadLWOBSurface(unsigned int size) - case AI_LWO_SMAN: - { - AI_LWO_VALIDATE_CHUNK_LENGTH(head->length,SMAN,4); -- surf.mMaximumSmoothAngle = fabs( GetF4() ); -+ surf.mMaximumSmoothAngle = std::fabs( GetF4() ); - break; - } - // glossiness -diff --git a/src/3rdparty/assimp/code/LWOLoader.cpp b/src/3rdparty/assimp/code/LWOLoader.cpp -index e0891b7..b23a9fe 100644 ---- a/src/3rdparty/assimp/code/LWOLoader.cpp -+++ b/src/3rdparty/assimp/code/LWOLoader.cpp -@@ -503,7 +503,7 @@ void LWOImporter::ComputeNormals(aiMesh* mesh, const std::vector<unsigned int>& - // Generate vertex normals. We have O(logn) for the binary lookup, which we need - // for n elements, thus the EXPECTED complexity is O(nlogn) - if (surface.mMaximumSmoothAngle < 3.f && !configSpeedFlag) { -- const float fLimit = cos(surface.mMaximumSmoothAngle); -+ const float fLimit = std::cos(surface.mMaximumSmoothAngle); - - for( begin = mesh->mFaces, it = smoothingGroups.begin(); begin != end; ++begin, ++it) { - const aiFace& face = *begin; -diff --git a/src/3rdparty/assimp/code/MD5Parser.h b/src/3rdparty/assimp/code/MD5Parser.h -index eecf354..4fd147d 100644 ---- a/src/3rdparty/assimp/code/MD5Parser.h -+++ b/src/3rdparty/assimp/code/MD5Parser.h -@@ -259,7 +259,7 @@ inline void ConvertQuaternion (const aiVector3D& in, aiQuaternion& out) { - - if (t < 0.0f) - out.w = 0.0f; -- else out.w = sqrt (t); -+ else out.w = std::sqrt (t); - } - - // --------------------------------------------------------------------------- -diff --git a/src/3rdparty/assimp/code/PolyTools.h b/src/3rdparty/assimp/code/PolyTools.h -index d8040f6..7975959 100644 ---- a/src/3rdparty/assimp/code/PolyTools.h -+++ b/src/3rdparty/assimp/code/PolyTools.h -@@ -118,9 +118,9 @@ inline bool IsCCW(T* in, size_t npoints) { - ((-in[i+2].y + in[i+1].y) * - (-in[i+2].y + in[i+1].y)); - -- b = sqrt(bb); -- c = sqrt(cc); -- theta = acos((bb + cc - aa) / (2 * b * c)); -+ b = std::sqrt(bb); -+ c = std::sqrt(cc); -+ theta = std::acos((bb + cc - aa) / (2 * b * c)); - - if (OnLeftSideOfLine2D(in[i],in[i+2],in[i+1])) { - // if (convex(in[i].x, in[i].y, -@@ -146,9 +146,9 @@ inline bool IsCCW(T* in, size_t npoints) { - cc = ((in[1].x - in[0].x) * (in[1].x - in[0].x)) + - ((-in[1].y + in[0].y) * (-in[1].y + in[0].y)); - -- b = sqrt(bb); -- c = sqrt(cc); -- theta = acos((bb + cc - aa) / (2 * b * c)); -+ b = std::sqrt(bb); -+ c = std::sqrt(cc); -+ theta = std::acos((bb + cc - aa) / (2 * b * c)); - - //if (convex(in[npoints-2].x, in[npoints-2].y, - // in[0].x, in[0].y, -diff --git a/src/3rdparty/assimp/code/SkeletonMeshBuilder.cpp b/src/3rdparty/assimp/code/SkeletonMeshBuilder.cpp -index 242c596..7e0d68a 100644 ---- a/src/3rdparty/assimp/code/SkeletonMeshBuilder.cpp -+++ b/src/3rdparty/assimp/code/SkeletonMeshBuilder.cpp -@@ -101,7 +101,7 @@ void SkeletonMeshBuilder::CreateGeometry( const aiNode* pNode) - aiVector3D up = aiVector3D( childpos).Normalize(); - - aiVector3D orth( 1.0f, 0.0f, 0.0f); -- if( fabs( orth * up) > 0.99f) -+ if( std::fabs( orth * up) > 0.99f) - orth.Set( 0.0f, 1.0f, 0.0f); - - aiVector3D front = (up ^ orth).Normalize(); -diff --git a/src/3rdparty/assimp/code/StandardShapes.cpp b/src/3rdparty/assimp/code/StandardShapes.cpp -index ef3f66c..5924a20 100644 ---- a/src/3rdparty/assimp/code/StandardShapes.cpp -+++ b/src/3rdparty/assimp/code/StandardShapes.cpp -@@ -192,7 +192,7 @@ unsigned int StandardShapes::MakeIcosahedron(std::vector<aiVector3D>& positions) - positions.reserve(positions.size()+60); - - const float t = (1.f + 2.236067977f)/2.f; -- const float s = sqrt(1.f + t*t); -+ const float s = std::sqrt(1.f + t*t); - - const aiVector3D v0 = aiVector3D(t,1.f, 0.f)/s; - const aiVector3D v1 = aiVector3D(-t,1.f, 0.f)/s; -@@ -242,8 +242,8 @@ unsigned int StandardShapes::MakeDodecahedron(std::vector<aiVector3D>& positions - positions.reserve(positions.size()+108); - - const float a = 1.f / 1.7320508f; -- const float b = sqrt((3.f-2.23606797f)/6.f); -- const float c = sqrt((3.f+2.23606797f)/6.f); -+ const float b = std::sqrt((3.f-2.23606797f)/6.f); -+ const float c = std::sqrt((3.f+2.23606797f)/6.f); - - const aiVector3D v0 = aiVector3D(a,a,a); - const aiVector3D v1 = aiVector3D(a,a,-a); -@@ -390,8 +390,8 @@ void StandardShapes::MakeCone(float height,float radius1, - size_t old = positions.size(); - - // No negative radii -- radius1 = ::fabs(radius1); -- radius2 = ::fabs(radius2); -+ radius1 = std::fabs(radius1); -+ radius2 = std::fabs(radius2); - - float halfHeight = height / 2; - -@@ -424,8 +424,8 @@ void StandardShapes::MakeCone(float height,float radius1, - const aiVector3D v2 = aiVector3D (s * radius2, halfHeight, t * radius2 ); - - const float next = angle + angle_delta; -- float s2 = ::cos(next); -- float t2 = ::sin(next); -+ float s2 = std::cos(next); -+ float t2 = std::sin(next); - - const aiVector3D v3 = aiVector3D (s2 * radius2, halfHeight, t2 * radius2 ); - const aiVector3D v4 = aiVector3D (s2 * radius1, -halfHeight, t2 * radius1 ); -@@ -476,7 +476,7 @@ void StandardShapes::MakeCircle(float radius, unsigned int tess, - if (tess < 3 || !radius) - return; - -- radius = ::fabs(radius); -+ radius = std::fabs(radius); - - // We will need 3 vertices per segment - positions.reserve(positions.size()+tess*3); -@@ -491,8 +491,8 @@ void StandardShapes::MakeCircle(float radius, unsigned int tess, - { - positions.push_back(aiVector3D(s * radius,0.f,t * radius)); - angle += angle_delta; -- s = ::cos(angle); -- t = ::sin(angle); -+ s = std::cos(angle); -+ t = std::sin(angle); - positions.push_back(aiVector3D(s * radius,0.f,t * radius)); - - positions.push_back(aiVector3D(0.f,0.f,0.f)); -diff --git a/src/3rdparty/assimp/code/TextureTransform.h b/src/3rdparty/assimp/code/TextureTransform.h -index 4826527..1f8580f 100644 ---- a/src/3rdparty/assimp/code/TextureTransform.h -+++ b/src/3rdparty/assimp/code/TextureTransform.h -@@ -116,19 +116,19 @@ struct STransformVecInfo : public aiUVTransform - // We use a small epsilon here - const static float epsilon = 0.05f; - -- if (fabs( mTranslation.x - other.mTranslation.x ) > epsilon || -- fabs( mTranslation.y - other.mTranslation.y ) > epsilon) -+ if (std::fabs( mTranslation.x - other.mTranslation.x ) > epsilon || -+ std::fabs( mTranslation.y - other.mTranslation.y ) > epsilon) - { - return false; - } - -- if (fabs( mScaling.x - other.mScaling.x ) > epsilon || -- fabs( mScaling.y - other.mScaling.y ) > epsilon) -+ if (std::fabs( mScaling.x - other.mScaling.x ) > epsilon || -+ std::fabs( mScaling.y - other.mScaling.y ) > epsilon) - { - return false; - } - -- if (fabs( mRotation - other.mRotation) > epsilon) -+ if (std::fabs( mRotation - other.mRotation) > epsilon) - { - return false; - } -@@ -168,8 +168,8 @@ struct STransformVecInfo : public aiUVTransform - if (mRotation) - { - aiMatrix3x3 mRot; -- mRot.a1 = mRot.b2 = cos(mRotation); -- mRot.a2 = mRot.b1 = sin(mRotation); -+ mRot.a1 = mRot.b2 = std::cos(mRotation); -+ mRot.a2 = mRot.b1 = std::sin(mRotation); - mRot.a2 = -mRot.a2; - mOut *= mRot; - } -diff --git a/src/3rdparty/assimp/code/TriangulateProcess.cpp b/src/3rdparty/assimp/code/TriangulateProcess.cpp -index 1e3b96c..147e38e 100644 ---- a/src/3rdparty/assimp/code/TriangulateProcess.cpp -+++ b/src/3rdparty/assimp/code/TriangulateProcess.cpp -@@ -241,7 +241,7 @@ bool TriangulateProcess::TriangulateMesh( aiMesh* pMesh) - diag.Normalize(); - right.Normalize(); - -- const float angle = acos(left*diag) + acos(right*diag); -+ const float angle = std::acos(left*diag) + std::acos(right*diag); - if (angle > AI_MATH_PI_F) { - // this is the concave point - start_vertex = i; -@@ -486,7 +486,7 @@ bool TriangulateProcess::TriangulateMesh( aiMesh* pMesh) - unsigned int* i = f->mIndices; - - // drop dumb 0-area triangles -- if (fabs(GetArea2D(temp_verts[i[0]],temp_verts[i[1]],temp_verts[i[2]])) < 1e-5f) { -+ if (std::fabs(GetArea2D(temp_verts[i[0]],temp_verts[i[1]],temp_verts[i[2]])) < 1e-5f) { - DefaultLogger::get()->debug("Dropping triangle with area 0"); - --curOut; - -diff --git a/src/3rdparty/assimp/code/XGLLoader.cpp b/src/3rdparty/assimp/code/XGLLoader.cpp -index 49ff686..963407b 100644 ---- a/src/3rdparty/assimp/code/XGLLoader.cpp -+++ b/src/3rdparty/assimp/code/XGLLoader.cpp -@@ -489,7 +489,7 @@ aiMatrix4x4 XGLImporter::ReadTrafo() - up.Normalize(); - - right = forward ^ up; -- if (fabs(up * forward) > 1e-4) { -+ if (std::fabs(up * forward) > 1e-4) { - // this is definitely wrong - a degenerate coordinate space ruins everything - // so subtitute identity transform. - LogError("<forward> and <up> vectors in <transform> are skewing, ignoring trafo"); -diff --git a/src/3rdparty/assimp/code/fast_atof.h b/src/3rdparty/assimp/code/fast_atof.h -index 580447b..3cdb1e8 100644 ---- a/src/3rdparty/assimp/code/fast_atof.h -+++ b/src/3rdparty/assimp/code/fast_atof.h -@@ -273,7 +273,7 @@ inline const char* fast_atoreal_move( const char* c, Real& out, bool check_comma - if (einv) { - exp = -exp; - } -- f *= pow(static_cast<Real>(10.0), exp); -+ f *= std::pow(static_cast<Real>(10.0), exp); - } - - if (inv) { -diff --git a/src/3rdparty/assimp/contrib/poly2tri/poly2tri/common/shapes.h b/src/3rdparty/assimp/contrib/poly2tri/poly2tri/common/shapes.h -index 4f69183..f3b3c65 100644 ---- a/src/3rdparty/assimp/contrib/poly2tri/poly2tri/common/shapes.h -+++ b/src/3rdparty/assimp/contrib/poly2tri/poly2tri/common/shapes.h -@@ -107,7 +107,7 @@ struct Point { - /// Get the length of this point (the norm). - double Length() const - { -- return sqrt(x * x + y * y); -+ return std::sqrt(x * x + y * y); - } - - /// Convert this point into a unit point. Returns the Length. -diff --git a/src/3rdparty/assimp/include/assimp/color4.inl b/src/3rdparty/assimp/include/assimp/color4.inl -index 9a92e14..b0791fa 100644 ---- a/src/3rdparty/assimp/include/assimp/color4.inl -+++ b/src/3rdparty/assimp/include/assimp/color4.inl -@@ -175,7 +175,7 @@ template <typename TReal> - inline bool aiColor4t<TReal> :: IsBlack() const { - // The alpha component doesn't care here. black is black. - static const TReal epsilon = 10e-3f; -- return fabs( r ) < epsilon && fabs( g ) < epsilon && fabs( b ) < epsilon; -+ return std::fabs( r ) < epsilon && std::fabs( g ) < epsilon && std::fabs( b ) < epsilon; - } - - #endif // __cplusplus -diff --git a/src/3rdparty/assimp/include/assimp/matrix3x3.inl b/src/3rdparty/assimp/include/assimp/matrix3x3.inl -index 56cac6c..dcced7b 100644 ---- a/src/3rdparty/assimp/include/assimp/matrix3x3.inl -+++ b/src/3rdparty/assimp/include/assimp/matrix3x3.inl -@@ -200,8 +200,8 @@ inline aiMatrix3x3t<TReal>& aiMatrix3x3t<TReal>::Inverse() - template <typename TReal> - inline aiMatrix3x3t<TReal>& aiMatrix3x3t<TReal>::RotationZ(TReal a, aiMatrix3x3t<TReal>& out) - { -- out.a1 = out.b2 = ::cos(a); -- out.b1 = ::sin(a); -+ out.a1 = out.b2 = std::cos(a); -+ out.b1 = std::sin(a); - out.a2 = - out.b1; - - out.a3 = out.b3 = out.c1 = out.c2 = 0.f; -@@ -215,7 +215,7 @@ inline aiMatrix3x3t<TReal>& aiMatrix3x3t<TReal>::RotationZ(TReal a, aiMatrix3x3t - template <typename TReal> - inline aiMatrix3x3t<TReal>& aiMatrix3x3t<TReal>::Rotation( TReal a, const aiVector3t<TReal>& axis, aiMatrix3x3t<TReal>& out) - { -- TReal c = cos( a), s = sin( a), t = 1 - c; -+ TReal c = std::cos( a), s = std::sin( a), t = 1 - c; - TReal x = axis.x, y = axis.y, z = axis.z; - - // Many thanks to MathWorld and Wikipedia -diff --git a/src/3rdparty/assimp/include/assimp/matrix4x4.inl b/src/3rdparty/assimp/include/assimp/matrix4x4.inl -index 4fb86b1..8fdabcf 100644 ---- a/src/3rdparty/assimp/include/assimp/matrix4x4.inl -+++ b/src/3rdparty/assimp/include/assimp/matrix4x4.inl -@@ -379,12 +379,12 @@ inline aiMatrix4x4t<TReal>& aiMatrix4x4t<TReal>::FromEulerAnglesXYZ(TReal x, TRe - { - aiMatrix4x4t<TReal>& _this = *this; - -- TReal cr = cos( x ); -- TReal sr = sin( x ); -- TReal cp = cos( y ); -- TReal sp = sin( y ); -- TReal cy = cos( z ); -- TReal sy = sin( z ); -+ TReal cr = std::cos( x ); -+ TReal sr = std::sin( x ); -+ TReal cp = std::cos( y ); -+ TReal sp = std::sin( y ); -+ TReal cy = std::cos( z ); -+ TReal sy = std::sin( z ); - - _this.a1 = cp*cy ; - _this.a2 = cp*sy; -@@ -435,12 +435,12 @@ inline aiMatrix4x4t<TReal>& aiMatrix4x4t<TReal>::RotationX(TReal a, aiMatrix4x4t - { - /* - | 1 0 0 0 | -- M = | 0 cos(A) -sin(A) 0 | -- | 0 sin(A) cos(A) 0 | -+ M = | 0 std::cos(A) -std::sin(A) 0 | -+ | 0 std::sin(A) std::cos(A) 0 | - | 0 0 0 1 | */ - out = aiMatrix4x4t<TReal>(); -- out.b2 = out.c3 = cos(a); -- out.b3 = -(out.c2 = sin(a)); -+ out.b2 = out.c3 = std::cos(a); -+ out.b3 = -(out.c2 = std::sin(a)); - return out; - } - -@@ -449,14 +449,14 @@ template <typename TReal> - inline aiMatrix4x4t<TReal>& aiMatrix4x4t<TReal>::RotationY(TReal a, aiMatrix4x4t<TReal>& out) - { - /* -- | cos(A) 0 sin(A) 0 | -+ | std::cos(A) 0 std::sin(A) 0 | - M = | 0 1 0 0 | -- | -sin(A) 0 cos(A) 0 | -+ | -std::sin(A) 0 std::cos(A) 0 | - | 0 0 0 1 | - */ - out = aiMatrix4x4t<TReal>(); -- out.a1 = out.c3 = cos(a); -- out.c1 = -(out.a3 = sin(a)); -+ out.a1 = out.c3 = std::cos(a); -+ out.c1 = -(out.a3 = std::sin(a)); - return out; - } - -@@ -465,13 +465,13 @@ template <typename TReal> - inline aiMatrix4x4t<TReal>& aiMatrix4x4t<TReal>::RotationZ(TReal a, aiMatrix4x4t<TReal>& out) - { - /* -- | cos(A) -sin(A) 0 0 | -- M = | sin(A) cos(A) 0 0 | -+ | std::cos(A) -std::sin(A) 0 0 | -+ M = | std::sin(A) std::cos(A) 0 0 | - | 0 0 1 0 | - | 0 0 0 1 | */ - out = aiMatrix4x4t<TReal>(); -- out.a1 = out.b2 = cos(a); -- out.a2 = -(out.b1 = sin(a)); -+ out.a1 = out.b2 = std::cos(a); -+ out.a2 = -(out.b1 = std::sin(a)); - return out; - } - -@@ -480,7 +480,7 @@ inline aiMatrix4x4t<TReal>& aiMatrix4x4t<TReal>::RotationZ(TReal a, aiMatrix4x4t - template <typename TReal> - inline aiMatrix4x4t<TReal>& aiMatrix4x4t<TReal>::Rotation( TReal a, const aiVector3t<TReal>& axis, aiMatrix4x4t<TReal>& out) - { -- TReal c = cos( a), s = sin( a), t = 1 - c; -+ TReal c = std::cos( a), s = std::sin( a), t = 1 - c; - TReal x = axis.x, y = axis.y, z = axis.z; - - // Many thanks to MathWorld and Wikipedia -diff --git a/src/3rdparty/assimp/include/assimp/quaternion.inl b/src/3rdparty/assimp/include/assimp/quaternion.inl -index 0230d21..b966433 100644 ---- a/src/3rdparty/assimp/include/assimp/quaternion.inl -+++ b/src/3rdparty/assimp/include/assimp/quaternion.inl -@@ -84,7 +84,7 @@ inline aiQuaterniont<TReal>::aiQuaterniont( const aiMatrix3x3t<TReal> &pRotMatri - // large enough - if( t > static_cast<TReal>(0)) - { -- TReal s = sqrt(1 + t) * static_cast<TReal>(2.0); -+ TReal s = std::sqrt(1 + t) * static_cast<TReal>(2.0); - x = (pRotMatrix.c2 - pRotMatrix.b3) / s; - y = (pRotMatrix.a3 - pRotMatrix.c1) / s; - z = (pRotMatrix.b1 - pRotMatrix.a2) / s; -@@ -93,7 +93,7 @@ inline aiQuaterniont<TReal>::aiQuaterniont( const aiMatrix3x3t<TReal> &pRotMatri - else if( pRotMatrix.a1 > pRotMatrix.b2 && pRotMatrix.a1 > pRotMatrix.c3 ) - { - // Column 0: -- TReal s = sqrt( static_cast<TReal>(1.0) + pRotMatrix.a1 - pRotMatrix.b2 - pRotMatrix.c3) * static_cast<TReal>(2.0); -+ TReal s = std::sqrt( static_cast<TReal>(1.0) + pRotMatrix.a1 - pRotMatrix.b2 - pRotMatrix.c3) * static_cast<TReal>(2.0); - x = static_cast<TReal>(0.25) * s; - y = (pRotMatrix.b1 + pRotMatrix.a2) / s; - z = (pRotMatrix.a3 + pRotMatrix.c1) / s; -@@ -102,7 +102,7 @@ inline aiQuaterniont<TReal>::aiQuaterniont( const aiMatrix3x3t<TReal> &pRotMatri - else if( pRotMatrix.b2 > pRotMatrix.c3) - { - // Column 1: -- TReal s = sqrt( static_cast<TReal>(1.0) + pRotMatrix.b2 - pRotMatrix.a1 - pRotMatrix.c3) * static_cast<TReal>(2.0); -+ TReal s = std::sqrt( static_cast<TReal>(1.0) + pRotMatrix.b2 - pRotMatrix.a1 - pRotMatrix.c3) * static_cast<TReal>(2.0); - x = (pRotMatrix.b1 + pRotMatrix.a2) / s; - y = static_cast<TReal>(0.25) * s; - z = (pRotMatrix.c2 + pRotMatrix.b3) / s; -@@ -110,7 +110,7 @@ inline aiQuaterniont<TReal>::aiQuaterniont( const aiMatrix3x3t<TReal> &pRotMatri - } else - { - // Column 2: -- TReal s = sqrt( static_cast<TReal>(1.0) + pRotMatrix.c3 - pRotMatrix.a1 - pRotMatrix.b2) * static_cast<TReal>(2.0); -+ TReal s = std::sqrt( static_cast<TReal>(1.0) + pRotMatrix.c3 - pRotMatrix.a1 - pRotMatrix.b2) * static_cast<TReal>(2.0); - x = (pRotMatrix.a3 + pRotMatrix.c1) / s; - y = (pRotMatrix.c2 + pRotMatrix.b3) / s; - z = static_cast<TReal>(0.25) * s; -@@ -123,12 +123,12 @@ inline aiQuaterniont<TReal>::aiQuaterniont( const aiMatrix3x3t<TReal> &pRotMatri - template<typename TReal> - inline aiQuaterniont<TReal>::aiQuaterniont( TReal fPitch, TReal fYaw, TReal fRoll ) - { -- const TReal fSinPitch(sin(fPitch*static_cast<TReal>(0.5))); -- const TReal fCosPitch(cos(fPitch*static_cast<TReal>(0.5))); -- const TReal fSinYaw(sin(fYaw*static_cast<TReal>(0.5))); -- const TReal fCosYaw(cos(fYaw*static_cast<TReal>(0.5))); -- const TReal fSinRoll(sin(fRoll*static_cast<TReal>(0.5))); -- const TReal fCosRoll(cos(fRoll*static_cast<TReal>(0.5))); -+ const TReal fSinPitch(std::sin(fPitch*static_cast<TReal>(0.5))); -+ const TReal fCosPitch(std::cos(fPitch*static_cast<TReal>(0.5))); -+ const TReal fSinYaw(std::sin(fYaw*static_cast<TReal>(0.5))); -+ const TReal fCosYaw(std::cos(fYaw*static_cast<TReal>(0.5))); -+ const TReal fSinRoll(std::sin(fRoll*static_cast<TReal>(0.5))); -+ const TReal fCosRoll(std::cos(fRoll*static_cast<TReal>(0.5))); - const TReal fCosPitchCosYaw(fCosPitch*fCosYaw); - const TReal fSinPitchSinYaw(fSinPitch*fSinYaw); - x = fSinRoll * fCosPitchCosYaw - fCosRoll * fSinPitchSinYaw; -@@ -163,8 +163,8 @@ inline aiQuaterniont<TReal>::aiQuaterniont( aiVector3t<TReal> axis, TReal angle) - { - axis.Normalize(); - -- const TReal sin_a = sin( angle / 2 ); -- const TReal cos_a = cos( angle / 2 ); -+ const TReal sin_a = std::sin( angle / 2 ); -+ const TReal cos_a = std::cos( angle / 2 ); - x = axis.x * sin_a; - y = axis.y * sin_a; - z = axis.z * sin_a; -@@ -184,7 +184,7 @@ inline aiQuaterniont<TReal>::aiQuaterniont( aiVector3t<TReal> normalized) - if (t < static_cast<TReal>(0.0)) { - w = static_cast<TReal>(0.0); - } -- else w = sqrt (t); -+ else w = std::sqrt (t); - } - - // --------------------------------------------------------------------------- -@@ -214,10 +214,10 @@ inline void aiQuaterniont<TReal>::Interpolate( aiQuaterniont& pOut, const aiQuat - { - // Standard case (slerp) - TReal omega, sinom; -- omega = acos( cosom); // extract theta from dot product's cos theta -- sinom = sin( omega); -- sclp = sin( (static_cast<TReal>(1.0) - pFactor) * omega) / sinom; -- sclq = sin( pFactor * omega) / sinom; -+ omega = std::acos( cosom); // extract theta from dot product's cos theta -+ sinom = std::sin( omega); -+ sclp = std::sin( (static_cast<TReal>(1.0) - pFactor) * omega) / sinom; -+ sclq = std::sin( pFactor * omega) / sinom; - } else - { - // Very close, do linear interp (because it's faster) -@@ -236,7 +236,7 @@ template<typename TReal> - inline aiQuaterniont<TReal>& aiQuaterniont<TReal>::Normalize() - { - // compute the magnitude and divide through it -- const TReal mag = sqrt(x*x + y*y + z*z + w*w); -+ const TReal mag = std::sqrt(x*x + y*y + z*z + w*w); - if (mag) - { - const TReal invMag = static_cast<TReal>(1.0)/mag; -diff --git a/src/3rdparty/assimp/include/assimp/types.h b/src/3rdparty/assimp/include/assimp/types.h -index 8b35bd3..a8200a7 100644 ---- a/src/3rdparty/assimp/include/assimp/types.h -+++ b/src/3rdparty/assimp/include/assimp/types.h -@@ -217,7 +217,7 @@ struct aiColor3D - /** Check whether a color is black */ - bool IsBlack() const { - static const float epsilon = 10e-3f; -- return fabs( r ) < epsilon && fabs( g ) < epsilon && fabs( b ) < epsilon; -+ return std::fabs( r ) < epsilon && std::fabs( g ) < epsilon && std::fabs( b ) < epsilon; - } - - #endif // !__cplusplus -diff --git a/src/3rdparty/assimp/include/assimp/vector2.inl b/src/3rdparty/assimp/include/assimp/vector2.inl -index eb1b986..da085ea 100644 ---- a/src/3rdparty/assimp/include/assimp/vector2.inl -+++ b/src/3rdparty/assimp/include/assimp/vector2.inl -@@ -71,7 +71,7 @@ TReal aiVector2t<TReal>::SquareLength() const { - // ------------------------------------------------------------------------------------------------ - template <typename TReal> - TReal aiVector2t<TReal>::Length() const { -- return ::sqrt( SquareLength()); -+ return std::sqrt( SquareLength()); - } - - // ------------------------------------------------------------------------------------------------ -diff --git a/src/3rdparty/assimp/include/assimp/vector3.inl b/src/3rdparty/assimp/include/assimp/vector3.inl -index 01e0b6f..4892f62 100644 ---- a/src/3rdparty/assimp/include/assimp/vector3.inl -+++ b/src/3rdparty/assimp/include/assimp/vector3.inl -@@ -92,7 +92,7 @@ AI_FORCE_INLINE TReal aiVector3t<TReal>::SquareLength() const { - // ------------------------------------------------------------------------------------------------ - template <typename TReal> - AI_FORCE_INLINE TReal aiVector3t<TReal>::Length() const { -- return ::sqrt( SquareLength()); -+ return std::sqrt( SquareLength()); - } - // ------------------------------------------------------------------------------------------------ - template <typename TReal> --- -2.4.9 (Apple Git-60) - diff --git a/src/3rdparty/patches/0005-assimp-Avoid-unneeded-copy-ctor-calls-when-calling-getAiType.patch b/src/3rdparty/patches/0005-assimp-Avoid-unneeded-copy-ctor-calls-when-calling-getAiType.patch new file mode 100644 index 000000000..df716b065 --- /dev/null +++ b/src/3rdparty/patches/0005-assimp-Avoid-unneeded-copy-ctor-calls-when-calling-getAiType.patch @@ -0,0 +1,31 @@ +From 2794f2041c8c7616c91e443ea74564e4a5d07a2e Mon Sep 17 00:00:00 2001 +From: Sergio Martins <sergio.martins@kdab.com> +Date: Sun, 29 Jan 2017 17:37:53 +0000 +Subject: [PATCH] Avoid unneeded copy-ctor calls when calling getAiType + +Specially for aiString, which does a memcpy. +Patch already committed upstream. + +Change-Id: I9497e4fcc11a60a4bf434fcac4b76f1467867186 +--- + src/3rdparty/assimp/include/assimp/metadata.h | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/src/3rdparty/assimp/include/assimp/metadata.h b/src/3rdparty/assimp/include/assimp/metadata.h +index 16809a511..db2f1873f 100644 +--- a/src/3rdparty/assimp/include/assimp/metadata.h ++++ b/src/3rdparty/assimp/include/assimp/metadata.h +@@ -106,8 +106,8 @@ inline aiMetadataType GetAiType( bool ) { return AI_BOOL; } + inline aiMetadataType GetAiType( int ) { return AI_INT; } + inline aiMetadataType GetAiType( uint64_t ) { return AI_UINT64; } + inline aiMetadataType GetAiType( float ) { return AI_FLOAT; } +-inline aiMetadataType GetAiType( aiString ) { return AI_AISTRING; } +-inline aiMetadataType GetAiType( aiVector3D ) { return AI_AIVECTOR3D; } ++inline aiMetadataType GetAiType( const aiString & ) { return AI_AISTRING; } ++inline aiMetadataType GetAiType( const aiVector3D & ) { return AI_AIVECTOR3D; } + + + +-- +2.11.0 + diff --git a/src/3rdparty/patches/0005-assimp-Fix-build-FBXConverter.patch b/src/3rdparty/patches/0005-assimp-Fix-build-FBXConverter.patch deleted file mode 100644 index 9290b30aa..000000000 --- a/src/3rdparty/patches/0005-assimp-Fix-build-FBXConverter.patch +++ /dev/null @@ -1,35 +0,0 @@ -From 1e39e6b296b94852e73adea1cb652adda435529e Mon Sep 17 00:00:00 2001 -From: Anton Kudryavtsev <a.kudryavtsev@netris.ru> -Date: Mon, 21 Mar 2016 16:43:43 +0300 -Subject: [PATCH] assimp: Fix build FBXConverter. -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -If you compile according to https://wiki.qt.io/Qt5ForAndroidBuilding -with NDK v11.b, you get such warning and the compilation stops: - -FBXConverter.cpp:1262:19: warning: ‘count’ may be used uninitialized in this function [-Wmaybe-uninitialized] - unsigned int count; - -Change-Id: Ieff61e6302800a22080f837267982fd2ea3129e6 ---- - src/3rdparty/assimp/code/FBXConverter.cpp | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/src/3rdparty/assimp/code/FBXConverter.cpp b/src/3rdparty/assimp/code/FBXConverter.cpp -index 56643bc..c6ef8c9 100644 ---- a/src/3rdparty/assimp/code/FBXConverter.cpp -+++ b/src/3rdparty/assimp/code/FBXConverter.cpp -@@ -1259,7 +1259,7 @@ private: - // taking notes so we don't need to do it twice. - BOOST_FOREACH(WeightIndexArray::value_type index, indices) { - -- unsigned int count; -+ unsigned int count = 0; - const unsigned int* const out_idx = geo.ToOutputVertexIndex(index, count); - - index_out_indices.push_back(no_index_sentinel); --- -1.9.1 - |